图书介绍
64位Linux操作系统与应用实例PDF|Epub|txt|kindle电子书版本网盘下载
![64位Linux操作系统与应用实例](https://www.shukui.net/cover/24/31435993.jpg)
- 赵敏哲主编 著
- 出版社: 北京:机械工业出版社
- ISBN:7111084497
- 出版时间:2001
- 标注页数:360页
- 文件大小:21MB
- 文件页数:370页
- 主题词:
PDF下载
下载说明
64位Linux操作系统与应用实例PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 概论1
1.1 现代操作系统1
1.1.1 操作系统的概念1
1.1.2 操作系统的分类2
1.1.2.1 批处理操作系统2
1.1.2.2 分时操作系统2
1.1.2.3 实时操作系统3
1.1.2.4 网络操作系统和分布式操作系统3
1.1.2.5 通用操作系统3
1.1.2.6 个人操作系统3
1.1.3 操作系统的功能4
1.1.3.1 处理机管理4
1.1.3.2 存储管理4
1.1.3.3 文件管理4
1.1.3.4 设备管理4
1.1.3.5 用户接口5
1.1.3.6 网络管理5
1.1.4 操作系统的结构5
1.1.4.1 整体式模型5
1.1.4.2 层次式模型5
1.1.4.3 客户/服务器模型5
1.2 Linux系统概论6
1.2.1 Linux发展史6
1.2.1.1 Linux的起源6
1.2.1.2 Linux的版本7
1.2.2 Linux的特点7
1.2.3 自由软件基金会及GNU计划8
1.3 Linux的发展趋势8
1.3.1 嵌入式Linux9
1.3.2 桌面Linux:32位Linux9
1.3.2.1 Red Hat Linux9
1.3.2.2 XteamLinux10
1.3.3 服务器Linux:64位Linux10
1.3.3.1 64位计算技术10
1.3.3.2 64位Linux:Penguin64中文Linux11
1.4 小结11
第2章 Linux基础13
2.1 Linux系统结构及文件组织13
2.1.1 Linux系统结构13
2.1.2 Linux源文件组织13
2.2 系统启动和初始化14
2.2.1 内核引导14
2.2.1.1 init和inittab14
2.2.1.2 系统的运行级别16
2.2.2 关闭系统17
2.3 文件系统操作17
2.3.1 文件系统类型17
2.3.2 加载文件系统18
2.3.3 卸载文件系统18
2.3.4 创建文件系统19
2.4 常用命令19
2.4.1 用户帐号管理19
2.4.1.1 创建用户帐号19
2.4.1.2 修改用户帐号20
2.4.1.3 删除和查封帐号20
2.4.1.4 几个和用户相关的命令20
2.4.2 基本目录和文件操作20
2.4.3 用vi编辑文件21
2.4.4 进程控制22
2.4.5 网络命令及其他22
2.5 Shell编程22
2.5.1 创建和执行Shell脚本文件23
2.5.1.1 执行Shell脚本文件23
2.5.1.2 创建脚本文件23
2.5.2 变量及符号23
2.5.2.1 变量23
2.5.2.2 符号24
2.5.3 表达式24
2.5.4 控制语句25
2.5.5 实例26
2.6 GNU C编程27
2.6.1 使用gcc编译和链接27
2.6.2 使用make和makefile实现自动编译28
2.6.2.1 简单的makefile文件28
2.6.2.2 使用make命令29
2.6.3 gdb调试工具29
2.6.3.1 gdb简介29
2.6.3.2 gdb的命令29
2.6.4 其他调试工具32
2.6.4.1 Calls32
2.6.4.2 cproto32
2.6.4.3 indent32
2.7 小结32
第3章 Linux进程管理33
3.1 现代操作系统的进程模型33
3.1.1 程序的并发执行33
3.1.2 进程模型34
3.1.2.1 进程的创建及组织34
3.1.2.2 进程的状态34
3.1.2.3 操作系统的进程模型35
3.1.3 进程的描述35
3.1.3.1 进程控制块36
3.1.3.2 处理机上下文和进程上下文36
3.1.4 Linux的进程37
3.1.4.1 task_struct数据结构37
3.1.4.2 Linux进程状态40
3.2 Linux的进程控制41
3.2.1 进程的创建fcxk41
3.2.1.1 fork系统调用41
3.2.1.2 vfork调用43
3.2.1.3 实例44
3.2.2 进程的执行exec46
3.2.3 进程的等待wait49
3.2.3.1 wait函数49
3.2.3.2 waitpid函数49
3.2.3.3 实例50
3.2.4 进程的结束exit54
3.3 进程调度55
3.3.1 进程调度的原理55
3.3.1.1 调度的时机56
3.3.1.2 调度的处理过程56
3.3.1.3 调度的算法57
3.3.2 Linux的进程调度58
3.3.2.1 调度的时机58
3.3.2.2 调度策略59
3.3.2.3 调度程序源码分析60
3.4 进程通信66
3.4.1 进程的相互制约66
3.4.1.1 进程的互斥67
3.4.1.2 进程的同步68
3.4.1.3 Linux的进程通信机制69
3.4.2 信号Signals69
3.4.2.1 信号机制69
3.4.2.2 信号的处理函数71
3.4.2.3 实例73
3.4.2.4 信号集及其处理74
3.4.3 管道77
3.4.3.1 管道(Pipe)实现机制78
3.4.3.2 管道(Pipe)实例78
3.4.3.3 创建管道(Pipe)的简单方法82
3.4.3.4 命名管道(FIFO)85
3.4.4 System V的进程通信机制90
3.4.4.1 IPC对象90
3.4.4.2 IPC命令91
3.4.5 信号量Semaphore92
3.4.5.1 信号量机制92
3.4.5.2 系统调用93
3.4.5.3 编程实例96
3.4.6 消息队列Message Queues100
3.4.6.1 消息队列机制100
3.4.6.2 系统调用101
3.4.6.3 编程实例103
3.4.7 共享内存Shared Memory113
3.4.7.1 共享内存机制113
3.4.7.2 编程实例115
3.5 Linux的线程123
3.5.1 线程的概念124
3.5.1.1 与进程的关系124
3.5.1.2 编程初步125
3.5.2 线程的互斥与同步127
3.5.2.1 用信号量实现同步128
3.5.2.2 用互斥量实现互斥130
3.5.3 多线程编程132
3.6 小结133
第4章 Linux存储管理134
4.1 存储管理概述134
4.1.1 存储管理的基本概念135
4.1.2 物理内存和虚拟内存136
4.1.3 分页与分段式内存管理138
4.2 Linux内存管理体系结构142
4.2.1 基于硬件的基本抽象概念142
4.2.1.1 物理内存设备142
4.2.1.2 地址空间143
4.2.1.3 地址映射和地址转换硬件144
4.2.2 虚拟内存管理和分页机制145
4.2.2.1 Linux的虚拟存储管理145
4.2.2.2 页目录和页表147
4.2.2.3 页的分配和回收148
4.2.2.4 内存映射149
4.2.2.5 缺页中断149
4.2.2.6 交换机制150
4.2.2.7 交换设备153
4.2.3 系统中的缓存154
4.3 内存的分配策略154
4.3.1 分配和回收154
4.3.1.1 分配策略154
4.3.1.2 分配与释放操作155
4.3.1.3 相关函数156
4.3.2 进程与内存157
4.3.2.1 进程的创建和执行157
4.3.2.2 相关函数159
4.4 小结159
第5章 Linux文件系统160
5.1 文件管理概述160
5.1.1 文件与文件系统160
5.1.1.1 文件的定义160
5.1.1.2 文件的操作160
5.1.1.3 文件系统的功能160
5.1.2 文件系统的实现162
5.1.2.1 文件的逻辑结构162
5.1.2.2 文件的物理结构163
5.1.2.3 文件存储空间管理164
5.1.2.4 文件目录管理165
5.1.2.5 文件的安全设计165
5.2 Linux文件系统概述166
5.2.1 文件的用户接口166
5.2.1.1 文件的类型166
5.2.1.2 文件描述符167
5.2.2 Linux文件系统的框架168
5.3 ext2文件系统168
5.3.1 ext2文件系统的特点168
5.3.2 ext2文件的逻辑结构与物理结构169
5.3.3 ext2文件系统存储空间的管理171
5.3.3.1 ext2文件系统的物理存储空间171
5.3.3.2 ext2文件系统的超级块172
5.3.3.3 ext2文件系统的组描述符175
5.3.3.4 ext2文件系统空闲块的分配175
5.3.4 ext2文件系统目录文件的实现176
5.3.4.1 ext2目录文件的结构176
5.3.4.2 文件的查询177
5.3.4.3 文件的共享177
5.4 VFS179
5.4.1 VFS的超级块和索引节点180
5.4.1.1 VFS的超级块181
5.4.1.2 VFS的inode182
5.4.2 对VFS的操作184
5.4.2.1 打开文件184
5.4.2.2 注册安装文件系统185
5.4.3 Linux文件系统的缓冲机制186
5.4.3.1 VFS索引节点缓存186
5.4.3.2 VFS的目录缓存187
5.4.3.3 缓冲区缓存(Buffer Cache)187
5.5 proc文件系统189
5.6 Linux文件系统调用及应用实例189
5.6.1 文件的打开和关闭189
5.6.1.1 open系统调用189
5.6.1.2 close系统调用191
5.6.1.3 应用实例191
5.6.2 文件的读写192
5.6.2.1 read系统调用193
5.6.2.2 write系统调用193
5.6.2.3 应用实例194
5.6.3 文件的随机存取196
5.6.3.1 lseek系统调用196
5.6.3.2 应用实例196
5.6.4 文件的保护和控制197
5.6.4.1 chown和chmod系统调用197
5.6.4.2 umask系统调用199
5.6.4.3 fcntl系统调用199
5.6.4.4 应用实例201
5.6.5 目录文件管理209
5.6.5.1 mkdir,rmdir系统调用209
5.6.5.2 chdir系统调用210
5.6.5.3 Link,unlink210
5.6.5.4 应用实例210
5.6.6 文件信息查询211
5.6.6.1 stat,fstat,lstat211
5.6.6.2 应用实例212
5.7 小结216
第6章 设备管理217
6.1 设备管理概述217
6.1.1 设备的分类和功能217
6.1.2 设备管理的实现218
6.1.2.1 总线概述218
6.1.2.2 数据传送方式219
6.1.2.3 缓冲技术221
6.1.2.4 设备驱动程序222
6.1.2.5 SPARC机中设备管理初始化过程222
6.2 Linux设备管理概述223
6.2.1 Linux中总线的使用225
6.2.1.1 PCI总线概述225
6.2.1.2 PCI总线的地址管理226
6.2.1.3 Linux系统中有关PCI的操作227
6.2.2 中断和DMA228
6.2.2.1 中断228
6.2.2.2 计时机制的使用230
6.2.2.3 DMA230
6.2.3 内存管理231
6.2.3.1 设备内存地址的分类232
6.2.3.2 设备内存的使用和分配232
6.2.3.3 用户空间和内核空间数据传递233
6.3 Linux设备驱动程序框架234
6.3.1 设备驱动程序分类234
6.3.2 设备开关表234
6.3.3 驱动程序入口点236
6.4 Linux设备的I/O调用236
6.4.1 设备文件236
6.4.2 Linux文件系统对设备文件的处理237
6.4.3 字符设备I/O237
6.4.4 块设备I/O238
6.5 中文Linux核心技术238
6.5.1 汉字处理的基本原理238
6.5.1.1 基本差异239
6.5.1.2 汉字处理的需求239
6.5.1.3 中文Linux对汉字的支持240
6.5.2 相关设备结构241
6.5.2.1 显示机制241
6.5.2.2 Framebuffer242
6.5.3 Linux内核汉字技术243
6.5.3.1 实现机制243
6.5.3.2 核心汉字支持细节介绍244
6.6 Linux系统设备管理应用实例245
6.6.1 字符设备驱动程序的实现245
6.6.1.1 字符设备结构245
6.6.1.2 驱动程序入口点246
6.6.1.3 字符设备驱动程序的安装248
6.6.1.4 实例248
6.6.2 块设备驱动程序的实现254
6.6.2.1 块设备的结构254
6.6.2.2 驱动程序入口点254
6.6.2.3 相关问题257
6.7 小结257
第7章 Linux网络系统258
7.1 概述258
7.1.1 网络协议258
7.1.1.1 ISO/OSI网络模型259
7.1.1.2 TCP/IP协议261
7.1.2 BSD Socket266
7.1.3 网络设备267
7.2 网络设备接口268
7.2.1 核心层—网络驱动268
7.2.1.1 层次结构268
7.2.1.2 网络设备初始化273
7.2.1.3 网络协议绑定275
7.2.2 核心层—灵活的网络机制277
7.2.2.1 网络虚拟设备277
7.2.2.2 IP伪装279
7.2.2.3 防火墙、路由282
7.2.2.4 其他新特性283
7.2.2.5 IPv6简介284
7.3 系统层—网络服务系统机制284
7.3.1 网络守护进程285
7.3.2 INETD285
7.3.2.1 INETD概述285
7.3.2.2 INETD的机制286
7.3.2.3 INETD配置说明286
7.4 网络编程287
7.4.1 网络通信编程要点287
7.4.1.1 TCP协议传输中的状态288
7.4.1.2 UDP协议传输过程289
7.4.1.3 网络程序的设计290
7.4.1.4 网络编程中的重要函数290
7.4.2 客户端编程293
7.4.2.1 面向连接的客户程序293
7.4.2.2 非面向连接的客户程序294
7.4.3 服务器端编程294
7.4.3.1 面向连接的服务器端通信程序295
7.4.3.2 非面向连接的服务器296
7.5 网络应用297
7.5.1 Internet应用297
7.5.1.1 Sendmail297
7.5.1.2 DNS298
7.5.1.3 Web Server、FTP等298
7.5.1.4 Ipchains298
7.5.2 群组服务器应用298
7.5.2.1 Appleralk299
7.5.2.2 IPX/SPX299
7.5.2.3 SMB299
7.6 小结300
第8章 应用实例301
8.1 认识Linux系统301
8.1.1 目的301
8.1.2 要求301
8.1.3 内容301
8.2 Shell编程初步301
8.2.1 目的301
8.2.2 要求301
8.2.3 内容301
8.3 简单C语言编程实验302
8.3.1 目的302
8.3.2 要求303
8.3.3 内容303
8.4 Linux一进程管理303
8.4.1 目的303
8.4.2 要求303
8.4.3 内容303
8.5 Linux进程管理二305
8.5.1 目的305
8.5.2 要求305
8.5.3 内容305
8.6 Linux线程314
8.6.1 目的314
8.6.2 要求314
8.6.3 内容314
8.7 Linux存储管理322
8.7.1 目的322
8.7.2 要求322
8.7.3 内容322
8.8 Linux文件管理325
8.8.1 目的325
8.8.2 要求325
8.8.3 内容325
8.9 Linux设备管理333
8.9.1 目的333
8.9.2 要求334
8.9.3 内容334
8.10 Linux网络管理345
8.10.1 目的345
8.10.2 要求346
8.10.3 内容346
8.11 综合实例352
8.11.1 目的352
8.11.2 要求352
8.11.3 内容352
附录353
参考文献360