共1页 1
-
产生页面异常的原因:
(1).目标页面不存在(页表项全0,即该线性地址尚未建立或者已经撤销);
(2).相应的物理页面不在内存中(页表项非空,但P标志=0,比如在swap分区或磁盘文件上);
(3).访问权限不符合(此时页表项P标志=1,比如企图写只读页面).
当出现上面情况之一,那么就会产生页面page fault异常。产生异常的线性地址存储在CR2中,所以在do_page_fault()中首先将这个地址读进来,接着:... -
2008-03-11
Linux内核2.6和2.4中内核堆栈的比较 - [软件与系统]
Linux内核 2.4和2.6的进程内核堆栈和task描述符存储不太一样,这儿总结一下。
在内核2.4中堆栈是这么定义的:
union task_union {
struct task_struct task;
unsigned long stack[INIT_TASK... -
2008-02-27
增加与kernel有关的标签 - [软件与系统]
主要记录与kernel学习有关的任何东西,包括操作系统,网络,驱动程序,嵌入式系统等方面







