2009年5月6日星期三

[转]Ubuntu下PDF乱码终极解决办法

一半情况下,用自带的阅读器看PDF是有乱码的,也就有人提示安装sudo apt-get install xpdf-chinese-simplified来解决,但是偶尔也有人(跟我一样)安装了xpdf-chinese-simplified,还是有乱码。嘿嘿。
那么就按照下面的办法来吧!

1.在下载poppler-data,解压
2.在终端执行:cd /解压路径/poppler-data-0.1
3.再输入:sudo make install datadir=/usr/share

重新打开pdf文件中文能正常显示了。

2009年5月4日星期一

[转贴]关于__irq 的使用


__irq为一个标识,用来表示一个函数是否为中断函数。对于不同的编译器,__irq在函数名中的位置不一样,例如:

ADS编译器中 : void __irq IRQ_Eint0(void);
Keil编译器中 : void IRQ_Eint0(void) __irq;

但是其意义一样,它所完成的任务是标识该函数为中断函数,在编译器编译是调用此函数时,先保护函数入口现场,然后执行中断函数,函数执行完毕,恢复中断现场,这整个过程不需要用户重新编写代码来完成,由编译器自动完成。因而这也给不具备中断嵌套功能的ARM系统带来了问题,若使用 __irq 时有中断嵌套产生,这现场保护就会混乱。在前一篇日志“LPC2000系列中断嵌套处理”中,自己编写中断入口现场保护代码,并不使用 __irq 标识符号,就是这个原因。
总结如下:
1、若不想自己编写中断入口现场保护代码,而且使用中无中断嵌套,在中断函数中用 __irq 来标识我们的中断函数,否则出错;
2、若程序中要使用中断嵌套,对于无中断嵌套功能的ARM来说,一定要自己编写中断入口现场保护代码,而且不能用 __irq 标识我们的中断函数,否则出错。

arzhiy
2007-01-30

2009年5月3日星期日

Ubuntu下flash和java中文乱码解决方法

flash中文显示乱码解决方法
方法一:
打开终端,输入: sudo rm /etc/fonts/conf.d/49-sansserif.conf
命令为删除49-sansserif.conf文件。

方法二:
打开终端,输入:sudo gedit /etc/fonts/conf.d/49-sansserif.conf
将代码中的三个红色字体改为你想要的字体就可以了:






Sans


Sans


monospace


Sans




Java中文显示乱码解决方法
在ubuntu 8.04和8.10里安装java后,会发现所有java的gui都会乱码,这是因为在ubuntu 8.04里uming.ttf改成了uming.ttc,而ubuntu里java默认的中文字体就是uming.ttf,所以只要获得它就可以了,在终端输入:



sudo ln -s /usr/share/fonts/truetype/arphic/uming.ttc /usr/share/fonts/truetype/arphic/uming.ttf

2009年4月22日星期三

[转] C++动态数组分配

在c++中时不能像java中一样定义这样的数组 int[] arr = new int[],如果我们要根据程序的运行来实现动态数组在c++中利用指针这个好东东。

动态一维数组:
#include
using namespace std;
int main()
{
int len;
cin>>len;
int *p=new int[len];
delete[] p;
p = NULL;
return 0;
}
动态二维数组:
int main()
{
int row, col;
cout << "Please enter the number for row and column: " << endl;
cin >> row >>col;

//为二维数组开辟空间
int **p = new int*[row];
for (int i = 0; i < row; i++)
{
p[i] = new int[col];
}

for (int j = 0;j < row; j++)
{
for (int k = 0; k < col; k++)
{
p[j][k] = (j + 1) * (k + 1);
cout << p[j][k] << &p[j][k];
}
}

//释放二维数组占用的空间
for (int m = 0; m < row; m++)
{
delete[] p[m];
}
delete[] p;
p = NULL;
return 0;
}
当然要利用指针也可以实现多维数组,但是这是应该利用STL中的vector更简单。

2009年4月12日星期日

[转贴]嵌入式核心书籍

Linux基础
1、《Linux与Unix Shell 编程指南》

C语言基础
1、《C Primer Plus,5th Edition》【美】Stephen Prata著
2、《The C Programming Language, 2nd Edition》【美】Brian W. Kernighan David M. Rithie(K & R)著
3、《Advanced Programming in the UNIX Environment,2nd Edition》(APUE)
4、《嵌入式Linux应用程序开发详解》

Linux内核
1、《深入理解Linux内核》(第三版)
2、《Linux内核源代码情景分析》毛德操 胡希明著

研发方向
1、《UNIX Network Programming》(UNP)
2、《TCP/IP详解》
3、《Linux内核编程》
4、《Linux设备驱动开发》(LDD)

硬件基础
1、《ARM体系结构与编程》杜春雷著
2、S3C2410 Datasheet

英语基础
1、《计算机与通信专业英语》

系统教程
1、《嵌入式系统――体系结构、编程与设计》
2、《嵌入式系统――采用公开源代码和StrongARM/Xscale处理器》毛德操 胡希明著
3、《Building Embedded Linux Systems》

理论基础
1、《算法导论》
2、《数据结构(C语言版)》
3、《计算机组织与体系结构?性能分析》
4、《深入理解计算机系统》【美】Randal E. Bryant David O'Hallaron著
5、《操作系统:精髓与设计原理》
6、《编译原理》
7、《数据通信与计算机网络》
8、《数据压缩原理与应用》

windows下tomcat重启脚本


on error resume Next

Dim a
a = True

set WshShell = WScript.CreateObject("WScript.Shell")

Do While a
set http = CreateObject("Microsoft.XMLHTTP")
http.open "POST","http://www.163.com(这里放你网站的页面地址)",false
http.send
if http.Status > 300 then
WshShell.Run("net stop tomcat6")
WScript.Sleep(10000)
WshShell.Run("net start tomcat6")
end if
WScript.Sleep(1000*60*60*24*3)
loop


把它保存成文件(后缀名为vbs)后双击运行就行了

2009年4月10日星期五

[转载]Blogger中代码高亮

原帖地址
http://abhisanoujam.blogspot.com/2008/12/blogger-syntax-highlighting.html