Linux操作系统内存管理的源码实现
发布时间:2016-01-25 15:11:36 所属栏目:Linux 来源:网络整理
导读:最近一段时间在阅读Linux的源代码,想把看到的东西写出来,觉得内存这一部分最简单,就先写了出 来。请指正! 内存最低4K的地址是一张页目录(page_dir),页目录
根据error_code判断是缺页还是写保护引起的异常,然后去执行相应的处理程序段,先看写保护的处 理吧。 247 void do_wp_page(unsigned long error_code,unsigned long address) 248 { 249 #if 0 250 /* we cannot do this yet: the estdio library writes to code space */ 251 /* stupid, stupid. I really want the libc.a from GNU */ 252 if (CODE_SPACE(address)) 253 do_exit(SIGSEGV); 254 #endif 255 un_wp_page((unsigned long *) 256 (((address>>10) & 0xffc) + (0xfffff000 & 257 *((unsigned long *) ((address>>20) &0xffc))))); 258 259 } (编辑:云计算网_泰州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |