图书目录

第1部分Linux操作系统

第1章操作系统概述3

1.1操作系统简介3

1.1.1操作系统概念3

1.1.2操作系统发展简介4

1.2操作系统接口6

1.2.1程序员级接口6

1.2.2用户级接口6

1.3操作系统功能7

1.3.1处理机管理7

1.3.2存储管理7

1.3.3设备管理7

1.3.4文件系统8

1.3.5网络管理8

1.4操作系统结构8

1.4.1操作系统的逻辑结构9

1.4.2操作系统的体系结构9

1.5Linux操作系统介绍11

1.5.1Linux——自由操作系统11

1.5.2UNIX、GNU与Linux12

1.6Linux的内核特征16

1.6.1接口特色16

1.6.2功能特色17

1.6.3结构特征17

1.7Linux的发展及展望18

1.7.1开发模式18

1.7.2内核版本19

1.7.3国内应用状况19

1.7.4发展方向20

1.8小结21

习题22

第2章处理机管理23

2.1作业23

2.2进程24

2.2.1进程的概念24

2.2.2进程描述26

2.2.3进程状态及转换28

2.2.4进程控制31

2.2.5进程约束32

2.2.6进程通信33

2.2.7死锁35

2.3线程36

2.3.1线程的概念36

2.3.2线程和进程37

2.3.3Linux系统的线程37

2.4小结38

习题38

第3章存储管理40

3.1虚拟存储器40

3.1.1局部性原理40

3.1.2虚拟地址和虚拟地址空间41

3.2内存管理方式41

3.2.1页41

3.2.2段43

3.2.3段页43

3.380386段页机制44

3.3.1实模式与保护模式44

3.3.2地址空间44

3.4Linux存储管理45

3.4.1段页设置45

3.4.2地址映射46

3.4.3共享与保护47

3.4.4分配与回收49

3.5小结51

习题52

第4章调度53

4.1调度的层次53

4.2Linux交换调度54

4.2.1交换空间55

4.2.2进程的内存组织55

4.2.3换入56

4.2.4换出57

4.3Linux进程调度59

4.3.1初始化过程及进程树59

4.3.2进程的组织60

4.3.3进程调度时机61

4.3.4进程调度算法62

4.3.5进程调度过程63

4.4小结65

习题66

第5章设备67

5.1设备介绍67

5.1.1设备分类68

5.1.2设备实例——磁盘68

5.2数据传输69

5.2.1数据传输控制方式69

5.2.2数据传输关键技术71

5.3I/O软件原理72

5.3.1Linux系统I/O软件层次结构72

5.3.2Linux设备驱动程序74

5.4小结75

习题76

第6章文件系统77

6.1文件系统概述77

6.2文件管理78

6.2.1文件78

6.2.2文件结构79

6.2.3Linux文件82

6.3目录83

6.3.1目录结构83

6.3.2访问权限84

6.3.3Linux目录分布88

6.3.4Linux目录文件89

6.3.5特殊目录89

6.4逻辑文件系统——Ext292

6.4.1Ext2文件系统92

6.4.2基本数据结构93

6.4.3存储空间管理94

6.5虚拟文件系统——VFS96

6.5.1基本数据结构97

6.5.2文件系统管理98

6.5.3VFS和进程的接口100

6.5.4缓冲区管理102

6.6小结105

习题106

第2部分操作系统命令及shell编程

第7章Linux基本命令109

7.1Linux的登录和退出109

7.2文件命令111

7.3目录和层次命令113

7.4查找命令115

7.5目录和文件安全性116

7.6磁盘存储命令118

7.7进程命令119

7.8联机帮助命令119

7.9小结120

习题120

第8章使用vi编辑文件121

8.1vi的启动与退出121

8.2vi的两种模式122

8.3基本vi命令123

8.4使用vi查找和替换124

8.5编辑多个文件125

8.6小结125

习题126

第9章shell编程127

9.1shell 概述127

9.1.1什么是shell127

9.1.2shell程序语言的特点127

9.1.3shell的版本127

9.2shell的基本功能128

9.2.1程序的运行128

9.2.2使用保留字和元字符128

9.2.3变量、文件名的替换129

9.2.4输入输出重定向(改向)130

9.2.5运行环境的控制130

9.2.6支持shell的编程130

9.3shell启动及其命令131

9.3.1shell的启动131

9.3.2命令的查询131

9.3.3shell常用的命令131

9.3.4shell的内部命令132

9.4shell命令的集成132

9.4.1元字符和文件名生成132

9.4.2管道和命令表133

9.4.3命令组合133

9.4.4命令替换134

9.4.5输入、输出重定向134

9.5shell变量135

9.5.1shell变量描述135

9.5.2用户自定义变量135

9.5.3位置变量137

9.5.4环境变量138

9.5.5预定义的特殊变量138

9.5.6变量替换138

9.5.7特殊字符的引用139

9.6shell的控制结构141

9.6.1条件与 test 命令141

9.6.2if 结构145

9.6.3case 结构146

9.6.4for 结构147

9.6.5while 结构147

9.6.6until 结构147

9.6.7循环体中其他命令147

9.6.8函数的定义和使用148

9.7shell的运行环境149

9.7.1局部变量149

9.7.2全局变量150

9.7.3局部变量和全局变量作用域151

9.7.4程序调试151

9.7.5shell程序的应用153

9.8shell应用实例154

9.9小结158

习题158

第3部分系 统 管 理

第10章Linux系统软件的获取和安装163

10.1硬件需求163

10.2Linux上可用的软件163

10.3Linux系统软件的获取途径164

10.4Linux的安装164

10.5软件包及模块的安装与加载166

10.6配置与创建内核168

10.7系统的引导与关闭169

10.7.1系统引导程序LILO169

10.7.2系统启动与关闭的相关脚本与命令170

10.8XLinux的安装示范171

10.8.1安装前的准备工作和安装171

10.8.2安装后的设置176

10.9小结177

习题177

第11章账号管理178

11.1了解账号管理178

11.2Linux系统中的归属关系模式179

11.3超级用户180

11.3.1root的权威性和危险性180

11.3.2root的登录方式180

11.3.3与root 环境变量相关的脚本文件181

11.4其他特殊用户182

11.5普通用户182

11.5.1增加普通用户182

11.5.2设置用户口令182

11.5.3删除用户183

11.5.4禁用用户184

11.5.5修改用户信息184

11.6用户组策略185

11.7账号相关的配置文件185

11.7.1passwd文件185

11.7.2shadow文件186

11.7.3group文件187

11.8小结188

习题188

第12章文件系统维护190

12.1Linux 的目录构造190

12.2了解文件系统的使用情况192

12.3如何安装和拆卸文件系统193

12.3.1文件系统的配置信息193

12.3.2特殊的文件系统194

12.3.3如何用命令安装和拆卸文件系统196

12.4如何创建、修复和格式化文件系统197

12.5如何限制普通用户的使用空间198

12.5.1quota的配置198

12.5.2quota的使用199

12.5.3其他的quota命令199

12.6小结200

习题200

第13章TCP/IP网络管理201

13.1网络概述201

13.2网络配置202

13.2.1以太网卡的安装202

13.2.2TCP/IP网络相关的概念203

13.2.3和网络相关的一些配置文件205

13.2.4用命令行方式配置TCP/IP网络208

13.3定位基本的网络故障和收集网络状态信息210

13.4基本网络服务的介绍213

13.4.1Web服务器213

13.4.2邮件系统213

13.4.3域名服务器213

13.5小结214

习题214

第14章备份与恢复215

14.1备份的重要性215

14.1.1选择备份介质215

14.1.2选择备份工具216

14.2备份策略和注意事项216

14.2.1备份类型216

14.2.2备份级别217

14.2.3备份的注意事项217

14.3常用备份命令218

14.4文件恢复219

14.5利用cron命令和脚本实现任务的自动化220

14.6小结221

习题221

第15章XWindow及Genie应用程序222

15.1XWindow 的工作原理222

15.2XWindow 的配置223

15.2.1建立XFree86系统223

15.2.2配置XFree86系统224

15.2.3XF86Config 文件225

15.3如何启动 XWindow系统228

15.4常用的窗口管理程序229

15.4.1什么是窗口管理器229

15.4.2GNOME230

15.5XLinux的系统配置应用程序Genie230

15.5.1Genie 简介230

15.5.2Genie 硬件设置231

15.5.3Genie网络设置232

15.5.4Genie系统设置234

15.5.5Genie动态设置项目236

15.6小结238

习题239

附录GPL声明240

参考文献254