Linux 操作系统原理与应用PDF电子书下载
- 电子书积分:11 积分如何计算积分?
- 作 者:陈莉君编著
- 出 版 社:北京:清华大学出版社
- 出版年份:2012
- ISBN:9787302278368
- 页数:256 页
第1章 概述 1
1.1认识操作系统 1
1.1.1从使用者角度看 1
1.1.2从程序开发者的角度看 2
1.1.3从操作系统在整个计算机系统所处位置看 2
1.1.4从操作系统设计者的角度看 3
1.1.5操作系统组成 4
1.2开放源代码的UNIX/Linux操作系统 5
1.2.1 UNIX诞生和发展 5
1.2.2 Linux诞生 6
1.2.3操作系统标准POSIX 6
1.2.4 GNU和Linux 6
1.2.5 Linux的开发模式 7
1.3 Linux内核 7
1.3.1 Linux内核的技术特点 7
1.3.2 Linux内核的位置 8
1.3.3 Linux内核体系结构 9
1.4 Linux内核源代码 10
1.4.1 Linux内核版本 10
1.4.2 Linux内核源代码的结构 11
1.4.3 Linux内核源代码分析工具 12
1.5 Linux内核模块编程入门 12
1.5.1模块的定义 13
1.5.2编写一个简单的模块 13
1.5.3应用程序与内核模块的比较 15
1.6 Linux内核中链表的实现及应用 15
1.6.1链表的演化 15
1.6.2链表的定义和操作 16
1.6.3链表的应用 19
1.7小结 21
习题 21
第2章 内存寻址 22
2.1内存寻址 22
2.1.1 Intel x86 CPU寻址的演变 22
2.1.2 80x86寄存器简介 24
2.1.3物理地址、虚拟地址及线性地址 26
2.2段机制 27
2.2.1段描述符 27
2.2.2地址转换及保护 29
2.2.3 Linux中的段 29
2.3分页机制 31
2.3.1页与页表 31
2.3.2线性地址到物理地址的转换 34
2.3.3分页举例 34
2.3.4页面高速缓存 35
2.4 Linux中的分页机制 36
2.5 Linux中的汇编语言 38
2.5.1 AT&T与Intel汇编语言的比较 38
2.5.2 AT&T汇编语言的相关知识 39
2.5.3 GCC嵌入式汇编 40
2.6 Linux系统地址映射举例 43
2.7小结 45
习题 45
第3章 进程 47
3.1进程介绍 47
3.1.1程序和进程 47
3.1.2进程的层次结构 49
3.1.3进程状态 50
3.1.4进程举例 50
3.2 Linux系统中的进程控制块 52
3.2.1进程状态 53
3.2.2进程标识符 55
3.2.3进程之间的亲属关系 56
3.2.4进程控制块的存放 56
3.2.5当前进程 57
3.3 Linux系统中进程的组织方式 58
3.3.1进程链表 58
3.3.2哈希表 59
3.3.3就绪队列 60
3.3.4等待队列 61
3.4进程调度 63
3.4.1基本原理 64
3.4.2时间片 65
3.4.3 Linux进程调度时机 65
3.4.4进程调度的依据 66
3.4.5调度函数schedule()的实现 67
3.4.6 Linux2.6调度程序的改进 70
3.5进程的创建 73
3.5.1创建进程 73
3.5.2线程及其创建 74
3.6与进程相关的系统调用及其应用 76
3.6.1 fork系统调用 76
3.6.2 exec系统调用 77
3.6.3 wait系统调用 78
3.6.4 exit系统调用 79
3.6.5进程的一生 80
3.7系统调用及应用 81
3.8小结 82
习题 82
第4章 内存管理 84
4.1 Linux的内存管理概述 84
4.1.1虚拟内存、内核空间和用户空间 84
4.1.2虚拟内存实现机制间的关系 87
4.2进程的用户空间管理 87
4.2.1进程用户空间的描述 89
4.2.2进程用户空间的创建 93
4.2.3虚存映射 94
4.2.4进程的虚存区举例 95
4.2.5与用户空间相关的系统调用 97
4.3请页机制 98
4.3.1缺页异常处理程序 99
4.3.2请求调页 101
4.3.3写时复制 102
4.4物理内存分配与回收 102
4.4.1页描述符 102
4.4.2伙伴算法 104
4.4.3物理页面的分配 104
4.4.4物理页面的回收 106
4.4.5 Slab分配机制 107
4.4.6内核空间非连续内存区的分配 111
4.4.7物理内存分配举例 113
4.5交换机制 115
4.5.1交换的基本原理 115
4.5.2页面交换守护进程kswapd 118
4.6内存管理实例 119
4.6.1相关背景知识 119
4.6.2代码体系结构介绍 120
4.6.3实现过程 122
4.6.4程序代码 122
4.7小结 128
习题 128
第5章 中断和异常 130
5.1中断是什么 130
5.1.1中断向量 130
5.1.2外设可屏蔽中断 131
5.1.3异常及非屏蔽中断 131
5.1.4中断描述符表 132
5.1.5相关汇编指令 133
5.2中断描述符表的初始化 134
5.2.1 IDT表项的设置 134
5.2.2对陷阱门和系统门的初始化 135
5.2.3中断门的设置 135
5.2.4中断处理程序的形成 136
5.3中断处理 137
5.3.1中断和异常的硬件处理 137
5.3.2中断请求队列的建立 138
5.3.3中断处理程序的执行 141
5.3.4从中断返回 142
5.3.5中断的简单应用 142
5.4中断的下半部处理机制 144
5.4.1为什么把中断分为两部分来处理 144
5.4.2小任务机制 145
5.4.3工作队列 147
5.5中断应用——时钟中断 150
5.5.1时钟硬件 150
5.5.2时钟运作机制 151
5.5.3 Linux时间系统 152
5.5.4时钟中断 153
5.5.5定时器及应用 156
5.6小结 159
习题 159
第6章 系统调用 161
6.1系统调用与应用编程接口、系统命令以及内核函数的关系 161
6.1.1系统调用与API 161
6.1.2系统调用与系统命令 162
6.1.3系统调用与内核函数 162
6.2系统调用基本概念 163
6.2.1系统调用号 163
6.2.2系统调用表 163
6.2.3系统调用服务例程和系统调用处理程序 164
6.3系统调用实现 164
6.3.1初始化系统调用 165
6.3.2 system_call()函数 165
6.3.3参数传递 166
6.3.4跟踪系统调用的执行 167
6.4封装例程 168
6.5添加新系统调用 169
6.5.1添加系统调用的步骤 170
6.5.2系统调用的调试 171
6.6实例-系统调用日志收集系统 172
6.6.1代码结构体系介绍 172
6.6.2把代码集成到内核中 176
6.7小结 179
习题 179
第7章 内核中的同步 180
7.1临界区和竞争状态 180
7.1.1临界区举例 180
7.1.2共享队列和加锁 181
7.1.3确定保护对象 182
7.1.4死锁 182
7.1.5并发执行的原因 183
7.2内核同步措施 184
7.2.1原子操作 184
7.2.2自旋锁 186
7.2.3信号量 187
7.3生产者-消费者并发实例 191
7.3.1问题分析 191
7.3.2实现机制 191
7.3.3具体实现 193
7.4内核多任务并发实例 193
7.4.1内核任务及其并发关系 193
7.4.2问题描述 194
7.4.3实现机制 194
7.5小结 197
习题 198
第8章 文件系统 199
8.1 Linux文件系统基础 199
8.1.1 Linux文件结构 199
8.1.2文件类型 200
8.1.3存取权限和文件模式 201
8.1.4 Linux文件系统 201
8.2虚拟文件系统 204
8.2.1虚拟文件系统的引入 204
8.2.2 VFS中对象的演绎 206
8.2.3 VFS的超级块 207
8.2.4 VFS的索引结点 208
8.2.5目录项对象 210
8.2.6与进程相关的文件结构 212
8.2.7主要数据结构间的关系 214
8.2.8实例——观察数据结构中的数据 215
8.3文件系统的注册、安装与卸载 217
8.3.1文件系统的注册和注销 217
8.3.2文件系统的安装 218
8.3.3文件系统的卸载 219
8.4文件的打开与读写 219
8.4.1文件打开 219
8.4.2文件读写 220
8.5编写一个文件系统 222
8.5.1 Linux文件系统的实现要素 222
8.5.2什么是Romfs文件系统 224
8.5.3 Romfs文件系统布局与文件结构 224
8.5.4具体实现的对象 225
8.6小结 228
习题 228
第9章 设备驱动 230
9.1概述 230
9.2设备驱动程序框架 232
9.3 I/O空间的管理 237
9.3.1 I/O端口和I/O内存 237
9.3.2 I/O资源管理 237
9.3.3访问I/O端口空间 239
9.3.4访问I/O内存资源 240
9.4字符设备驱动程序 241
9.4.1字符设备的数据结构 241
9.4.2分配和释放设备号 242
9.4.3字符设备驱动的组成 243
9.4.4加载和卸载函数 243
9.4.5实现file_operaions中定义的函数 246
9.5块驱动程序 248
9.5.1块驱动程序的注册 249
9.5.2块设备请求 252
9.6小结 254
习题 255
参考文献 256
- 《钒产业技术及应用》高峰,彭清静,华骏主编 2019
- 《管理信息系统习题集》郭晓军 2016
- 《现代水泥技术发展与应用论文集》天津水泥工业设计研究院有限公司编 2019
- 《英汉翻译理论的多维阐释及应用剖析》常瑞娟著 2019
- 《药剂学实验操作技术》刘芳,高森主编 2019
- 《信息系统安全技术管理策略 信息安全经济学视角》赵柳榕著 2020
- 《数据库技术与应用 Access 2010 微课版 第2版》刘卫国主编 2020
- 《区块链DAPP开发入门、代码实现、场景应用》李万胜著 2019
- 《虚拟流域环境理论技术研究与应用》冶运涛蒋云钟梁犁丽曹引等编著 2019
- 《当代翻译美学的理论诠释与应用解读》宁建庚著 2019
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《流体力学》张扬军,彭杰,诸葛伟林编著 2019
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019