新書推薦:
《
千万别喝南瓜汤(遵守规则绘本)
》
售價:HK$
44.7
《
大模型启示录
》
售價:HK$
112.0
《
东法西渐:19世纪前西方对中国法的记述与评价
》
售價:HK$
201.6
《
养育男孩:官方升级版
》
售價:HK$
50.4
《
小原流花道技法教程
》
售價:HK$
109.8
《
少女映像室 唯美人像摄影从入门到实战
》
售價:HK$
110.9
《
詹姆斯·伍德系列:不负责任的自我:论笑与小说(“美国图书评论奖”入围作品 当代重要文学批评家詹姆斯·伍德对“文学中的笑与喜剧”的精湛研究)
》
售價:HK$
87.4
《
武当内家散手
》
售價:HK$
50.4
|
內容簡介: |
本书概述了Linux的发展历史,探讨了Linux的设计哲学,综述了Intel平台以及Linux的主要开发工具和几种常用的数据结构,而后从Linux的引导和初始化入手,详细论述了Linux各主要组成部分的设计原理、管理结构和技术演变,包括中断处理、时钟管理、物理内存管理、进程管理、虚拟内存管理、互斥与同步、进程间通信、虚拟文件系统、物理文件系统等,并深入探讨了Linux各组成部分之间的组织关系。
《Linux原理与结构》内容取材于作者长期的教学和科研实践,涵盖了
Linux发展过程中的多个版本,逻辑性强,抽象层次高,可作为硕士研究生与高年级本科生的教材或教学参考书,也可供Linux研究和开发人员参考使用。
|
目錄:
|
第一章 linux概述
1.1 操作系统内核
1.2 linus与linux
1.3 linux内核结构
1.4 linux发布
1.5 unix与linux哲学
思考题
第二章 平台与工具
2.1 硬件平台
2.2 intel处理器体系结构
2.2.1 处理器操作模式
2.2.2 段页式内存管理
2.2.3 内存管理的变化与扩展
2.2.4 内存保护
2.2.5 进程管理
2.2.6 中断处理
2.2.7 apic
2.2.8 处理器初始化
2.2.9 寄存器与特权指令
2.3 gnu c语言
2.4 gnu汇编语言
2.4.1 gnu汇编格式
2.4.2 att指令语法
2.4.3 gnu内嵌汇编
2.5 gnu链接脚本
2.6 常用数据结构
2.6.1 通用链表
2.6.2 红黑树
思考题
第三章 引导与初始化
3.1 内核引导
3.2 实模式初始化
3.3 内核解压缩
3.4 内核预初始化
3.5 第0级初始化
3.6 第1级初始化
3.7 ap初始化
思考题
第四章 中断处理
4.1 中断处理流程
4.2 异常处理
4.2.1 异常处理流程
4.2.2 内核异常捕捉
4.3 外部中断处理
4.3.1 硬处理管理结构
4.3.2 设备中断硬处理管理接口
4.3.3 外部中断硬处理
4.3.4 外部中断软处理
4.4 系统调用
4.4.1 系统调用表
4.4.2 标准函数库
4.4.3 系统调用处理
4.4.4 快速系统调用
思考题
第五章 时钟管理
5.1 时钟管理系统组成结构
5.2 时钟设备管理
5.2.1 时钟设备管理结构
5.2.2 pit设备
5.2.3 hpet设备
5.2.4 local apic设备
5.2.5 当前时钟设备
5.3 计时器管理
5.4 周期性时钟中断
5.4.1 周期性时钟中断处理
5.4.2 时间管理
5.4.3 定时管理
5.5 单发式时钟中断
5.5.1 高精度单发中断模式
5.5.2 高精度单发式时钟中断处理
5.5.3 高精度周期性时钟中断仿真
5.5.4 低精度单发中断模式
5.6 变频式周期性时钟中断
5.6.1 变频管理结构
5.6.2 高精度周期性时钟中断暂停
5.6.3 低精度周期性时钟中断暂停
思考题
第六章 物理内存管理
6.1 内存管理系统组成结构
6.2 伙伴内存管理
6.2.1 伙伴内存管理结构
6.2.2 伙伴内存初始化
6.2.3 物理页块分配
6.2.4 内核线性地址分配
6.2.5 物理页块释放
6.3 逻辑内存管理
6.4 对象内存管理
6.4.1 slab管理器
6.4.2 slub管理器
6.4.3 slob管理器
思考题
第七章 进程管理
7.1 进程管理结构
7.2 进程创建
7.3 进程调度
7.3.1 linux调度器的演变
7.3.2 普通进程调度类
7.3.3 实时进程调度类
7.3.4 空闲进程调度类
7.3.5 通用调度器
7.3.6 linux调度器的增强
7.4 进程终止
7.4.1 子进程退出操作exit
7.4.2 父进程回收操作wait
思考题
第八章 虚拟内存管理
8.1 虚拟内存管理结构
8.2 虚拟内存区域管理
8.2.1 虚拟地址空间布局
8.2.2 虚拟内存区域操作
8.3 虚拟地址空间建立
8.3.1 可执行文件
8.3.2 加载函数
8.3.3 elf文件加载
8.3.4 动态链接器初始化
8.3.5 elf格式动态链接
8.4 页故障处理
8.4.1 页故障异常处理流程
8.4.2 非法访问页故障处理
8.4.3 有效用户页故障处理
8.4.4 有效内核页故障处理
8.5 页面回收
8.5.1 页面换出位置
8.5.2 页面淘汰算法
8.5.3 页面回收流程
8.5.4 优化措施
思考题
第九章 互斥与同步
9.1 基础操作
9.1.1 格栅操作
9.1.2 原子操作
9.1.3 抢占屏蔽操作
9.1.4 睡眠与等待操作
9.2 自旋锁
9.2.1 自旋锁的概念
9.2.2 经典自旋锁
9.2.3 带中断屏蔽的自旋锁
9.2.4 读写自旋锁
9.3 序号锁
9.4 rcu机制
9.4.1 rcu实现思路
9.4.2 rcu管理结构
9.4.3 宽限期启动
9.4.4 宽限期终止
9.5 信号量
9.5.1 经典信号量
9.5.2 互斥信号量
9.5.3 读写信号量
9.6 信号量集合
9.6.1 管理结构
9.6.2 信号量操作
思考题
第十章 进程间通信
10.1 信号
10.1.1 信号定义
10.1.2 信号管理结构
10.1.3 信号处理程序注册
10.1.4 信号发送
10.1.5 信号处理
10.1.6 信号接收
10.2 管道
10.2.1 管道的意义
10.2.2 匿名管道
10.2.3 命名管道
10.3 消息队列
10.3.1 system v消息队列
10.3.2 posix消息队列
10.4 共享内存
10.4.1 共享文件映射
10.4.2 posix共享内存
10.4.3 system v共享内存
思考题
第十一章 虚拟文件系统
11.1 虚拟文件系统管理结构
11.1.1 虚拟文件系统框架
11.1.2 超级块结构
11.1.3 索引节点结构
11.1.4 目录项结构
11.2 文件系统管理
11.2.1 文件系统注册
11.2.2 文件系统安装
11.2.3 文件系统卸载
11.3 文件管理
11.3.1 路径名解析
11.3.2 文件管理操作
11.4 文件io操作
11.4.1 文件描述符表
11.4.2 文件打开与关闭
11.4.3 文件内容读写
11.5 文件缓存管理
11.5.1 缓存管理基数树
11.5.2 文件地址空间
11.5.3 缓存管理机制
11.5.4 文件读写操作
思考题
第十二章 物理文件系统
12.1 块设备管理
12.1.1 块设备的用户表示
12.1.2 块设备的物理表示
12.1.3 块设备的逻辑表示
12.1.4 请求队列
12.1.5 请求递交
12.1.6 请求处理
12.2 ext文件系统
12.2.1 ext文件系统布局
12.2.2 ext管理结构
12.2.3 ext逻辑块管理
12.2.4 ext inode管理
12.2.5 ext文件系统类型
12.2.6 ext超级块操作集
12.2.7 ext inode操作集
12.2.8 ext文件操作集
12.2.9 ext地址空间操作集
思考题
参考文献
|
|