读LKD笔记
第一章
---------------------------------------------------
1. Unix是从失败的项目Multics中涅磐而生。
2. 贝尔试验室公布的第一个版本:V6
3. 许多其他的公司把Unix一直到新的机型上去
4. 贝尔试验室推出system III和System V.
5. 伯克利大学的变体:加入了虚拟内存,换页机制,TCP/IP网络协议栈
6. 许多厂商推出自己的Unix:HP-UX,IAX,Solaris, Tru64
7. 由于最初的一流的设计和以后多年的创新和提高,Unix成为一个强大,健壮,稳定的OS。
(a.有限的系统调用,以及明确的设计目的。b.一切都是文件。c.C语言编写,惊人的移植能力
d.创建进程迅速,简单稳定的进程间通信)
8. 一个多任务,多线程,虚拟内存,换页,动态链接,TCP/IP的现代操作系统
9. Unix的成功归功于简洁,一流的设计。
----------------------------------------------------------------------
1. Linus在internet上发布了Linux的早期版本
2. 成功的重要因素:吸引了很多开发者对代码进行修改和完善
3. 商业前景:从嵌入式,桌面系统,到服务器
4. Linux克隆了Unix,但不是Unix
5. Linux系统的基础是:内核,C库,编译器,工具集,和系统的基本工具
------------------------------------------------------------
1. 内核:处于系统态,拥有受保护的内存空间,和访问硬件设备的所有权限
2. 系统态和保护起来的内存空间,统称内核空间
3. 普通用户程序以用户态进入用户空间,应用程序通过系统调用和内核通讯
4. 应用程序-〉库函数-〉系统调用-〉内核空间
5. 应用程序通过系统调用陷入内核,是应用程序完成其功做的基本行为方式
6. 中断上下文独立于进程上下文,保证中断处理程序能够在第一时间响应中断请求
(a.内核空间,进程上下文。b.内核空间,中断上下文。c.用户空间,用户进程)
----------------------------------------------------------------------
1. 所有的unix内核都同宗同源,提供相同的api
2. 内核设计: 单内核,微内核,外内核
3. Linux吸取了微内核的精华:引以为豪的模块化设计,抢占式内核,内核线程,以及动态装载内核模块。
4. 内核特点的分析,见LKD p6.
-----------------------------------------------------------------------
Rebort Love在第一章的最后一句话:
最重要的是,在其中寻找快乐吧。
我想Free的精髓应该在这里。