当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > 读核日记(二)

Unix/Linux
查看linux 下已经安装的软件包信息
linux 系统中软件raid 配置方法
linux 下MySQL服务器的启动与停止
linux 系统下FTP服务器配置方法
Linux系统下如何挂载U盘,硬盘,光驱
linux 系统下DHCP服务器 配置方法
Linux系统下软件的安装与卸载
在Fedora 9中启用ext4文件系统的方法
linux下挂载(mount)光盘镜像文件、移动硬盘、U盘、Windows网络共享和NFS网络共享
Linux查看文件夹大小的命令
LINUX系统grub常见错误分析
llinux fdisk分区工具 使用方法
linux 系统telnet乱码
rhythmbox 乱码的解决方法
linux单网卡绑定多ip
tar.gz 和tar.bz2 详细解释
linux学习笔记
linux系统rpm安装包详解
linux 服务器常用维护命令
出现The file /boot/grub/stage1 not read cor 解决办法

Unix/Linux 中的 读核日记(二)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 175 ::
收藏到网摘: n/a

 

这几天看的东西,前辈有书指导,不用我费口舌, 简单介绍一下

搞清楚了 linux的启动过程,对于整个系统分析来说.连一个开头都不算.所做的只是知道了系统启动是一些函数的条用顺序.恰如某位朋友来信建议的那样, 如果这样照顺序硬读,实是自残.好在sunmoon 有一定的自知之明.如此这样下去,等不懂得东西多了.那我就不能坚持了,所以我的原则是?:准备不充分决不轻易动手.

身边有意高手建议,应从应用程序入手,先写一些和系统相关的有水平的程序, 在对程序尽心跟踪.了解整个系统的体系结构和调用体系.再去分析源吗.

同时,sunmoon 也知道,一个操作系统是所有有关软件理论的集大成.sunmoon 不是计算机系毕业的, 对与很多基础课生疏的很.因此不得不找了<<汇编语言>><<操作系统原理>><<计算机体系结构>><<编译原理?>><<操作系统的设计与实现>>等经典的书籍放在案头备用.当然, 刚出的一本<<linux 操作系统内核分析>>更是非常好.

在昨晚这些后, 我开始着手分析linux 的体系结构:

linux 的内核采用的并不是现在流行(理论上应该更先进的)为内核结构.而采用的是由很多过程组成的一个整合体. 每一个过程可以相互调用. 看起来停乱.这与它的开发历程有关.但我个人感觉, linux 整体如同一个结构化的程序.(决非opp).是由不同的模块完成不同的功能, 然后经过整体的调度,整合而变成一整体.

在<<linux 操作系统内核分析>>中分出了5个子系统: 进程调度, 内存管理,虚拟文件系统,进程通信,与网络接口.

具体的每个子系统的功能, 接口, 子系统结构, 数据结构的描述, 可以从这本书上详细的看一看.力争对总体有一个把握.

分清楚在linux 的近50 兆源吗中. 那一部分,实现什么功能, 以便以后阅读是不至于混乱.

如果我又两年时间, 我会用伪码实现linux 功能的模拟.然后以写的角度去分析,这才是学人之长为我所用的绝好办法. 可惜由于一些难言之隐,我近两年的时间都有安排, 所以我只能这样读了

再下一步, 应该分析Makefile