微信扫一扫,移动浏览光盘
简介
本书是对Linux操作系统内部结构的分析,其内容直接来源于Linux操作系统
的源代码,是对作者多年来从事Linux教学和科研工作的总结。全书从操作系统的
引导和初始化入手,详细分析了Linux操作系统的中断处理、内存管理、进程管理、进程间通信、文件系统、设备驱动以及内核模块机制,讨论了其中的主要数据结构及实现算法,描述了各部分的主要功能及它们之间的关系。
本书可以作为硕士研究生“操作系统结构分析”课程的教材,也可作为高年级本科生的教材或教学参考书,更是Linux研究和开发人员的必备工具书。
目录
第一章 硬件平台
1.l 基本概念
1.1.l 特权级
1.1.2 操作模式
1.1.3 系统级体系结构
1.2 描述符
1.2.l 段描述符
1.2.2 全局和局部描述符表
1.2.3 段选择符
1.2. 4 段寄存器
1.2.5 任务状态段
1.2.6 中断和异常
1.2.7 门描述符
1.3 分页机制
1.3. 1 与分页相关的标志
l.3.2 页目录和灭表
l.3.3 页级保护
1. 4 寄存器
1.4.l 通用寄存器
1.4.2 标志寄存器
.1.4.3 段寄存器
1.4.4 管理寄存器
1.4.5 控制需存器
1.4.6 指令寄存器
1.4.7 特殊模式寄存器
1.4.8 其它寄存器
1.5 系统指令
1.6 at&t汇编语言
1.6.1 at&t汇编格式
1.6.2 at&t内嵌汇编
第二章 引导和初始化
2.l 开机过程
2.2 内核的组织
2.3 引导程序
2.4 实模式下的初始化
2.5 内核映像解压缩
2. 6 保护模式下的初始化
2.7 内核启动
2.8 init进程
第三章 中断处理
3.l 中断
3. 1.l 中断设置
3.1.2 中断处理要求
3.1.3 异常处理
3. 1.4 外部中断处理
3. 2 时钟
3.2.1 时钟中断
3.2.2 时钟中断上部处理
3. 2.3 时钟中断底半处理
3. 2.4 系统时间
3.2.5 更新进程时间片
3.2.6 定时器
3. 3 系统调用
3.3. 1 调用机制
3.3.2 int$0x80
3.3.3 内存拷贝
第四章 内存管理
4.l 物理内存管理器
4.1.l 数据结构
4. 1. 2 页分配
4.1.3 页释放
4.1.4 页回收
4.2 内核内存管理器
4. 2.l 初始化
4.2.2 cache的建立
4.2.3 为 cache增加 slab
4.2.4 对象的分配
4. 2.5 对象的释放
4.2. 6 回收指定cache的空闲slab
4.2. 7 回收cache中的空闲slab
4.3 虚拟内存管理器
4.3.l 虚拟内存抽象模型
4.3. 2 虚拟内存拷贝
4. 3. 3 虚拟内存重建
4. 3.4 缺页处理
4. 3.5 共享映射页的写出
4.3.6 交换
4.3.7 页级存和交换缓存
4. 3. 8 堆
4. 3.9 虚拟内存释放
4.4 内核虚拟内存管理器
第五章 进程管理
5.l 进程数据结构
5. 2 进程创建
5.3 进程调度
5. 4 进程执行映像的加载
5. 4.1 elf格式执行文件
5. 4. 2 elf格式共享库
5. 4.3 脚本文件
5. 4.4 elf文件的加载过程
5.5 进程终止
5.6 进程等待队列
5.7 进程同步
5. 7.l 锁
5. 7.2 信号灯
5.7. 3 条件变量
5.7. 4 睡眠等待
第六章 进程间通信
6. 1 信号
6. 1. 1 信号的定义
6. 1. 2 数据结构
6.l.3 信号位图操作
6.1.4 注册信号处理程序
6.1.5 发送信号
6.l.6 处理信号
6.1.7 其余操作
6.1.8 信号的局限
6.2 管道
6. 3 系统vipc机制
6. 3.1 消息队列
6.3.2 信号灯
6.3.3 共享内存
第七章 文件系统
7.l 虚拟文件系统
7. 1.1 vfs超级块
7. 1.2 vfs inode
7.1.3 目录项
7.l.4 注册文件系统
7.l.5 安装文件系统
7.1.6 获得文件的inode和目录项
7.1.7 创建或打开文件
7.1.8 文件i/o
7.1. 9 卸载文件系统
7.1.10 重装文件系统
7.1.11 同步文件系统
7.2 缓存机制
7.2.1 vfs inode缓存
7.2.2 目录项缓存
7.2.3 buffe cache
7. 3 ext2文件系统
7.3.1 ext2超级块
7.3.2 ext2 inode
7.3.3 ext2组描述符
7. 3. 4 ext2目录
7.3. 5 文件查找
7. 3.6 数据块的分配和释放
7. 3.7 ext2文件系统的注册
7. 3.8 ext2文件系统的安装
7.3.9 ext2文件系统的vfs mode
7. 3. 10 ext2文件系统的文件操作
第八章 设备驱动
8.l 设备驱动程序概念
8.l.l i/o空间
8.1.2 轮询和中断
8. l.3 数据传输方式
8. l.4 设备名字空间
8. l.5 设备和驱动程序分类
8.1.6 内存限制
8.1.7 设备驱动程序和内核的接口
8. 2 字符设备驱动程序
8.2.l 注册
8. 2. 2 打开
8.2.3 设备 i/o操作
8.2.4 中断
8.2.5 关闭
8.3 块设备驱动程序
8.3.1 注册
8. 3. 2 ide磁盘的初始化
8.3.3 打开设备(open)
8. 3.4 设备i/o操作
8.3.5 释放设备
8.3.6 ramdisk驱动程序
8.4 网络设备驱动程序
第九章 内核模块
9.l 内核模块的设计
9.2 模块数据结构
9.3 模块的加载
9. 4 模块的卸载
9.5 模块系统调用
9.6 内核模块的问题
参考文献
1.l 基本概念
1.1.l 特权级
1.1.2 操作模式
1.1.3 系统级体系结构
1.2 描述符
1.2.l 段描述符
1.2.2 全局和局部描述符表
1.2.3 段选择符
1.2. 4 段寄存器
1.2.5 任务状态段
1.2.6 中断和异常
1.2.7 门描述符
1.3 分页机制
1.3. 1 与分页相关的标志
l.3.2 页目录和灭表
l.3.3 页级保护
1. 4 寄存器
1.4.l 通用寄存器
1.4.2 标志寄存器
.1.4.3 段寄存器
1.4.4 管理寄存器
1.4.5 控制需存器
1.4.6 指令寄存器
1.4.7 特殊模式寄存器
1.4.8 其它寄存器
1.5 系统指令
1.6 at&t汇编语言
1.6.1 at&t汇编格式
1.6.2 at&t内嵌汇编
第二章 引导和初始化
2.l 开机过程
2.2 内核的组织
2.3 引导程序
2.4 实模式下的初始化
2.5 内核映像解压缩
2. 6 保护模式下的初始化
2.7 内核启动
2.8 init进程
第三章 中断处理
3.l 中断
3. 1.l 中断设置
3.1.2 中断处理要求
3.1.3 异常处理
3. 1.4 外部中断处理
3. 2 时钟
3.2.1 时钟中断
3.2.2 时钟中断上部处理
3. 2.3 时钟中断底半处理
3. 2.4 系统时间
3.2.5 更新进程时间片
3.2.6 定时器
3. 3 系统调用
3.3. 1 调用机制
3.3.2 int$0x80
3.3.3 内存拷贝
第四章 内存管理
4.l 物理内存管理器
4.1.l 数据结构
4. 1. 2 页分配
4.1.3 页释放
4.1.4 页回收
4.2 内核内存管理器
4. 2.l 初始化
4.2.2 cache的建立
4.2.3 为 cache增加 slab
4.2.4 对象的分配
4. 2.5 对象的释放
4.2. 6 回收指定cache的空闲slab
4.2. 7 回收cache中的空闲slab
4.3 虚拟内存管理器
4.3.l 虚拟内存抽象模型
4.3. 2 虚拟内存拷贝
4. 3. 3 虚拟内存重建
4. 3.4 缺页处理
4. 3.5 共享映射页的写出
4.3.6 交换
4.3.7 页级存和交换缓存
4. 3. 8 堆
4. 3.9 虚拟内存释放
4.4 内核虚拟内存管理器
第五章 进程管理
5.l 进程数据结构
5. 2 进程创建
5.3 进程调度
5. 4 进程执行映像的加载
5. 4.1 elf格式执行文件
5. 4. 2 elf格式共享库
5. 4.3 脚本文件
5. 4.4 elf文件的加载过程
5.5 进程终止
5.6 进程等待队列
5.7 进程同步
5. 7.l 锁
5. 7.2 信号灯
5.7. 3 条件变量
5.7. 4 睡眠等待
第六章 进程间通信
6. 1 信号
6. 1. 1 信号的定义
6. 1. 2 数据结构
6.l.3 信号位图操作
6.1.4 注册信号处理程序
6.1.5 发送信号
6.l.6 处理信号
6.1.7 其余操作
6.1.8 信号的局限
6.2 管道
6. 3 系统vipc机制
6. 3.1 消息队列
6.3.2 信号灯
6.3.3 共享内存
第七章 文件系统
7.l 虚拟文件系统
7. 1.1 vfs超级块
7. 1.2 vfs inode
7.1.3 目录项
7.l.4 注册文件系统
7.l.5 安装文件系统
7.1.6 获得文件的inode和目录项
7.1.7 创建或打开文件
7.1.8 文件i/o
7.1. 9 卸载文件系统
7.1.10 重装文件系统
7.1.11 同步文件系统
7.2 缓存机制
7.2.1 vfs inode缓存
7.2.2 目录项缓存
7.2.3 buffe cache
7. 3 ext2文件系统
7.3.1 ext2超级块
7.3.2 ext2 inode
7.3.3 ext2组描述符
7. 3. 4 ext2目录
7.3. 5 文件查找
7. 3.6 数据块的分配和释放
7. 3.7 ext2文件系统的注册
7. 3.8 ext2文件系统的安装
7.3.9 ext2文件系统的vfs mode
7. 3. 10 ext2文件系统的文件操作
第八章 设备驱动
8.l 设备驱动程序概念
8.l.l i/o空间
8.1.2 轮询和中断
8. l.3 数据传输方式
8. l.4 设备名字空间
8. l.5 设备和驱动程序分类
8.1.6 内存限制
8.1.7 设备驱动程序和内核的接口
8. 2 字符设备驱动程序
8.2.l 注册
8. 2. 2 打开
8.2.3 设备 i/o操作
8.2.4 中断
8.2.5 关闭
8.3 块设备驱动程序
8.3.1 注册
8. 3. 2 ide磁盘的初始化
8.3.3 打开设备(open)
8. 3.4 设备i/o操作
8.3.5 释放设备
8.3.6 ramdisk驱动程序
8.4 网络设备驱动程序
第九章 内核模块
9.l 内核模块的设计
9.2 模块数据结构
9.3 模块的加载
9. 4 模块的卸载
9.5 模块系统调用
9.6 内核模块的问题
参考文献
Linux操作系统结构分析[电子资源.图书]
光盘服务联系方式: 020-38250260 客服QQ:4006604884
云图客服:
用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问
Video Player
×
Audio Player
×
pdf Player
×