linux0.11源代码阅读
文章平均质量分 60
「已注销」
小盒很萌(づ ̄3 ̄)づ
展开
-
part3.内存管理源码分析Ⅰ
首先先分析memory.c,先看一下其中的头文件,全局变量,宏定义与函数。 step1分析各函数的主要功能页的获取与释放get_free_page():用于在主内存区中申请一页空闲内存页,并返回物理内存页的起始地址。 hhh AT&T汇编是shenmegui,感觉完全看不懂。有必要再加一段,AT&T格式汇编的学习了。 这一篇只好先夭折了… (PS:端午节快乐!昨天的《魔兽》真好看!)原创 2016-06-09 14:32:48 · 391 阅读 · 0 评论 -
part2.内存管理先导知识
前言想了一想,还是需要先导知识,一开始就读源码,实在是有点困难。 从内存管理开始吧,毕竟属于相对比较简单的一部分。知识内存分页管理机制Linux的内存管理程序采用了分页管理方式。内存分页管理是通过页面目录表和内存页表多组成的二级表进行。页目录表中的每一个表项(简称页目录项)(4B)用来寻址一个页表,而每个页表项(4B)用来指定一页物理内存页。因此,当指定了一个页目录项和一个页表项,可以唯一确定所对原创 2016-06-09 07:18:49 · 475 阅读 · 0 评论 -
part1.Linux内核源代码的目录概览
前言 Linux是一种单内核的系统。补充讲解一些微内核与单内核(又称“宏内核”):以下参考博文微内核和单内核 微内核(Microkernel kernel)——在微内核中,大部分内核都作为单独的进程在特权状态下运行,他们通过消息传递进行通讯。在典型情况下,每个概念模块都有一个进程。因此,假如在设计中有一个系统调用模块,那么就必然有一个相应的进程来接收系统调用,并和能够执行系统调用的其他进程原创 2016-06-08 17:34:10 · 1495 阅读 · 1 评论 -
Linux0.11源代码阅读part0
Linux0.11源代码阅读part0本节主要介绍一下整个阅读源代码的流程和所涉及到的参考资料.etc涉及内容阅读工具参考书籍版权声明涉及内容 Linux0.11作为一个基本可以正常运行内核版本,已经具有了较为完整的体系结构。本系列文章限于篇幅(主要是时间),只对以下三个部分作详细的注释说明: 内核引导启动程序 进程调度与系统调用 文件系统阅读工具 骄傲地使用原创 2016-06-08 10:36:25 · 772 阅读 · 0 评论 -
part4.AT&T汇编学习
基本写法寄存器在寄存器前要加% e.g %1操作数顺序左边是源,右边是目的 e.g. movl %1, %2立即数立即数前加e.g.movl e.g. movl 0x04, %1 data = 0x04 movl $data, %1 意味着将立即数04h装入寄存器1符号常数直接引用 e.g. value = .long 0x12a movl value, %1 将常数0x12a装原创 2016-06-09 15:40:36 · 273 阅读 · 0 评论