发布时间:2012-12-31 19:58:56
回想几个月前刚开始学C语言,听人说C语言有多难多难被吓得一愣一愣的,后来刚学会时感觉C语言易学难精,想能用只不过几天的事情,只有三十二个关键字而已。最近回头看了一下三十二个关键字,别有一翻滋味,其实我自己也没真正看懂三十二个关键字是怎么用的。 今天就挑几个关键字,及宏的用法,还有指针和数组名这个常见的新手绕口令来讲一讲C的基础之基础的细节。 先讲static,const,volatile,extern,这四个关键字。面向过程和面......【阅读全文】
发布时间:2012-12-31 15:29:34
首先内核空间分代码区,堆栈区,全局变量区。每个内核线程还有用户进程都有一个独立的内核堆栈区,Linux内核的堆栈一般是8K,所以在写内核程序的时候一定要小心,防止函数递归的出现,递归可能导致内核堆栈溢出。其次整个内核空间共用相同的页表,所以内核堆栈的在线性空间的起始地址都是不同的(有待考证,个人暂时猜测) 先从常说的进程控制块(PCB)说起,我们知道所谓的PCB就是task_struct变量,task_struct的许多模块都需要变内核中的一些函数修......【阅读全文】