《Linux教程 第2版》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:孟庆昌,牛欣源编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2007
  • ISBN:7121038900
  • 页数:316 页
图书介绍:本书是普通高等教育“十一五”国家级规划教材。本书全面、系统、由浅入深地介绍了Linux系统的概念、使用、原理、开发和管理等方面的内容。通过大量应用实例,循序渐进地引导读者学习Linux系统。全书共分10章,分别讲述Linux系统概述、系统安装和图形环境,常用命令,vi编辑器,shell编程,内核的功能和实现,常用开发工具,Linux环境编程,系统管理,网络应用和管理,嵌入式系统简介等。每章都有思考题。书后给出了实验大纲,供教学参考。还为选用本书做教材的教师免费提供电子教案。

第1章 Linux系统概述 1

1.1 计算机基础知识 1

1.1.1 硬件 1

1.1.2 软件 1

1.2 操作系统的功能 2

1.2.1 硬件控制 3

1.2.2 资源管理 3

1.2.3 用户接口 3

1.2.4 输入和输出处理 5

1.2.5 系统监控 5

1.2.6 通信 6

1.3 Linux系统的历史、现状和特点 6

1.3.1 Linux的历史 6

1.3.2 Linux的现状 6

1.3.3 Linux的特点 7

1.3.4 Linux的版本 8

1.3.5 Linux的发展优势与存在的问题 10

1.4 Linux系统安装 11

1.4.1 基本硬件需求 11

1.4.2 安装前的准备 11

1.4.3 利用PQMagic 8.0划分分区 14

1.4.4 安装过程 16

1.4.5 登录和退出系统 22

1.4.6 硬件检测和配置 24

1.5 安装工具软件和开发软件 26

1.6 Linux图形环境 27

1.6.1 X Window系统 27

1.6.2 GNOME桌面系统 29

1.6.3 KDE桌面系统 30

思考题 34

第2章 Linux常用命令 35

2.1 使用命令 35

2.1.1 进入shell界面 35

2.1.2 命令格式 36

2.1.3 输入命令 36

2.2 简单命令 37

2.3 文件概念和文件类型 38

2.3.1 文件系统概念 38

2.3.2 文件类型 39

2.4 文件操作命令 41

2.4.1 有关文件显示命令 41

2.4.2 匹配、排序及显示指定内容的命令 44

2.4.3 比较文件内容的命令 46

2.4.4 复制、删除和移动文件的命令 47

2.4.5 文件内容统计命令 49

2.5 目录及其操作命令 50

2.5.1 目录结构 50

2.5.2 创建和删除目录的命令 52

2.5.3 改变工作目录和显示目录内容的命令 54

2.5.4 链接文件的命令 56

2.5.5 改变文件或目录存取权限的命令 58

2.5.6 改变用户组和文件主的命令 62

2.6 联机帮助命令 63

2.6.1 man命令 63

2.6.2 help命令 64

2.7 有关进程管理的命令 64

2.7.1 ps命令 65

2.7.2 kill命令 67

2.7.3 sleep命令 68

2.8 有关DOS命令 68

思考题 68

第3章 文本编辑 70

3.1 vi的工作方式 70

3.1.1 命令方式 70

3.1.2 输入方式 70

3.1.3 ex转义方式 71

3.2 进入和退出vi 72

3.2.1 进入vi 72

3.2.2 退出vi 72

3.3 文本输入 73

3.3.1 插入命令 73

3.3.2 附加命令 73

3.3.3 打开命令 74

3.3.4 输入方式下光标移动 74

3.4 移动光标 75

3.5 文本修改 76

3.6 编辑文件 77

3.7 字符串检索 78

3.8 ex命令 79

3.8.1 命令定位 79

3.8.2 常用ex命令 80

思考题 81

第4章 Linux shell程序设计 82

4.1 shell概述 82

4.1.1 shell的特点和主要版本 82

4.1.2 shell程序示例 83

4.1.3 shell脚本的建立和执行 84

4.2 命令历史 85

4.2.1 显示历史命令 86

4.2.2 执行历史命令 86

4.2.3 配置历史命令环境 87

4.3 名称补全 88

4.4 别名 88

4.4.1 定义别名 88

4.4.2 取消别名 89

4.5 shell特殊字符 90

4.5.1 通配符 90

4.5.2 引号 91

4.5.3 输入/输出重定向符 93

4.5.4 注释、管道线和后台命令 96

4.5.5 命令执行操作符 97

4.5.6 成组命令 98

4.6 shell变量 99

4.6.1 用户定义的变量 100

4.6.2 数组 102

4.6.3 变量引用 103

4.6.4 输入/输出命令 104

4.6.5 位置参数 106

4.6.6 移动位置参数 108

4.6.7 预先定义的特殊变量 108

4.6.8 环境变量 110

4.6.9 环境文件 112

4.6.10 export语句与环境设置 113

4.7 参数置换变量 117

4.8 算术运算 119

4.9 控制结构 121

4.9.1 if语句 121

4.9.2 条件测试 122

4.9.3 case语句 126

4.9.4 while语句 127

4.9.5 until语句 128

4.9.6 for语句 129

4.9.7 break命令和continue命令 131

4.9.8 exit命令 132

4.9.9 select语句 132

4.10 函数 133

4.11 作业控制 135

4.11.1 jobs命令 135

4.11.2 kill命令 135

4.11.3 bg和fg命令 135

4.12 shell内置命令 136

4.13 shell脚本调试 138

4.13.1 解决环境设置问题 139

4.13.2 解决脚本错误 139

思考题 140

第5章 Linux内核简介 142

5.1 概述 142

5.2 进程管理 143

5.2.1 进程和线程的概念 144

5.2.2 进程的结构 146

5.2.3 对进程的操作 147

5.2.4 进程调度 148

5.2.5 shell基本工作原理 150

5.3 文件系统 151

5.3.1 ext2文件系统 152

5.3.2 虚拟文件系统 156

5.4 内存管理 160

5.4.1 请求分页机制 161

5.4.2 内存交换 164

5.5 进程通信 165

5.5.1 信号机制 165

5.5.2 管道文件 168

5.5.3 System V IPC机制 168

5.6 设备管理 169

5.6.1 设备管理概述 169

5.6.2 设备驱动程序和内核之间的接口 170

5.7 中断、异常和系统调用 172

5.7.1 中断处理 173

5.7.2 系统调用 173

5.8 网络系统 174

5.8.1 socket 174

5.8.2 网络分层结构 175

思考题 175

第6章 常用开发工具 177

6.1 gcc编译系统 177

6.1.1 文件名后缀 177

6.1.2 C语言编译过程 178

6.1.3 gcc命令行选项 179

6.2 gdb程序调试工具 183

6.2.1 启动gdb和查看内部命令 184

6.2.2 显示源程序和数据 185

6.2.3 改变和显示目录或路径 189

6.2.4 控制程序的执行 189

6.2.5 其他常用命令 192

6.2.6 应用示例 193

6.3 程序维护工具make 196

6.3.1 make的工作机制 196

6.3.2 使用变量 199

6.3.3 隐式规则 201

6.3.4 make命令常用选项 201

思考题 202

第7章 Linux环境编程 205

7.1 系统调用和库函数 205

7.1.1 系统调用 205

7.1.2 库函数 205

7.1.3 调用方式 206

7.2 文件操作 207

7.2.1 有关文件操作的系统调用 207

7.2.2 应用示例 209

7.3 进程控制 212

7.3.1 有关进程控制的系统调用 212

7.3.2 应用示例 213

7.4 进程通信 215

7.4.1 有关进程通信的函数 215

7.4.2 应用示例 217

7.5 内存管理 221

思考题 221

第8章 Linux系统管理 223

8.1 系统管理概述 223

8.2 用户和工作组管理 224

8.2.1 有关用户账号的文件 224

8.2.2 用户账号的创建和维护 227

8.2.3 用户磁盘空间限制及其实现 233

8.3 文件系统及其维护 235

8.3.1 分区 236

8.3.2 文件系统 240

8.3.3 Linux主要目录的内容 245

8.4 文件系统的后备 247

8.4.1 后备概述 247

8.4.2 后备策略 247

8.4.3 恢复后备文件 250

8.5 系统安全管理 250

8.5.1 安全管理 250

8.5.2 安全管理组成 251

8.5.3 用户密码和账号的管理 252

8.5.4 文件和目录权限的管理 253

8.5.5 系统日志 254

8.6 系统性能优化 256

8.6.1 磁盘I/O性能的优化 256

8.6.2 执行进程的调度 258

思考题 258

第9章 网络应用及管理 259

9.1 配置网络 259

9.1.1 配置调制解调器 259

9.1.2 配置网卡 261

9.1.3 网络互连 262

9.1.4 基本网络命令 263

9.2 电子邮件 265

9.2.1 电子邮件系统简介 265

9.2.2 配置邮件环境 267

9.3 网络文件系统NFS 272

9.3.1 NFS简介 272

9.3.2 NFS的配置及使用 273

9.4 网络管理 275

9.4.1 网络管理简介 275

9.4.2 SNMP 277

9.4.3 基于SNMP的管理应用程序 280

9.5 网络安全 281

9.5.1 网络安全简介 281

9.5.2 Linux安全问题及对策 284

9.5.3 网络安全工具 293

思考题 294

第10章 嵌入式操作系统简介 295

10.1 嵌入式系统概述 295

10.2 嵌入式操作系统概述 296

10.2.1 嵌入式软件系统的体系结构 296

10.2.2 嵌入式操作系统 297

10.3 实时内核及其实现 298

10.3.1 任务管理与调度 299

10.3.2 中断和时间管理 300

10.3.3 任务间同步、互斥与通信及其实现 301

10.3.4 内存管理和I/O管理 304

10.4 嵌入式操作系统实例介绍——μCLinux 306

思考题 309

附录A 实验大纲 310

实验一 Linux系统安装与简单配置 310

实验二 常用命令使用 311

实验三 vi编辑器 312

实验四 shell编程 313

实验五 常用开发工具 313

实验六 Linux环境编程 314

实验七 系统及网络管理 314

参考文献 316