图书介绍
UNIX平台下C语言编程PDF|Epub|txt|kindle电子书版本网盘下载
- 喻志虎编著 著
- 出版社: 北京:清华大学出版社
- ISBN:7302047952
- 出版时间:2001
- 标注页数:427页
- 文件大小:17MB
- 文件页数:441页
- 主题词:
PDF下载
下载说明
UNIX平台下C语言编程PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 UNIX基础1
1.1 登录2
1.2 shell3
1.3 文件和目录4
1.3.1 文件系统4
1.3.2 目录层次6
1.3.3 设备8
1.4 I/O10
1.4.1 文件描述符(file descriptor)10
1.4.2 I/O11
1.5 进程(process)14
1.5.1 什么是进程14
1.5.2 进程标识号14
1.5.3 一个进程控制的实例14
1.6.2 进程对信号的处理16
1.6.1 什么是信号16
1.6 信号(signal)16
1.6.3 一个关于信号的实例17
1.7 UNIX标准18
1.7.1 ANSIC18
1.7.2 POSIX23
1.7.3 XPG3/426
1.7.4 UNIX标准的未来27
第2章 文件系统与文件I/O29
2.1 文件系统构造30
2.1.1 第二代扩展文件系统(EXT2)30
2.1.2 索引节点(inode)32
2.1.3 超块(super block)34
2.1.4 组标志符35
2.1.5 目录和目录项35
2.1.6 文件定位37
2.1.7 改变文件系统中文件的大小37
2.1.8 虚拟文件系统(VFS)38
2.2 文件I/O40
2.2.1 文件描述符40
2.2.2 open函数40
2.2.3 create函数44
2.2.4 read函数45
2.2.5 write函数46
2.2.6 lseek函数47
2.2.7 close函数50
2.2.8 dup和dup2函数51
2.2.9 fcntl函数51
2.2.10 ioctl函数54
2.3 文件系统或I/O其他相关主题55
2.3.1 系统数据文件55
2.3.2 登录记帐59
2.3.3 系统标识59
2.3.4 时间和日期59
第3章 高级文件操作63
3.1 文件类型与文件模式64
3.1.1 文件类型64
3.1.2 文件模式64
3.2 目录项属性65
3.2.1 stat/fstat/lstat函数65
3.3 目录读取68
3.3.1 opendir/readdir/closedir函数68
3.3.2 rewinddir/seekdir/telldir/scandir函数69
3.4 文件和目录的访问许可70
3.4.1 access函数70
3.4.3 chmod/fchmod函数73
3.4.4 黏着位(sticky bit)74
3.4.5 chown/fchown/lchown函数74
3.5 目录及目录项操作75
3.5.1 truncate/ftruncate函数75
3.5.2 link/symlink函数76
3.5.3 unlink函数79
3.5.4 mkdir/rmdir/mknod函数80
3.5.5 remove/rename函数83
3.5.6 readlink函数84
3.5.7 chdir/fchdir/getcwd函数84
3.5.8 utime函数85
3.6 其他87
3.6.1 特殊设备文件87
3.6.2 sync和fsync函数88
3.6.3 mount和umount函数89
第4章 高级I/O91
4.1 直接I/O端口读写92
4.2 非阻塞I/O93
4.3 记录锁定95
4.3.1 概念95
4.3.2 fcntl锁95
4.3.3 锁的继承和释放98
4.3.4 建议锁与强制锁99
4.4 I/O多工102
4.4.1 基本概念102
4.4.2 select和poll函数103
4.5 内存映射109
4.5.1 基本概念109
4.5.2 mmap/unmmap函数109
第5章 进程113
5.1 基本概念114
5.1.1 进程的定义114
5.1.2 进程状态114
5.2 进程环境116
5.2.1 main函数116
5.2.2 命令行参数及popt库118
5.2.3 环境变量121
5.2.4 C程序的内存布局123
5.2.5 共享库124
5.2.6 内存分配126
5.2.7 程序的长跳转127
5.2.8 进程的资源限制129
5.3 进程控制130
5.3.1 基本概念130
5.3.2 进程创建133
5.3.3 进程终止137
5.3.4 进程同步138
5.3.5 进程运行141
5.3.6 system函数144
5.3.7 进程时间146
5.4 守护进程148
5.4.1 基本概念148
5.4.2 错误输出149
5.4.3 守护进程的建立151
第6章 信号153
6.1.2 信号的产生条件154
6.1.1 信号154
6.1 基本概念154
6.1.3 POSIX定义的信号155
6.1.4 可重入性和中断系统调用156
6.1.5 信号机制157
6.2 不可靠信号158
6.2.1 signal函数158
6.2.2 不可靠信号的问题160
6.3 可靠信号161
6.3.1 术语和原语161
6.3.2 信号集及其操作162
6.3.3 可靠信号系统调用163
6.4 与信号相关的系统调用171
6.4.1 kill系统调用171
6.4.2 pause系统调用172
6.4.3 alarm/setitimer系统调用173
6.4.4 abort系统调用175
6.4.5 system系统调用176
6.4.6 sleep系统调用177
第7章 进程间通信179
7.1 基本概念180
7.1.1 进程阻塞180
7.1.2 共享资源180
7.1.3 锁定180
7.2 管道180
7.2.1 什么是管道180
7.2.2 用C建立和使用管道182
7.2.3 有名管道188
7.3 文件与记录锁定191
7.3.1 基本概念191
7.3.2 System V的咨询锁定192
7.3.3 BSD的咨询锁定193
7.3.4 其他锁技术195
7.4.1 概述199
7.4 System V IPC199
7.4.2 相关命令200
7.5 消息队列200
7.5.1 基础200
7.5.2 消息队列函数202
7.5.3 实例208
7.6 信号量211
7.6.1 基础211
7.6.2 信号量函数214
7.6.3 实例218
7.7 共享内存224
7.7.1 基础224
7.7.2 相关函数224
7.7.3 实例226
7.7.4 综合实例229
第8章 Berkeley Socket241
8.1.1 结构模型242
8.1 TCP/IP协议简述242
8.1.2 IP协议243
8.1.3 TCP和UDP协议245
8.2 Socket基础245
8.2.1 Socket的历史245
8.2.2 Socket的功能246
8.2.3 Socket类型247
8.2.4 Socket描述符249
8.2.5 转换函数249
8.3 基本Socket调用250
8.3.1 Socket函数250
8.3.2 conncet函数252
8.3.3 bind函数254
8.3.4 listen函数255
8.3.5 accept函数256
8.3.6 send和sendto函数257
8.3.7 recv和recvfrom函数258
8.3.8 close函数259
8.3.9 shutdown函数259
8.3.10 read和write函数260
8.3.11 gethostbyaddr等函数260
8.3.12 inet_aton等函数262
8.3.13 getprotoent函数263
8.3.14 getservbyname函数265
8.3.15 getsockopt和setsockopt函数267
8.3.16 poll函数270
8.3.17 select函数271
8.4 常用报文头结构272
8.4.1 IP272
8.4.2 TCP274
8.4.3 UDP274
8.4.4 ICMP275
8.5.1 获得本机IP276
8.5.2 如何使用DNS277
8.5.3 文件流方式278
8.5.4 读取一行语句279
8.5.5不定长参数280
8.5.6 以Daemon方式运行281
8.5.7 端口重用281
8.5.8 用户登录及权限设置282
8.5.9 路由跟踪283
8.6 Client/Server模式303
8.6.1 基本知识303
8.6.2 程序结构308
8.6.3 应用实例分析312
第9章 多线程编程323
9.1.1 术语定义324
9.1.2 多线程的优点324
9.1 基础知识324
9.1.3 多线程结构325
9.1.4 多线程的标准327
9.2 多线程编程328
9.2.1 线程库328
9.2.2 创建线程(基本篇)330
9.2.3 获取线程号和放弃执行331
9.2.4 挂起或继续执行线程331
9.2.5 向线程发信号332
9.2.6 设置本线程的信号掩模332
9.2.7 终止线程333
9.2.8 等待线程结束333
9.2.9 简单的例程334
9.2.10 维护线程专有数据335
9.2.11 创建线程(高级特性)339
9.2.12 获得最小堆栈341
9.2.13 设置线程的同时性等级341
9.2.14 获取或设定线程的优先级342
9.2.15 线程调度343
9.3 同步对象编程344
9.3.1 互斥锁344
9.3.2 条件变量350
9.3.3 多读单写锁358
9.3.4 信号灯361
9.3.5 进程间同步366
第10章 脚本编程369
10.2 Perl变量370
10.2.1 标量变量370
10.1 Perl概述370
10.2.2 数组373
10.2.3 关联数组374
10.3.1 赋值(Assignment)运算符376
8.5 socket实例分析376
10.3 Perl的运算符376
10.3.2 算术(Arithmetic)运算符377
10.3.3 数值(Numeric Values)关系运算符377
10.3.4 字符串(String Values)关系运算符377
10.3.5 逻辑(Logical)运算378
10.3.6 其他常用的运算符379
10.3.7 常用的文件数据(File test)运算符379
10.4.1 从STDIN输入380
10.4.2 从<>输入380
10.4 基本输入输出380
10.4.3 向STDOUT输出381
10.5 控制结构381
10.5.1 选择性控制结构381
10.5.2 循环性控制结构385
10.6 常规表达式391
10.7 函数398
10.7.1 用户函数398
10.7.2 常用系统函数401
附录A selfdef.h头文件411
附录B 编译和调试415