《Linux系统分析与高级编程技术》求取 ⇩

第1章Linux简介1

1.1 Linux的起源1

1.2 自由软件基金会的GNU计划1

1.2 自由软件基金会的GNU计划1

1.1 Linux的起源1

第1章Linux简介1

第一篇 Linux系统介绍1

第一篇 Linux系统介绍1

1.3 Linux的发音2

1.4 Linux的特点2

1.4 Linux的特点2

1.3 Linux的发音2

1.6如何获得Linux3

1.6.2 从光盘获得Linux3

1.5 基本硬件要求3

1.6.1 从网上下载Linux3

1.5 基本硬件要求3

1.6如何获得Linux3

1.6.1 从网上下载Linux3

1.6.2 从光盘获得Linux3

1.7 涉及Linux的Web网址和新闻讨论组6

1.7 涉及Linux的Web网址和新闻讨论组6

1.8 Linux的不足之处7

1.8 Linux的不足之处7

第2章 外壳及常用命令8

2.1 登录和退出8

2.2 Linux系统的外壳8

2.1 登录和退出8

2.2 Linux系统的外壳8

第2章 外壳及常用命令8

2.3 外壳的常用命令9

2.3.2 联机帮助9

2.3.4 文件或目录处理9

2.3.3 远程登录9

2.3.1 更改帐号密码9

2.3 外壳的常用命令9

2.3.1 更改帐号密码9

2.3.3 远程登录9

2.3.4 文件或目录处理9

2.3.2 联机帮助9

2.3.7 移动或更改文件、目录名称10

2.3.5 改变工作目录10

2.3.6 复制文件10

2.3.7 移动或更改文件、目录名称10

2.3.8 建立新目录10

2.3.5 改变工作目录10

2.3.6 复制文件10

2.3.8 建立新目录10

2.3.9 删除目录11

2.3.10 删除文件11

2.3.12 查看文件内容11

2.3.11 列出当前所在的目录位置11

2.3.10 删除文件11

2.3.9 删除目录11

2.3.11 列出当前所在的目录位置11

2.3.12 查看文件内容11

2.3.13 分页查看文件内容11

2.3.14 查看目录所占磁盘容量11

2.3.15 文件传输11

2.3.15 文件传输11

2.3.13 分页查看文件内容11

2.3.14 查看目录所占磁盘容量11

2.3.16 文件权限的设定12

2.3.16 文件权限的设定12

2.3.19 改变文件或目录的最后修改时间13

2.3.18 改变文件或目录工作组所有权13

2.3.19 改变文件或目录的最后修改时间13

2.3.20 文件的链接13

2.3.20 文件的链接13

2.3.17 检查自己所属的工作组名称13

2.3.18 改变文件或目录工作组所有权13

2.3.17 检查自己所属的工作组名称13

2.3.24 文件打印输出14

2.3.25 一般文件的打印14

2.3.26 troff文件的打印14

2.3.24 文件打印输出14

2.3.27 打印机控制命令14

2.3.27 打印机控制命令14

2.3.25 一般文件的打印14

2.3.22 查寻文件或命令的路径14

2.3.26 troff文件的打印14

2.3.23 比较文件或目录的内容14

2.3.23 比较文件或目录的内容14

2.3.21 文件中字符串的查寻14

2.3.22 查寻文件或命令的路径14

2.3.21 文件中字符串的查寻14

2.3.28 进程控制15

2.3.28 进程控制15

2.3.29 外壳变量16

2.3.30 环境变量16

2.3.31 别名16

2.3.30 环境变量16

2.3.29 外壳变量16

2.3.31 别名16

2.3.32 历史命令17

2.3.33 文件的压缩17

2.3.34 管道命令的使用17

2.3.34 管道命令的使用17

2.3.33 文件的压缩17

2.3.32 历史命令17

2.3.36 查看系统中的用户18

2.3.37 改变用户名18

2.3.36 查看系统中的用户18

2.3.35 输入/输出控制18

2.3.35 输入/输出控制18

2.3.38 查看用户名18

2.3.37 改变用户名18

2.3.38 查看用户名18

2.3.39 查看当前系统上所有工作站的用户19

2.3.40 与某工作站上的用户交谈19

2.3.40 与某工作站上的用户交谈19

2.3.39 查看当前系统上所有工作站的用户19

2.3.41 检查远程系统是否正常19

2.3.42 电子邮件的使用简介19

2.3.41 检查远程系统是否正常19

2.3.42 电子邮件的使用简介19

3.1.3 IPX/SPX21

3.1 Linux支持的网络协议21

3.1.1 TCP/IP21

3.1.4 AppleTalk协议集21

3.1.4 AppleTalk协议集21

3.1.3 IPX/SPX21

3.1.2 TCP/IP版本621

第3章Linux系统的网络功能21

3.1 Linux支持的网络协议21

第3章Linux系统的网络功能21

3.1.2 TCP/IP版本621

3.1.1 TCP/IP21

3.1.5 广域网22

3.1.6 ISDN22

3.1.7 PPP.SLIP及PLIP22

3.2.2 Windows环境22

3.2.1 Machintosh环境22

3.2 Linux系统下的文件共享和打印共享22

3.1.9 ATM22

3.1.8 业余无线电22

3.2.2 Windows环境22

3.1.6 ISDN22

3.1.7 PPP.SLIP及PLIP22

3.1.8 业余无线电22

3.1.9 ATM22

3.2 Linux系统下的文件共享和打印共享22

3.2.1 Machintosh环境22

3.1.5 广域网22

3.2.4 UNIX环境23

3.3 Linux系统中的Internet/Intranet功能23

3.2.4 UNIX环境23

3.2.3 Novell环境23

3.3.1 邮件23

3.2.3 Novell环境23

3.3.1 邮件23

3.3 Linux系统中的Internet/Intranet功能23

3.3.3Web浏览器24

3.3.4 FTP服务器和客户机24

3.3.5 新闻服务24

3.3.6 域名系统24

3.3.7 DHCP和bootp24

3.3.8 NIS24

3.4 Linux系统下应用程序的远程执行24

3.3.2 Web服务器24

3.3.3Web浏览器24

3.4 Linux系统下应用程序的远程执行24

3.3.4 FTP服务器和客户机24

3.3.8 NIS24

3.3.5 新闻服务24

3.3.6 域名系统24

3.3.7 DHCP和bootp24

3.3.2 Web服务器24

3.4.3 X Window25

3.5 Linux系统的网络互连功能25

3.4.3 X Window25

3.4.2 远程命令25

3.4.1Telnet25

3.4.1Telnet25

3.4.2 远程命令25

3.5.2 网桥25

3.5 Linux系统的网络互连功能25

3.5.1 路由器25

3.5.3 IP伪装25

3.5.1 路由器25

3.5.3 IP伪装25

3.5.2 网桥25

3.5.6 流量限制器26

3.5.7 防火墙26

3.5.9 负载平衡26

3.5.8 端口下传26

3.5.6 流量限制器26

3.5.4 IP统计26

3.5.5 IP别名26

3.5.7 防火墙26

3.5.8 端口下传26

3.5.9 负载平衡26

3.5.5 IP别名26

3.5.4 IP统计26

25.2.2 L.cmds文件27

3.5.10 EQL27

3.5.11 代理服务器27

3.5.12 按需拨号27

3.5.13 管道、移动IP和虚拟个人网络27

3.6 Linux系统中的网络管理27

3.6.1 Linux系统下的网络管理应用程序27

3.6.1 Linux系统下的网络管理应用程序27

3.6 Linux系统中的网络管理27

3.5.13 管道、移动IP和虚拟个人网络27

3.5.12 按需拨号27

3.5.11 代理服务器27

3.5.10 EQL27

25.2.2 L.cmds文件27

3.6.2 SNMP28

3.7 企业级Linux网络28

3.7.3 冗余网络28

3.7.2 RAID28

3.7.1 高可用性28

3.7.3 冗余网络28

3.7.2 RAID28

3.7.1 高可用性28

3.7 企业级Linux网络28

3.6.2 SNMP28

第4章Linux系统管理简介29

4.1 root帐号29

4.2 启动和关闭系统29

4.2.1 从软盘启动29

4.2.2 使用LILO启动29

4.2.2 使用LILO启动29

4.2.1 从软盘启动29

4.2 启动和关闭系统29

4.1 root帐号29

第4章Linux系统管理简介29

4.3.1 挂接软盘30

4.3 挂接文件系统30

4.3.2 创建新的文件系统30

4.2.3 关闭Linux系统30

4.3.2 创建新的文件系统30

4.2.3 关闭Linux系统30

4.3 挂接文件系统30

4.3.1 挂接软盘30

4.4 检查文件系统31

4.5 使用文件作为交换区31

4.3.3 卸载文件系统31

4.4 检查文件系统31

4.3.3 卸载文件系统31

4.5 使用文件作为交换区31

4.6 系统和文件的备份32

4.6 系统和文件的备份32

4.7.4 设置登录信息33

4.7.2 使用维护磁盘33

4.7 设置系统33

4.7.1 设置系统名33

4.7.3 重新设置root帐号口令33

4.7.4 设置登录信息33

4.7.3 重新设置root帐号口令33

4.7.2 使用维护磁盘33

4.7.1 设置系统名33

4.7 设置系统33

5.1.1 创建外壳程序35

第二篇Linux高级语言及管理编程35

第5章 外壳编程35

5.1创建和运行外壳程序35

5.1.2 运行外壳程序35

5.1.2 运行外壳程序35

5.1.1 创建外壳程序35

5.1创建和运行外壳程序35

第5章 外壳编程35

第二篇Linux高级语言及管理编程35

5.2.1 给变量赋值36

5.2 使用外壳变量36

5.2 使用外壳变量36

5.2.1 给变量赋值36

5.2.2 读取变量的值37

5.2.3 位置变量和其他系统变量37

5.2.4 引号的作用37

5.2.4 引号的作用37

5.2.3 位置变量和其他系统变量37

5.2.2 读取变量的值37

5.3 数值运算命令38

5.3 数值运算命令38

5.4.1 if表达式40

5.4 条件表达式40

5.4 条件表达式40

5.4.1 if表达式40

5.4.2 case表达式41

5.4.2 case表达式41

5.5 循环语句42

5.5 循环语句42

5.5.2while语句43

5.5.1 for语句43

5.5.1 for语句43

5.5.2while语句43

5.6 shift命令44

5.5.3 until语句44

5.6 shift命令44

5.5.3 until语句44

5.7 select语句45

5.7 select语句45

5.8 repeat语句46

5.9 子函数46

5.8 repeat语句46

5.9 子函数46

6.3 文件、记录和字段48

6.1 gawk的主要功能48

6.2 如何执行gawk程序48

6.3 文件、记录和字段48

第6章 gawk语言编程48

6.1 gawk的主要功能48

6.2 如何执行gawk程序48

第6章 gawk语言编程48

6.4 模式和动作49

6.4 模式和动作49

6.6 内部函数50

6.5 比较运算和数值运算50

6.5 比较运算和数值运算50

6.6 内部函数50

6.6.1随机数和数学函数51

6.6.2 字符串的内部函数51

6.6.1随机数和数学函数51

6.6.2 字符串的内部函数51

6.7 字符串和数字52

6.6.3 输入输出的内部函数52

6.7 字符串和数字52

6.8 格式化输出52

6.8 格式化输出52

6.6.3 输入输出的内部函数52

6.9 改变字段分隔符54

6.10 元字符54

6.10 元字符54

6.9 改变字段分隔符54

6.11 调用gawk程序55

6.12 BEGIN和END55

6.12 BEGIN和END55

6.11 调用gawk程序55

6.13 变量56

6.13 变量56

6.14 内置变量56

6.14 内置变量56

6.15 控制结构57

6.15.1 if表达式57

6.15.2 while循环57

6.15 控制结构57

6.15.1 if表达式57

6.15.2 while循环57

6.17 用户自定义函数58

6.15.3 for循环58

6.15.4 next和exit58

6.16 数组58

6.17 用户自定义函数58

6.16 数组58

6.15.4 next和exit58

6.15.3 for循环58

6.18 几个实例59

6.18 几个实例59

7.4.1 标量60

7.3 初试Perl60

第7章 Perl语言编程60

7.1 什么是Perl60

7.2 Perl的现状60

7.4 Perl变量60

7.2 Perl的现状60

7.3 初试Perl60

7.4 Perl变量60

7.4.1 标量60

7.1 什么是Perl60

第7章 Perl语言编程60

7.4.2 数组63

7.4.2 数组63

7.4.3 相关数组65

7.5 文件句柄和文件操作65

7.4.3 相关数组65

7.5 文件句柄和文件操作65

7.6 循环结构66

7.6.2 判断运算66

7.6.2 判断运算66

7.6.1 foreach循环66

7.6 循环结构66

7.6.1 foreach循环66

7.6.4 while和until 循环67

7.6.3 for循环67

7.7 条件结构67

7.6.3 for循环67

7.6.4 while和until 循环67

7.7 条件结构67

7.8 字符匹配68

7.8 字符匹配68

7.9 替换和翻译69

7.9.1 替换69

7.9.1 替换69

7.9 替换和翻译69

7.9.2 翻译70

7.10 子过程70

7.10.1 子过程的定义70

7.10.2 参数70

7.10.3 返回值70

7.10.3 返回值70

7.10.2 参数70

7.10.1 子过程的定义70

7.10 子过程70

7.9.2 翻译70

7.11 Perl程序的完整例子71

7.11 Perl程序的完整例子71

第8章Linux内核简介73

8.1 系统初始化73

8.1 系统初始化73

第8章Linux内核简介73

第三篇 Linux系统内核分析73

第三篇 Linux系统内核分析73

8.2 系统运行73

8.2 系统运行73

8.3.3 执行程序74

8.3.2 创建和撤消进程74

8.3.1 进程的基本概念和系统的基本数据结构74

8.3 内核提供的各种系统调用74

8.3.3 执行程序74

8.3.2 创建和撤消进程74

8.3.1 进程的基本概念和系统的基本数据结构74

8.3 内核提供的各种系统调用74

8.4 存取文件系统75

8.4 存取文件系统75

9.1 什么是进程76

第9章 系统进程76

9.2 进程的结构76

9.2 进程的结构76

9.1 什么是进程76

第9章 系统进程76

9.3 进程调度78

9.3 进程调度78

9.4 进程使用的文件79

9.4 进程使用的文件79

9.5 进程使用的虚拟内存80

9.5 进程使用的虚拟内存80

9.7.3 形象时钟81

9.6 创建进程81

9.7 进程的时间和计时器81

9.7.1 实时时钟81

9.7.2 虚拟时钟81

9.7.3 形象时钟81

9.6 创建进程81

9.7 进程的时间和计时器81

9.7.1 实时时钟81

9.7.2 虚拟时钟81

9.8.1 ELF文件82

9.8.2 脚本文件82

9.8 程序的执行82

9.8.2 脚本文件82

9.8 程序的执行82

9.8.1 ELF文件82

10.1 内存管理的作用83

第10章 内存管理83

10.1 内存管理的作用83

第10章 内存管理83

10.2 虚拟内存的抽象模型83

10.2 虚拟内存的抽象模型83

10.3 按需装入页面84

10.3 按需装入页面84

10.5 共享虚拟内存85

10.6 存取控制85

10.4 交换85

10.4 交换85

10.6 存取控制85

10.5 共享虚拟内存85

10.7.1 缓冲区高速缓存86

10.7 高速缓存86

10.7.1 缓冲区高速缓存86

10.7.2 页面高速缓存86

10.7.3 交换高速缓存86

10.7.4 硬件高速缓存86

10.8 系统页面表86

10.7 高速缓存86

10.7.4 硬件高速缓存86

10.7.2 页面高速缓存86

10.7.3 交换高速缓存86

10.8 系统页面表86

10.9 页面的分配和释放87

10.9 页面的分配和释放87

10.10 内存映射88

10.9.2 页面的释放88

10.9.1 页面的分配88

10.10 内存映射88

10.9.2 页面的释放88

10.9.1 页面的分配88

10.11 请求调页89

10.12 页面高速缓存89

10.11 请求调页89

10.12 页面高速缓存89

10.13 内核交换守护进程90

10.13 内核交换守护进程90

11.1 信号机制91

11.1 信号机制91

第11章 进程间通信91

第11章 进程间通信91

11.2 管道机制92

11.2 管道机制92

11.3.1 信息队列93

11.3.1 信息队列93

11.3 System V IPC机制93

11.3 System V IPC机制93

11.3.2 信号量94

11.3.2 信号量94

11.3.3 共享内存96

11.3.3 共享内存96

12.2 PCI地址空间98

12.1 PCI系统98

第12章 PCI98

12.2 PCI地址空间98

12.1 PCI系统98

第12章 PCI98

12.3 PCI设置头99

12.3 PCI设置头99

12.5 PCI-ISA桥100

12.6 PCI-PCI桥100

12.4 PCI I/O和PCI内存地址100

12.4 PCI I/O和PCI内存地址100

12.5 PCI-ISA桥100

12.6 PCI-PCI桥100

12.7.1 Linux系统内核有关PCI的数据结构101

12.7 PCI初始化101

12.7 PCI初始化101

12.7.1 Linux系统内核有关PCI的数据结构101

12.7.2 PCI设备驱动程序102

12.7.2 PCI设备驱动程序102

12.7.3 PCI BIOS函数105

12.7.4 PCI Fixup105

12.7.3 PCI BIOS函数105

12.7.4 PCI Fixup105

13.1 中断106

13.2 可编程中断控制器106

第13章 中断和中断处理106

13.1 中断106

13.2 可编程中断控制器106

第13章 中断和中断处理106

13.3 初始化中断处理的数据结构107

13.3 初始化中断处理的数据结构107

13.4 中断处理108

13.4 中断处理108

14.1硬件设备的管理109

第14章 设备驱动程序109

第14章 设备驱动程序109

14.1硬件设备的管理109

14.3 直接内存存取110

14.3 直接内存存取110

14.2 轮询和中断110

14.2 轮询和中断110

14.5 设备驱动程序和内核之间的接口111

14.4 内存111

14.5 设备驱动程序和内核之间的接口111

14.4 内存111

14.5.1 字符设备112

14.5.1 字符设备112

14.6 硬盘113

14.5.2 块设备113

14.6 硬盘113

14.5.2 块设备113

14.6.3 SCSI硬盘115

14.6.1 IDE硬盘115

14.6.2 初始化IDE硬盘子系统115

14.6.1 IDE硬盘115

14.6.2 初始化IDE硬盘子系统115

14.6.3 SCSI硬盘115

14.6.4 初始化SCSI磁盘子系统116

14.6.4 初始化SCSI磁盘子系统116

14.6.5 传递块设备请求118

14.7 网络设备118

14.7.1 网络设备文件名118

14.7.2 总线信息118

14.7.2 总线信息118

14.7.1 网络设备文件名118

14.7 网络设备118

14.6.5 传递块设备请求118

14.7.3 网络接口标记119

14.7.4 协议信息119

14.7.5 初始化网络设备119

14.7.5 初始化网络设备119

14.7.4 协议信息119

14.7.3 网络接口标记119

15.1 Linux文件系统概述121

第15章 文件系统121

第15章 文件系统121

15.1 Linux文件系统概述121

15.2.1 ext2的索引节点122

15.2.1 ext2的索引节点122

15.2 ext2文件系统122

15.2 ext2文件系统122

15.2.3 ext2数据块组描述符124

15.2.2 ext2超级块124

15.2.2 ext2超级块124

15.2.3 ext2数据块组描述符124

15.2.5 在ext2文件系统中查找文件125

15.2.4 ext2中的目录125

15.2.4 ext2中的目录125

15.2.5 在ext2文件系统中查找文件125

15.2.6 改变ext2文件系统中文件的大小126

15.2.6 改变ext2文件系统中文件的大小126

15.3 VFS127

15.3 VFS127

15.3.1 VFS超级块128

15.3.1 VFS超级块128

15.3.3 登记文件系统129

15.3.2 VFS索引节点129

15.3.3 登记文件系统129

15.3.2 VFS索引节点129

15.3.4 挂接文件系统130

15.3.4 挂接文件系统130

15.3.5 在VFS中查找文件131

15.3.6 撤消文件系统131

15.3.6 撤消文件系统131

15.3.5 在VFS中查找文件131

15.3.7 VFS索引节点缓存132

15.3.8 VFS目录缓存132

15.3.7 VFS索引节点缓存132

15.3.8 VFS目录缓存132

15.4 缓冲区缓存133

15.4 缓冲区缓存133

15.5 /proc文件系统135

15.5 /proc文件系统135

第16章 网络系统136

16.1 TCP/IP网络简介136

第16章 网络系统136

16.1 TCP/IP网络简介136

16.2 TCP/IP网络的分层137

16.2 TCP/IP网络的分层137

16.3 BSD套接口138

16.3 BSD套接口138

16.4 INET套接口层140

16.4 INET套接口层140

16.4.2 给INET BSD套接口指定地址141

16.4.1 创建BSD套接口141

16.4.1 创建BSD套接口141

16.4.2 给INET BSD套接口指定地址141

16.4.4 监听INET BSD套接口142

16.4.3 在INET BSD套接口上创建连接142

16.4.4 监听INET BSD套接口142

16.4.3 在INET BSD套接口上创建连接142

16.4.5 接收连接请求143

16.5 IP层143

16.5.1 套接口缓冲区143

16.5.1 套接口缓冲区143

16.4.5 接收连接请求143

16.5 IP层143

16.5.3 发送IP数据包144

16.5.4 数据碎片144

16.5.2 接收IP数据包144

16.5.3 发送IP数据包144

16.5.4 数据碎片144

16.5.2 接收IP数据包144

16.6 地址解析协议145

16.6 地址解析协议145

17.1 Bottom Half处理147

第17章 系统内核机制147

17.1 Bottom Half处理147

第17章 系统内核机制147

17.2 任务队列148

17.2 任务队列148

17.3 计时器149

17.4 等待队列149

17.3 计时器149

17.4 等待队列149

17.5 信号量150

17.5 信号量150

第四篇 Linux系统高级编程151

第18章Linux内核模块编程151

18.1 一个简单程序Hello World151

18.1 一个简单程序Hello World151

第18章Linux内核模块编程151

第四篇 Linux系统高级编程151

18.2 设备文件152

18.2 设备文件152

18.3 /proc文件系统156

18.3 /proc文件系统156

18.4 使用/proc输入158

18.4 使用/proc输入158

18.5 与设备文件通信162

18.5 与设备文件通信162

18.6 启动参数169

18.6 启动参数169

18.7 系统调用170

18.7 系统调用170

18.8 阻塞进程172

18.8 阻塞进程172

18.9 替换printk177

18.9 替换printk177

18.10 调度任务178

18.10 调度任务178

19.2.1 基本概念181

19.2.1 基本概念181

19.2 半双[ UNIX管道181

19.1 进程间通信简介181

第19章 有关进程通信的编程181

第19章 有关进程通信的编程181

19.1 进程间通信简介181

19.2 半双[ UNIX管道181

19.2.2 使用C语言创建管道182

19.2.2 使用C语言创建管道182

19.2.3 创建管道的简单方法185

19.2.3 创建管道的简单方法185

19.2.4 使用管道的自动操作187

19.2.4 使用管道的自动操作187

19.3 命名管道188

19.3 命名管道188

19.3.1 基本概念188

19.3.2 创建FIFO188

19.2.5 使用半双工管道时的注意事项188

19.2.5 使用半双工管道时的注意事项188

19.3.2 创建FIFO188

19.3.1 基本概念188

19.3.3 FIFO操作189

19.3.3 FIFO操作189

19.3.5 SIGPIPE信号190

19.4 System V IPC190

19.4.1 基本概念190

19.3.4 FIFO的阻塞190

19.3.4 FIFO的阻塞190

19.4.1 基本概念190

19.4 System V IPC190

19.3.5 SIGPIPE信号190

19.4.2 消息队列基本概念191

19.4.2 消息队列基本概念191

19.4.3 系统调用msgget()194

19.4.3 系统调用msgget()194

19.4.4 系统调用msgsnd()195

19.4.4 系统调用msgsnd()195

19.4.5 系统调用msgctl()197

19.4.5 系统调用msgctl()197

19.4.6 一个msgtool的实例199

19.4.6 一个msgtool的实例199

19.5.1 基本概念201

19.5 使用信号量编程201

19.5.1 基本概念201

19.5 使用信号量编程201

19.5.2 系统调用semget()202

19.5.2 系统调用semget()202

19.5.3 系统调用semop()203

19.5.3 系统调用semop()203

19.5.4 系统调用semctl()204

19.5.4 系统调用semctl()204

19.5.5 使用信号量集的实例 :semtool205

19.5.5 使用信号量集的实例 :semtool205

19.6 共享内存209

19.6.1 基本概念209

19.6.2 系统内部用户数据结构shmid_ds209

19.6.2 系统内部用户数据结构shmid_ds209

19.6.1 基本概念209

19.6 共享内存209

19.6.3 系统调用shmget()210

19.6.3 系统调用shmget()210

19.6.5 系统调用shmctl()211

19.6.4 系统调用shmat()211

19.6.4 系统调用shmat()211

19.6.5 系统调用shmctl()211

19.6.7 使用共享内存的实例 :shmtool212

19.6.7 使用共享内存的实例 :shmtool212

19.6.6 系统调用shmdt()212

19.6.6 系统调用shmdt()212

20.2 一个简单的例子215

20.2 一个简单的例子215

20.1 线程的概念和用途215

第20章 高级线程编程215

20.1 线程的概念和用途215

第20章 高级线程编程215

20.3 线程同步217

20.3 线程同步217

20.4 使用信号量协调程序218

20.4 使用信号量协调程序218

20.5 信号量的实现220

20.5.1 Semaphore.h220

20.5.1 Semaphore.h220

20.5 信号量的实现220

20.5.2 Semaphore.c221

20.5.2 Semaphore.c221

21.4 数据结构225

21.4 数据结构225

第21章 Linux系统网络编程225

21.1 什么是套接口225

21.2 两种类型的Internet套接口225

21.3 网络协议分层225

21.3 网络协议分层225

21.2 两种类型的Internet套接口225

21.1 什么是套接口225

第21章 Linux系统网络编程225

21.5 IP地址和如何使用IP地址226

21.5 IP地址和如何使用IP地址226

21.5.2 bind()226

21.5.1 socket()226

21.5.2 bind()226

21.5.1 socket()226

21.5.3 connect()227

21.5.3 connect()227

21.5.5 accept()228

21.5.4 listen()228

21.5.5 accept()228

21.5.4 listen()228

21.5.6 send()和recv()229

21.5.6 send()和recv()229

21.5.7 sendto()和recvfrom()230

21.5.8 close()和shutdown()230

21.5.7 sendto()和recvfrom()230

21.5.8 close()和shutdown()230

21.5.10 gethostname()231

21.5.9 getpeername()231

21.5.10 gethostname()231

21.6 DNS231

21.6 DNS231

21.5.9 getpeername()231

21.7 客户机/服务器模式232

21.8 简单的数据流服务器程序232

21.7 客户机/服务器模式232

21.8 简单的数据流服务器程序232

21.9 简单的数据流客户机程序234

21.9 简单的数据流客户机程序234

21.10 数据报套接口235

21.10 数据报套接口235

21.11 阻塞237

21.11 阻塞237

22.1.1 一般的方法240

22.1 如何在C语言下使用I/O端口240

第22章 Linux I/O端口编程240

第22章 Linux I/O端口编程240

22.1 如何在C语言下使用I/O端口240

22.1.1 一般的方法240

22.1.2 另一个替代方法/dev/port241

22.3 高精确的时间241

22.1.2 另一个替代方法/dev/port241

22.3.1 延迟时间241

22.3.1 延迟时间241

22.3 高精确的时间241

22.3.2 时间的量测243

22.5一些有用的I/O端口243

22.5一些有用的I/O端口243

22.5.1 并行端口243

22.5.1 并行端口243

22.4 使用其他程序语言243

22.3.2 时间的量测243

22.4 使用其他程序语言243

22.5.2 游戏端口244

22.5.2 游戏端口244

22.5.3 串行端口245

22.5.3 串行端口245

第23章 系统管理员安全247

23.2 超级用户247

第五篇 Linux系统安全分析247

23.3 文件系统安全247

23.3.1 Linux文件系统概述247

23.3.1 Linux文件系统概述247

23.3 文件系统安全247

23.2 超级用户247

23.1 安全管理247

第23章 系统管理员安全247

第五篇 Linux系统安全分析247

23.1 安全管理247

23.3.2 设备文件248

23.3.2 设备文件248

23.3.4 安全考虑249

23.3.3 /etc/mknod命令249

23.3.3 /etc/mknod命令249

23.3.4 安全考虑249

23.3.6 secure程序250

23.3.5 find命令250

23.3.6 secure程序250

23.3.7 ncheck命令250

23.3.8 安装和拆卸文件系统250

23.3.5 find命令250

23.3.8 安装和拆卸文件系统250

23.3.7 ncheck命令250

23.4 作为root运行的程序251

23.4.1 启动系统251

23.3.9 系统目录和文件251

23.4 作为root运行的程序251

23.4.1 启动系统251

23.3.9 系统目录和文件251

23.4.2 init进程251

23.4.2 init进程251

23.4.3 进入多用户252

23.4.4 shutdown命令252

23.4.5 系统V的cron程序252

23.4.6 系统V版本2之后的cron程序252

23.4.6 系统V版本2之后的cron程序252

23.4.5 系统V的cron程序252

23.4.4 shutdown命令252

23.4.3 进入多用户252

23.4.7 /etc/profile253

23.5 /etc/passwd文件253

23.5.1 口令时效253

23.5.1 口令时效253

23.5 /etc/passwd文件253

23.4.7 /etc/profile253

23.5.2 UID和GID254

23.6 /etc/group文件254

23.7.1 增加用户254

23.7 增加、删除和移走用户254

23.6 /etc/group文件254

23.5.2 UID和GID254

23.7 增加、删除和移走用户254

23.7.1 增加用户254

23.8 安全检查255

23.8.1 记帐255

23.7.2 删除用户255

23.7.3 将用户移到另一个系统255

23.8 安全检查255

23.8.1 记帐255

23.7.2 删除用户255

23.7.3 将用户移到另一个系统255

23.8.2 其他检查命令256

23.8.3 安全检查程序的问题256

23.8.3 安全检查程序的问题256

23.8.2 其他检查命令256

23.8.4 系统泄密后怎么办257

23.8.4 系统泄密后怎么办257

23.9 加限制的环境258

23.9.1 加限制的外壳258

23.9.2 用chroot()限制用户258

23.9.2 用chroot()限制用户258

23.9.1 加限制的外壳258

23.9 加限制的环境258

23.11 物理安全259

23.10 小系统安全259

23.10 小系统安全259

23.11 物理安全259

23.12 用户意识260

23.12 用户意识260

23.13 系统管理员意识261

23.13 系统管理员意识261

23.13.1 保持系统管理员个人的登录安全261

23.13.2 保持系统安全261

23.13.2 保持系统安全261

23.13.1 保持系统管理员个人的登录安全261

24.1.2 进程控制263

24.1 系统子程序263

第24章 系统程序员安全263

24.1 系统子程序263

24.1.1 I/O子程序263

24.1.2 进程控制263

第24章 系统程序员安全263

24.1.1 I/O子程序263

24.1.3 文件属性264

24.1.3 文件属性264

24.1.4 UID和GID的处理265

24.2.1 标准I/O265

24.2 标准C程序库265

24.2.1 标准I/O265

24.2 标准C程序库265

24.1.4 UID和GID的处理265

24.2.2 /etc/passwd的处理266

24.2.2 /etc/passwd的处理266

24.2.3 /etc/group的处理267

24.2.3 /etc/group的处理267

24.2.4 加密子程序268

24.2.5 运行外壳268

24.3.1 需要考虑的安全问题268

24.3 编写安全的C程序268

24.2.4 加密子程序268

24.3 编写安全的C程序268

24.3.1 需要考虑的安全问题268

24.2.5 运行外壳268

24.3.3 编译、安装SUID/SGID程序的方法269

24.3.2 SUID/SGID程序指导准则269

24.3.3 编译、安装SUID/SGID程序的方法269

24.3.2 SUID/SGID程序指导准则269

24.4 root用户程序的设计270

24.4 root用户程序的设计270

25.1 UUCP系统概述272

25.1.1 UUCP命令272

25.1.2 uux命令272

第25章 Linux系统的网络安全272

第25章 Linux系统的网络安全272

25.1 UUCP系统概述272

25.1.1 UUCP命令272

25.1.2 uux命令272

25.2.1 USERFILE文件273

25.1.4 uuxqt程序273

25.1.3 uucico程序273

25.1.4 uuxqt程序273

25.2 UUCP的安全问题273

25.1.3 uucico程序273

25.2.1 USERFILE文件273

25.2 UUCP的安全问题273

25.2.3 uucp登录274

25.2.4 uucp使用的文件和目录274

25.2.4 uucp使用的文件和目录274

25.2.3 uucp登录274

25.3 HONEYDANBER UUCP275

25.3.1 HONEYDANBER UUCP与老UUCP的差别275

25.3.1 HONEYDANBER UUCP与老UUCP的差别275

25.3 HONEYDANBER UUCP275

25.3.2 登录名规则276

25.3.2 登录名规则276

25.3.3 MACHINE规则277

25.3.3 MACHINE规则277

25.3.4 组合MACHINE和LOGNAME规则278

25.3.5 uucheck命令278

25.3.6 网关278

25.3.4 组合MACHINE和LOGNAME规则278

25.3.5 uucheck命令278

25.3.6 网关278

25.3.7 登录文件检查279

25.4 其他网络279

25.4.1 远程作业登录279

25.3.7 登录文件检查279

25.4 其他网络279

25.4.1 远程作业登录279

25.5 通信安全280

25.4.2 NSC网络系统280

25.5 通信安全280

25.5.1 物理安全280

25.5.1 物理安全280

25.4.2 NSC网络系统280

25.5.2 加密281

25.5.2 加密281

25.5.3 用户身份鉴别282

25.5.3 用户身份鉴别282

25.6.1 确保NFS的安全283

25.6.1 确保NFS的安全283

25.6 SUN OS系统的网络安全283

25.6 SUN OS系统的网络安全283

25.6.2 NFS安全性方面的缺陷284

25.6.3 远程过程调用鉴别284

25.6.4 Linux鉴别机制284

25.6.4 Linux鉴别机制284

25.6.3 远程过程调用鉴别284

25.6.2 NFS安全性方面的缺陷284

25.6.5 DES鉴别系统285

25.6.5 DES鉴别系统285

25.6.6 公共关键字的编码286

25.6.7 网络实体的命名286

25.6.7 网络实体的命名286

25.6.6 公共关键字的编码286

28.6.9 遗留的安全问题287

25.6.8 DES鉴别系统的应用287

28.6.9 遗留的安全问题287

25.6.8 DES鉴别系统的应用287

25.6.11 启动和setuid程序引起的问题288

25.6.10 性能288

25.6.11 启动和setuid程序引起的问题288

25.6.10 性能288

25.6.12 小结289

25.6.12 小结289

第26章 Linux系统的用户安全性290

26.1 口令安全290

26.1 口令安全290

第26章 Linux系统的用户安全性290

26.2 文件许可权290

26.2 文件许可权290

26.4 umask命令291

26.3 目录许可291

26.4 umask命令291

26.5 设置用户ID和同组用户ID许可291

26.6 cp mv ln和cpio命令291

26.3 目录许可291

26.5 设置用户ID和同组用户ID许可291

26.6 cp mv ln和cpio命令291

26.7 su和newgrp命令292

26.7.1 su命令292

26.7.2 newgrp命令292

26.7 su和newgrp命令292

26.7.1 su命令292

26.8 文件加密292

26.7.2 newgrp命令292

26.8 文件加密292

26.9 其他安全问题293

26.9 其他安全问题293

26.9.1 用户的.Profile文件293

26.9.2 ls-a293

26.9.1 用户的.Profile文件293

26.9.2 ls-a293

26.9.5 UUCP和其他网络293

26.9.4 暂存文件和目录293

26.9.3 .exrc文件293

26.9.3 .exrc文件293

26.9.4 暂存文件和目录293

26.9.5 UUCP和其他网络293

26.9.6 特洛伊木马294

26.9.7 诱骗294

26.9.8 计算机病毒294

26.9.9 要离开自己已登录的终端294

26.9.10 智能终端294

26.9.11 断开与系统的连接294

26.9.11 断开与系统的连接294

26.9.10 智能终端294

26.9.9 要离开自己已登录的终端294

26.9.8 计算机病毒294

26.9.7 诱骗294

26.9.6 特洛伊木马294

26.10 保持帐户安全的要点295

26.9.12 cu命令295

26.10 保持帐户安全的要点295

26.9.12 cu命令295

27.1.1 X的特点297

27.1 X Window系统介绍297

第27章X Window系统的基本知识297

第六篇 X Window系统的内部结构和使用297

27.1.1 X的特点297

27.1 X Window系统介绍297

第27章X Window系统的基本知识297

第六篇 X Window系统的内部结构和使用297

27.1.2 什么是窗口系统298

27.1.2 什么是窗口系统298

27.1.4 X的产品299

27.1.5 MIT发行的X299

27.1.3 X发展的历史299

27.1.4 X的产品299

27.1.5 MIT发行的X299

27.1.3 X发展的历史299

27.2 X的基本结构302

27.2 X的基本结构302

27.2.1 X的基本元素303

27.2.1 X的基本元素303

27.2.2 服务程序和客户程序如何交互通信304

27.2.2 服务程序和客户程序如何交互通信304

27.2.3 X的网络概况306

27.2.3 X的网络概况306

27.3.1 管理界面 :窗口管理器307

27.3 从用户界面的角度概观X307

27.3.1 管理界面 :窗口管理器307

27.3 从用户界面的角度概观X307

27.3.3 其他系统角度309

27.3.2 应用程序界面和工具箱309

27.3.3 其他系统角度309

27.3.2 应用程序界面和工具箱309

27.4.1 术语310

27.4 术语和符号310

27.4 术语和符号310

27.4.1 术语310

27.4.2 符号311

27.4.2 符号311

27.5.1 启动X312

27.5 启动和关闭X312

27.5 启动和关闭X312

27.5.1 启动X312

27.5.2 执行X程序的方式313

27.5.2 执行X程序的方式313

27.5.3 关闭X314

27.5.3 关闭X314

27.6.3 基本窗口操作-uwm的菜单315

27.6.2 启动uwm315

27.6.1 什么是窗口管理器315

27.6 窗口管理器基础---uwm315

27.6.2 启动uwm315

27.6 窗口管理器基础---uwm315

27.6.1 什么是窗口管理器315

27.6.3 基本窗口操作-uwm的菜单315

27.6.5 重定窗口大小316

27.6.6 建立新窗口316

27.6.4 移动窗口316

27.6.4 移动窗口316

27.6.5 重定窗口大小316

27.6.6 建立新窗口316

27.6.7 管理屏幕空间318

27.6.7 管理屏幕空间318

27.7 使用X的网络设备320

27.6.8 中止应用程序窗口320

27.6.9 激活uwm菜单的其他方式320

27.7 使用X的网络设备320

27.6.9 激活uwm菜单的其他方式320

27.6.8 中止应用程序窗口320

27.7.1 指定远程终端机---display选项321

27.7.1 指定远程终端机---display选项321

27.7.2 实际使用远程的显示器322

27.7.3 控制存取显示器---xhost322

27.7.2 实际使用远程的显示器322

27.7.3 控制存取显示器---xhost322

27.8.1 选择xterm功能---菜单与命令行选项323

27.8 终端机模拟器-详细介绍xterm323

27.8 终端机模拟器-详细介绍xterm323

27.8.1 选择xterm功能---菜单与命令行选项323

27.8.2 滚动xterm屏幕324

27.8.2 滚动xterm屏幕324

27.8.4 剪贴文本325

27.8.3 记录与终端机的交互过程-写记录325

27.8.4 剪贴文本325

27.8.3 记录与终端机的交互过程-写记录325

27.8.5 使用Tektronix模拟功能326

27.8.5 使用Tektronix模拟功能326

27.8.8 其他xterm选项327

27.8.6 使用不同的字体327

27.8.7 使用颜色327

27.8.8 其他xterm选项327

27.8.7 使用颜色327

27.8.6 使用不同的字体327

27.8.9 设定终端机键盘328

27.8.9 设定终端机键盘328

第28章 实用程序和工具329

28.1实用程序329

28.1实用程序329

第28章 实用程序和工具329

28.2 保存、显示和打印屏幕图像330

28.2 保存、显示和打印屏幕图像330

28.3 使用X的应用程序332

28.3 使用X的应用程序332

28.3.1 文字编辑器-Xedit333

28.3.1 文字编辑器-Xedit333

28.4 示例和游戏程序336

28.4 示例和游戏程序336

28.4.1 找出通过随机迷宫的路径-maze336

28.4.2 担任鼠标指针的大眼睛-xeyes336

28.4.1 找出通过随机迷宫的路径-maze336

28.4.2 担任鼠标指针的大眼睛-xeyes336

28.3.2 邮件/信息处理系统---xmh336

28.3.2 邮件/信息处理系统---xmh336

28.7 显示信息和状态的程序337

28.7 显示信息和状态的程序337

28.4.3 智慧盘游戏---puzzle337

28.4.4 打印一个大X标志-xlogo337

28.4.5 跳动的多面体---ico337

28.4.6 动态几何图案-muncher与plaid337

28.4.4 打印一个大X标志-xlogo337

28.4.6 动态几何图案-muncher与plaid337

28.4.5 跳动的多面体---ico337

28.4.3 智慧盘游戏---puzzle337

28.7.1 列出X服务程序的特征---xdpyinfo338

28.7.2 获取有关窗口的信息338

28.7.1 列出X服务程序的特征---xdpyinfo338

28.7.2 获取有关窗口的信息338

28.7.3 观察X的事件-xev340

28.7.3 观察X的事件-xev340

29.1.1 字体初步341

第29章 定制X Window系统341

29.1 使用X的字体和颜色341

29.1.1 字体初步341

29.1 使用X的字体和颜色341

第29章 定制X Window系统341

29.1.2 字体命名342

29.1.2 字体命名342

29.1.4 保存字体和位置343

29.1.3 观察特定字体的内容-xfd343

29.1.4 保存字体和位置343

29.1.3 观察特定字体的内容-xfd343

29.1.5 例子 :在你的服务程序中增加新字体345

29.1.5 例子 :在你的服务程序中增加新字体345

29.1.6 使用X的颜色346

29.1.6 使用X的颜色346

29.2 定义和使用图形347

29.2 定义和使用图形347

29.2.1 系统图形程序库347

29.2.2 交互编辑图形---bitmap347

29.2.1 系统图形程序库347

29.2.2 交互编辑图形---bitmap347

29.2.3 编辑图形的其他方法349

29.2.3 编辑图形的其他方法349

29.2.4 定制根窗口-xsetroot349

29.2.4 定制根窗口-xsetroot349

29.3 定义应用程序的缺省选项---Resources350

29.3.1 什么是资源350

29.3 定义应用程序的缺省选项---Resources350

29.3.1 什么是资源350

29.3.2 XToolkit351

29.3.2 XToolkit351

29.3.3 管理资源-资源管理器353

29.3.3 管理资源-资源管理器353

29.3.4 资源的类型-如何指定值358

29.3.4 资源的类型-如何指定值358

29.4.1 在何处保存资源的缺省值359

29.4 实际使用资源359

29.4.1 在何处保存资源的缺省值359

29.4 实际使用资源359

29.4.2 在服务程序上保存缺省值---xrdb363

29.4.2 在服务程序上保存缺省值---xrdb363

29.4.3 常见的错误和修正366

29.4.3 常见的错误和修正366

29.5 定制键盘和鼠标367

29.5 定制键盘和鼠标367

29.5.1 实际使用转换368

29.5.1 实际使用转换368

29.5.2 转换---格式和规则374

29.5.2 转换---格式和规则374

29.5.3 转换规范中常见的问题377

29.5.3 转换规范中常见的问题377

29.6 键盘和鼠标---对应和参数379

29.6.1 键盘和鼠标映射-xmodmap379

29.6.1 键盘和鼠标映射-xmodmap379

29.6 键盘和鼠标---对应和参数379

29.6.2 键盘和鼠标参数设定-xset382

29.6.2 键盘和鼠标参数设定-xset382

29.7.1 uwm的新特征384

29.7 进一步介绍和定制uwm384

29.7 进一步介绍和定制uwm384

29.7.1 uwm的新特征384

29.7.2 定制uwm386

29.7.2 定制uwm386

29.8 显示器管理器---xdm390

29.8.1 需要做些什么390

29.8.1 需要做些什么390

29.8 显示器管理器---xdm390

29.8.2 xdm391

29.8.2 xdm391

29.8.3 xdm的更多信息392

29.8.3 xdm的更多信息392

29.8.4 uwm配置395

29.8.4 uwm配置395

附录A GCC使用介绍396

附录A GCC使用介绍396

附录B 安装X Window窗口系统410

附录B 安装X Window窗口系统410

1999《Linux系统分析与高级编程技术》由于是年代较久的资料都绝版了,几乎不可能购买到实物。如果大家为了学习确实需要,可向博主求助其电子版PDF文件(由周巍松等编著 1999 北京:机械工业出版社 出版的版本) 。对合法合规的求助,我会当即受理并将下载地址发送给你。

高度相关资料

UNIX高级编程技术(1994 PDF版)
UNIX高级编程技术
1994 上海:上海科学技术文献出版社
1992年度试题分析与解答:初级程序员级  程序员级  高级程序员级  系统分析员级(1994 PDF版)
1992年度试题分析与解答:初级程序员级 程序员级 高级程序员级 系统分析员级
1994
系统分析:理论与程序(1984 PDF版)
系统分析:理论与程序
1984
TURBO C2.0高级系统程序设计技术(1991 PDF版)
TURBO C2.0高级系统程序设计技术
1991 北京希望电脑公司
1990年度-1991年度试题分析与解答  初级程序员级、程序员级、高级程序员级、系统分析员级(1992 PDF版)
1990年度-1991年度试题分析与解答 初级程序员级、程序员级、高级程序员级、系统分析员级
1992 北京:清华大学出版社
1992年度试题分析与解答  初级程序员级  程序员级  高级程序员级  系统分析员级(1994 PDF版)
1992年度试题分析与解答 初级程序员级 程序员级 高级程序员级 系统分析员级
1994 北京:清华大学出版社
UNIX系统高级编程指南(1991 PDF版)
UNIX系统高级编程指南
1991 中国科学院希望高级电脑技术公司
DOS汉字系统高级技术(1994 PDF版)
DOS汉字系统高级技术
1994 天津:天津科学技术出版社
Linux系统管理(1999 PDF版)
Linux系统管理
1999 北京:中国水利水电出版社
系统分析员教程(1992 PDF版)
系统分析员教程
1992 北京:清华大学出版社
运筹学与工程系统分析(1986 PDF版)
运筹学与工程系统分析
1986 北京:中国建筑工业出版社
操作系统原理与Linux系统(1999 PDF版)
操作系统原理与Linux系统
1999 北京:人民邮电出版社
技术经济系统分析与设计(1994 PDF版)
技术经济系统分析与设计
1994 北京:中国科学技术出版社
局部网操作系统DOS高级技术分析(1988 PDF版)
局部网操作系统DOS高级技术分析
1988 北京:国防工业出版社
高级Windows编程技术(1999 PDF版)
高级Windows编程技术
1999 西安:西安交通大学出版社