第一章              绪论

1linux与其他类unix内核的比较

特点:

(1)    单块结构的内核---由几个逻辑上独立的成分构成

(2)    编译并静态连接的传统unix内核---可以按需自动装载或卸载模块

(3)    内核线程---内核线程是一个能被独立调度的执行环境

(4)    多线程应用程序支持---

(5)    抢占式内核

(6)    多处理器支持---SMP对称多处理

(7)    文件系统

(8)    STREAMS

2、操作系统基本概念

1)内核kernel,包含操作系统所必须用到的核心过程procedure

2)操作系统必须完成两个目标

l  与硬件部分交互

l  为运行在计算机系统上的应用程序提供执行环境

3)用户态和内核态

3、多用户系统

       并发独立地执行分别属于两个或多个用户的若干应用程序。

4、用户和组

1UID:所有用户用一个唯一的数字来标识

2user group  ID:用户组标识

5、进程

       程序执行时的一个实例。

6、内核体系结构

       Linux内核提供了模块(module),模块是一个目标文件,其代码可以在运行时链接到内核或从内核解除链接。(作用:文件系统实现,驱动程序等)

7Unix文件系统概述

1)文件:Unix文件是以字节序列组成的信息载体,内核不解释文件的内容。

2)硬链接和软链接:包含在目录中的文件名就是一个文件的硬链接,简称链接Link。在同一或不同目录中,同一文件可以有几个链接,因此对应几个文件名。$ ln P1 P2:用来创建一个新的链接,为P1创建一个路径名为P2的链接。

硬链接的限制:

l  不允许给目录创建硬链接

l  只有在同一个文件系统中的文件之间才能创建链接。

为了克服限制,引入软链接Soft link symbolic link。软链接是一个短文件,文件中包含有另一个文件的任意一个路径名。路径名可以是指向位于任意一个文件系统中任意文件或目录,甚至可以指向不存在的文件。

$ ln –s P1 P2:创建一个路径名为P2的新软链接,P2指向路径名P1。当该命令执行时,文件系统抽出P2的目录部分,并在那个目录下创建一个名为P2的符号链接类型的新项。对P2的引用可以被自动转换为指向P1的一个引用。

3)文件类型:

       普通文件、目录文件、符号链接、面向块的设备文件、面向字符的设备文件、管道、命名管道、套接字。

文件描述符和索引节点:

文件操作

8Unix内核概述

1)进程/内核模式:内核本身并不是一个进程,而是进程的管理者。

2)进程的实现:进程描述符,当内核暂停一个进程执行时,就把几个相关处理器寄存器的内容保存到进程描述符中。

3)可重入内核:所有的Unix内核都是可重入的。

4)进程地址空间:每个进程运行在它的私有地址空间。

5)同步和临界区:(信号量、自旋锁)

6)进程间通信

7)进程管理---fork()_exit()wait()waitpid()

9、内存管理

1)虚拟内存:虚拟内存作为一种逻辑层,处于应用程序的内存请求与硬件内存管理单元(Memory Management UnitMMU)之间。

虚拟地址空间:virtual address space