《linux内核简介》
<linux系统架构>
系统架构
用户部分:
应用程序:GNU C 库
内核部分:系统调用接口、内核、体系结构相关代码(与硬件相关的代码)
划分原因:不同的运行空间所能访问的寄存器,访问的设备是不一样,其目的就是为了保护操作系统
两种状态的转换:系统调用和硬件中断可以完成两种模式的转换
内核架构
system call interface(SCI)系统调用接口:resd(),write(),open()
process management(MM)进程管理:进程的创建,进程删除,进程调度
virtual file system(VFS):虚拟文件
memory managment(MM):内存管理 :内存分配,内存的回收
network stack:网络协议栈,主要负责实现网络协议
arch(Architecture):体系结构代码,就是和cpu密切相关的代码
device drivers:设备驱动程序
《linxu 源代码》
<源代码下载>
<目录结构>
arch:arch 是archticture 的缩写,里面包含内核所支持的美中CPU结构体系,没给CPU 的子目录又包括boot ,mm ,kernel 等子目录,即系统引导,内存管理,系统调用
documentation :内核文档,存放驱动使用方法,内存更新记录
driver :驱动程序
include:内核所需要的头文件,与平台无关的文件放在include/linux 子目录下,与平台相关的头文件则放在相应的子目录中。
fs:file system .存放各种文件系统实现代码,每个子目录存放一个对应的文件系统 的实现代码,公用的源程序用于实现虚拟文件系统(vfs)
net: 网路协议实现代码(注意:不是网卡驱动)
<.source insight>
1)创建新工程(注意:在那个盘创建文件就需要将将要阅读的源代码放在该盘,否者找不到,同时注意勾选添加配置文件选项)
1)添加源代码,将需要添加的文件添加好以后,点击同步按钮(注意:该按钮有点像书)
<wiz_tmp_tag id="wiz-table-range-border" contenteditable="false" style="display: none;">