`

Unix + OS books

    博客分类:
  • OS
阅读更多

linux下fork的运行机制

http://www.cnblogs.com/leoo2sk/archive/2009/12/11/talk-about-fork-in-linux.html

Linux下编程为什么多用进程少用线程

http://andylin02.iteye.com/blog/693103


国外计算机科学经典教材•UNIX原理与应用(第4版)

http://www.tupwk.com.cn/cata/viewbook.asp?id=1655

http://www.ebookcn.com/book/146132#download

点击放大 定价:¥78.00

责任编辑:王  军  王  婷
装帧设计:孔祥丰
责任校对:成凤进
责任印制: 
出版发行:清华大学出版社                   地    址:北京清华大学学研大厦A座  
         &nbsphttp://www.tup.com.cn            邮    编:100084
         &nbspc-service@tup.tsinghua.edu.cn
          社 总 机:010-62770175           邮购热线:010-62786544
          投稿咨询:010-62772015           客户服务:010-62776969
印 刷 者: 
装 订 者:
经    销:全国新华书店
开    本:185×260    印   张:41.5    字   数:1016千字
版    次:2008年1月第1版     印   次:2008年1月第1次印刷
印    数:1~4000
定    价:78.00元

 

 

目    录


第Ⅰ部分  初  级  篇
第1章  入门    3
1.1  什么是操作系统    4
1.2  UNIX操作系统    5
1.3  了解自己的机器    5
1.4  一个简单的会话过程    7
1.4.1  用账号和口令登录    7
1.4.2  命令    9
1.4.3  显示日期和时间的命令date    9
1.4.4  两个重要的事实    10
1.4.5  清屏命令——tput    10
1.4.6  日历命令——cal    10
1.4.7  检查当前用户命令——who    11
1.4.8  查看进程命令——ps    12
1.4.9  文件列表命令——ls    12
1.4.10  把输出重定向到文件    13
1.4.11  统计文件的行数
命令——wc    13
1.4.12  命令之间的导向作用    14
1.4.13  shell指令的编程特性    14
1.4.14  退出命令——exit    14
1.5  UNIX简史    15
1.5.1  UNIX的BSD版    15
1.5.2  UNIX的其他版本    16
1.5.3  Internet时代    16
1.5.4  来自Windows的挑战    17
1.6  Linux与GNU    17
1.7  小结    17
第2章  UNIX的体系结构与命令用法    20
2.1  UNIX的系统结构    21
2.1.1  任务分工——内核和壳    21
2.1.2  文件与进程    22
2.1.3  系统调用    23
2.2  UNIX系统的主要特性    23
2.2.1  UNIX是一个多用户系统    23
2.2.2  UNIX是一个多任务系统    24
2.2.3  UNIX系统采用积木构建法    24
2.2.4  UNIX的工具包    25
2.2.5  模式匹配    25
2.2.6  编程工具    25
2.2.7  帮助文档    26
2.3  POSIX和单一UNIX规范    26
2.4  定位命令文件    27
2.5  内部命令与外部命令    28
2.6  命令格式    28
2.6.1  可选项    29
2.6.2  文件名参数    30
2.6.3  例外情形    30
2.7  命令的灵活使用    31
2.7.1  组合命令    31
2.7.2  命令自动换行与多行命令    31
2.7.3  在前一个命令结束之前输入
命令    32
2.8  浏览在线帮助文档的man
命令    32
2.9  man文档的组成    34
2.9.1  man帮助页的组成    35
2.9.2  利用man文档了解man的
用法    35
2.10  利用man -k、apropos和
whatis命令得到的帮助    36
2.11  出错时的处理    37
2.12  小结    40
第3章  通用命令介绍    43
3.1  日历命令——cal    44
3.2  显示系统日期命令——date    45
3.3  回显命令——echo    45
3.4  用printf命令取代echo命令    47
3.5  计算器命令——bc    48
3.6  会话过程记录命令——script    49
3.7  电子邮件基础    50
3.8  万能的邮件处理
工具——mailx    51
3.8.1  发送邮件    51
3.8.2  接收邮件    52
3.8.3  mailx的内部命令    53
3.9  口令修改命令passwd    55
3.10  查看系统当前用户的
命令——who    56
3.11  了解系统特性的
命令——uname    57
3.12  获取终端名称的命令——tty    58
3.13  显示和设置终端特性的
命令——stty    59
3.14  小结    60
第4章  文件系统    63
4.1  文件    63
4.1.1  普通文件    64
4.1.2  目录文件    64
4.1.3  设备文件    65
4.2  文件的命名规则    65
4.3  父目录与子目录的关系    66
4.4  HOME变量——主目录    67
4.5  显示当前目录命令——pwd    68
4.6  改变当前目录命令——cd    68
4.7  创建目录命令——mkdir    69
4.8  删除目录命令——rmdir    70
4.9  绝对路径    71
4.10  相对路径    72
4.11  目录列表命令——ls    74
4.12  UNIX文件系统    77
4.13  小结    78
第5章  普通文件    81
5.1  显示和创建文件命令——cat    82
5.1.1  cat命令的可选项(-v和-n)    82
5.1.2  用cat命令创建文件    82
5.2  文件复制命令——cp    83
5.3  文件删除命令——rm    85
5.4  文件重命名命令——mv    86
5.5  分页输出命令——more    87
5.5.1  导航    88
5.5.2  重复参数    89
5.5.3  搜索匹配模式    89
5.5.4  在管道中使用more命令    89
5.6  lp子系统——文件打印命令    90
5.6.1  lp命令可选项    90
5.6.2  lp子系统的其他命令    91
5.7  文件类型识别命令file    92
5.8  统计行数、字数和字符数的
命令——wc    92
5.9  数据的八进制显示命令od    93
5.10  文件比较命令cmp    94
5.11  查找两个文件相同之处的
命令comm    95
5.12  文件转换命令diff    96
5.13  实现DOS与UNIX文件的
转换:dos2unix和unix2dos
命令    96
5.14  文件压缩与文件归档    98
5.15  压缩和解压缩命令:gzip和
gunzip    98
5.16  归档程序tar    100
5.16.1  创建归档文件(-c)    100
5.16.2  解压归档文件(-x)    101
5.16.3  浏览归档文件的内容(-t)    101
5.17  将压缩与归档功能合二为一
的命令:zip和unzip    102
5.18  小结    103

第6章  文件的基本属性    106
6.1  显示文件属性命令——ls -l    107
6.2  用-d可选列出目录的属性    108
6.3  文件所有权    109
6.4  文件权限    109
6.5  改变文件权限
命令——chmod    110
6.5.1  相对权限设置    111
6.5.2  绝对权限设置    112
6.5.3  安全隐患    114
6.5.4  递归模式的chmod
命令(-R)    114
6.6  目录权限    115
6.7  改变文件的所有权    115
改变文件所有权命令——chown    116
6.7.2  改变组所有者
命令——chgrp    116
6.8  小结    117
第7章  vi编辑器    120
7.1  初识vi编辑器    121
7.1.1  重复因子    123
7.1.2  .exrc文件    123
7.1.3  几个小技巧    123
7.2  输入模式——文本输入和
文本替换    124
7.2.1  插入文本(i和a命令)    124
7.2.2  在行首行尾插入文本    125
7.2.3  新建一行(o或O命令)    125
7.2.4  文本替换(r、s、R和
S命令)    126
7.3  保存文件和退出ex模式    127
7.3.1  保存文件(:w)    128
7.3.2  保存和退出命令
(:x 和:wq)    128
7.3.3  放弃编辑命令(:q)    129
7.3.4  保存所选的行    129
7.3.5  暂时返回到shell的命令
(:sh或[Ctrl+z])    130
7.3.6  从紧急事故中恢复数据
(:recover和:r)    130
7.4  导航命令    130
7.4.1  移动命令(h、j、k和l)    131
7.4.2  单词导航(b、e和w)    131
7.4.3  移动行首行尾(0、|和$)    132
7.4.4  翻页命令([Ctrl+f]、[Ctrl+b]、
[Ctrl+d]和[Ctrl+u]    132
7.4.5  绝对移动命令    133
7.5  编辑文本    133
7.5.1  删除文本(x和dd)    134
7.5.2  移动文本(p)    135
7.5.3  复制文本(y和p)    135
7.5.4  行合并命令(J)    135
7.6  撤消最近一次的编辑操作
(u和U)    136
7.7  重复上次操作(.)    136
7.8  模式搜索(/和?)    137
7.9  替换命令(:s)    139
7.10  小结    140
第8章  shell    143
8.1  shell的命令解释过程    144
8.2  shell的类型    145
8.3  模式匹配——通配符    145
8.3.1  *和?通配符    146
8.3.2  匹配“."    147
8.3.3  字符类    147
8.3.4  无规律的匹配模式    148
8.3.5  总结    149
8.4  转义和引用    149
8.4.1  转义机制    150
8.4.2  引用    151
8.4.3  echo命令中的转义字符    152
8.5  重定向符与三个标准文件    152
8.5.1  标准输入    153
8.5.2  标准输出    154
8.5.3  标准错误    155

8.5.4  连接标准输出和标准输入
的过滤器    157
8.6  两个特殊文件:/dev/null和
/dev/tty    158
8.7  管道符    159
8.8  分叉符命令tee    162
8.9  命令替换    163
8.10  shell变量    164
8.10.1  引号和转义的作用    165
8.10.2  什么情形下使用shell
变量    166
8.11  小结    167
第9章  进程    171
9.1  进程的基本概念    172
9.1.1  shell进程    172
9.1.2  父进程与子进程    173
9.1.3  父进程等待或不等待子
进程的死亡    173
9.2  显示进程状态命令ps    173
9.3  系统进程(–e或–A)    176
9.4  进程创建的机制    177
9.5  内部命令和外部命令    179
9.6  进程状态和僵尸状态    179
9.7  在后台运行作业    180
9.7.1  后台运行命令——&    180
9.7.2  nohup命令    180
9.8  降低优先级命令——nice    181
9.9  用信号方式终止进程    182
9.10  作业控制    183
9.11  在将来某个时刻运行——at
和batch命令    185
9.11.1  一次性自动执行
命令——at    185
9.11.2  批处理命令batch    186
9.12  周期性执行作业的
命令——cron    186
9.13  查看进程运行时间的
命令——time    188
9.14  小结    188
第10章  环境设置    191
10.1  shell的演变    192
10.2  环境变量    192
10.3  常用的环境变量    193
10.4  别名(bash和Korn shell)    197
10.5  命令的历史记录(bash
和ksh)    198
10.5.1  根据事件代号访问历史
命令(!和r)    199
10.5.2  根据上下文执行历史
命令    200
10.5.3  在先前的命令中执行
替换    200
10.5.4  使用前面命令的最后
一个参数($_)    200
10.5.5  历史变量    201
10.6  行编辑命令(bash和ksh)    201
10.6.1  编辑命令行    201
10.6.2  在历史列表中搜索先前
的命令    202
10.7  其他特性(bash和ksh)    202
10.7.1  使用set -o命令    203
10.7.2  代字符的替换作用    203
10.8  启动脚本    204
10.8.1  启动文件(.profile和
.bash_profile)    204
10.8.2  rc文件(bash和ksh)    205
10.9  小结    206
第11章  文件的其他属性    209
11.1  文件系统与文件的inode
结点    210
11.2  硬链接    211
11.2.1  建立硬链接——ln命令    212
11.2.2  硬链接的应用    212
11.3  符号连接和ln命令    213
11.4  目录    214

11.4.1  读权限    215
11.4.2  写权限    215
11.4.3  执行权限    215
11.5  设置文件和目录默认
权限——umask命令    216
11.6  修改和访问时间    217
11.7  定位文件命令find    218
11.7.1  查找条件    220
11.7.2  find命令的操作符(!,-o
和-a)    222
11.7.3  动作部分的可选项    222
11.8  小结    223
第12章  简单的过滤器    226
12.1  实例数据库    227
12.2  分页命令pr    227
12.3  显示文件头命令——head    229
12.4  显示文件尾——tail命令    229
12.5  垂直截取——cut命令    231
12.5.1  按列截取(-c)    231
12.5.2  用cut命令截取字段(-f)    231
12.6  粘贴——paste命令    232
12.7  排序命令sort    234
12.8  定位重复行和非重复行
命令——uniq    237
12.9  字符变换命令tr    239
12.10  一个实例——单词统计表    241
12.11  小结    242
第13章  使用正则表达式的
过滤器--grep与sed    244
13.1  模式搜索命令grep    245
13.2  初探基本正则表达式(BRE)    248
13.2.1  字符类    249
13.2.2  直接前缀符(*)    250
13.2.3  点的作用——匹配单个
字符    251
13.2.4  位置匹配(^和$)    251
13.2.5  元字符不起作用的情形    252

13.3  扩展正则表达式(ERE)和
grep命令    253
13.3.1  +和?    253
13.3.2  多模式匹配(|、(和))    254
13.4  流编辑命令sed    254
13.5  行地址    256
13.6  使用多个指令(-e和-f)    257
13.7  根据上下文寻址    257
13.8  把选取的行写入文件(w)    258
13.9  文本编辑    259
13.9.1  行插入和修改
指令(i、a、c)    259
13.9.2  删除行(d)    260
13.10  替换操作(s)    260
13.11  再识基本正则表达式    263
13.11.1  重复模式(&)    263
13.11.2  间隔正则表达式    263
13.11.3  带标志的正则表达式    264
13.12  小结    266
第14章  shell程序设计基础    269
14.1  shell脚本    270
14.2  read命令——脚本的交互式
执行    271
14.3  使用命令行参数    272
14.4  exit命令和命令的退出
状态    274
14.5  逻辑运算符 &&和| |——有
条件执行    275
14.6  if条件语句    276
14.7  利用test和[ ]符号计算
表达式的值    277
14.7.1  数值比较    277
14.7.2  字符串比较    279
14.7.3  文件测试    281
14.8  case 条件语句    282
14.8.1  匹配多个模式    284
14.8.2  在case结构中使用
通配符    284
14.9  数值计算和字符串处理
命令expr    284
14.9.1  数值运算    285
14.9.2  字符串处理    285
14.10  脚本程序的另外一种调用
方法——$0    287
14.11  while循环结构    288
14.11.1  利用while循环等待
一个文件    289
14.11.2  设置无限循环    290
14.12  for循环——作用在列表上
的循环    290
14.12.1  各种列表    291
14.12.2  修改文件的扩展名
——basename命令    292
14.13  操作位置参数命令:set
和shift    293
14.13.1  位置参数左移命令
shift    294
14.13.2  执行命令替换的set--
命令    295
14.14  here文档(<<)    295
14.15  程序中断命令trap    297
14.16  用set -x命令调试shell
脚本    298
14.17  数据验证和数据录入实例    298
14.17.1  代码列表搜索程序
valcode.sh    298
14.17.2  数据录入脚本程序
dentry1.sh    299
14.18  小结    301
第15章  系统管理基础    305
15.1  系统管理员的登录身份
——root    306
15.2  系统管理员的特权    307
15.2.1  设置系统日期——date
命令    307

15.2.2  向用户传达消息——wall
命令    307
15.2.3  设置文件大小的最大值
——ulimit命令    308
15.2.4  控制用户使用at和cron    308
15.3  安全维护    308
15.3.1  passwd命令可以修改
任何口令    308
15.3.2  临时权限SUID    309
15.3.3  粘着位    310
15.4  用户管理    311
15.4.1  创建组——groudadd
命令    311
15.4.2  创建用户——useradd
命令    312
15.4.3  用户配置文件:/etc/passwd
和/etc/shadow    312
15.4.4  修改和删除用户——
usermod和userdel命令    313
15.5  启动和关机过程    313
15.6  管理磁盘空间    315
15.6.1  报告磁盘可用空间——
df命令    315
15.6.2  报告磁盘使用情况——
df命令    316
15.7  设备文件    317
15.7.1  块设备和字符设备    318
15.7.2  主设备号和次设备号    318
15.8  操作软盘设备    319
15.8.1  软盘格式化命令——
format和fdformat    319
15.8.2  磁盘复制命令——dd    320
15.8.3  操作DOS磁盘    320
15.9  备份程序cpio    321
15.9.1  备份文件(-o)    322
15.9.2  恢复文件(-i)    323
15.9.3  显示归档文件里的文件
列表(-it)    324

15.9.4  其他可选项    325
15.10  tar命令    325
15.10.1  备份文件(-c)    326
15.10.2  文件恢复(-x)    327
15.10.3  显示归档文件的
内容(-t)    328
15.10.4  其他可选项    328
15.11  小结    329
第Ⅱ部分  高  级  篇
第16章  X Window系统    335
16.1  X系统基础    336
16.2  通用桌面环境    338
16.3  启动和退出X系统    339
16.4  终端仿真程序    340
16.5  剪切和粘贴操作    341
16.5.1  使用鼠标按钮    342
16.5.2  高级的剪切和粘贴
操作:xclipboard    342
16.6  远程运行X客户端程序    343
16.6.1  显示程序    343
16.6.2  使用DISPLAY变量    343
16.6.3  使用-display可选项    344
16.7  命令行可选项    344
16.7.1  窗口位置和大小
(-geometry)    345
16.7.2  设置颜色(-fg,-bg和-rv)    345
16.7.3  其他可选项    346
16.8  一些标准的X客户端程序    346
16.8.1  文件管理器dtfile    346
16.8.2  时钟模拟器xclock    347
16.8.3  计算器xcalc    347
16.8.4  邮件通知程序xbiff    348
16.8.5  显示系统负荷命令
xload    348
16.8.6  终止窗口命令xkill    349
16.9  启动文件    349
16.10  X系统的资源    350
16.10.1  装载资源命令
——xrdb    350
16.10.2  -xrm可选项——使
配置文件无效    351
16.11  小结    351
第17章  网络工具    353
17.1  TCP/IP基础    354
17.1.1  TCP/IP工作原理    354
17.1.2  TCP/IP的特点    354
17.1.3  IP地址    355
17.1.4  守护进程和端口    355
17.2  域名解析    356
17.3  TCP/IP应用程序    357
17.4  检查网络是否连通——
ping命令    358
17.5  远程登录命令——telnet    358
17.6  文件传输协议ftp    359
17.6.1  文件和目录基本操作
命令    360
17.6.2  传输文件    361
17.6.3  匿名ftp登录    362
17.7  密码学基础    363
17.7.1  对称密钥算法    363
17.7.2  非对称密钥算法    364
17.8  SSH——安全外壳    364
17.8.1  主机认证    365
17.8.2  rhosts/shosts认证模式    365
17.8.3  用对称算法进行用户
认证    366
17.8.4  利用SSH代理实现
非交互式登录    367
17.9  SSH工具    368
17.9.1  远程登录和命令的
执行——ssh和slogin    369
17.9.2  安全的文件传输
命令——sftp和scp    369
17.10  域名系统(DNS)    370
17.11  电子邮件服务    373
17.12  MIME——处理邮件中的
二进制附件    374
17.13  万维网    375
17.13.1  统一资源定位器
(URL)    376
17.13.2  Web协议HTTP    377
17.13.3  执行外部程序    377
17.13.4  网页设计语言
——HTML    378
17.13.5  Web浏览器    379
17.14  Web上的多媒体——
再论MIME协议    379
17.15  小结    380
第18章  高级过滤器——awk命令    383
18.1  awk命令简单的过滤功能    384
18.2  把一行拆分成字段    385
18.3  printf格式化输出    386
18.4  变量和表达式    386
18.5  比较运算符    387
18.5.1  正则表达式运算符:
~和!~    388
18.5.2  数值比较    389
18.6  数值运算    390
18.7  变量    390
18.8  -f可选项——把awk程序
保存到一个文件里    391
18.9  BEGIN段和END段    391
18.10  内置变量    392
18.11  数组    393
18.11.1  关联(哈希)数组    394
18.11.2  环境数组
ENVIRON[ ]    395
18.12  函数    395
18.13  流程控制——if语句    397
18.14  for循环    398
18.15  while循环    400
18.16  小结    400

第19章  perl——最重要的文本
处理器    403
19.1  perl概述    404
19.2  chop截尾函数——删除
最后一个字符    405
19.3  变量与运算符    406
19.4  字符串处理函数    407
19.5  在命令行中说明文件名    408
19.6  默认变量$_    410
19.7  当前行号($.)和范围
运算符(..)    410
19.8  列表与数组    411
19.8.1  命令行参数 ARGV[ ]    413
19.8.2  修改数组元素    414
19.9  列表循环——foreach    414
19.10  split函数——把一行拆分
成列表或数组    415
19.10.1  拆分到变量里    416
19.10.2  拆分到数组里    416
19.11  join命令——合并列表    417
19.12  dec2bin.pl——把十进制
转化为二进制    418
19.13  用grep在数组中搜索
一个模式    419
19.14  关联数组    420
19.15  正则表达式与模式替换    422
19.15.1  s和tr函数    422
19.15.2  识别空白符、数字和
单词    424
19.15.3  IRE和TRE用法    424
19.15.4  在位编辑文件    425
19.16  文件的处理    425
19.17  文件属性测试    426
19.18  子程序    427
19.19  小结    429
第20章  vi编辑器的高级功能    433
20.1  操作符    433

20.1.1  删除、移动文本(d、p
和P命令)    434
20.1.2  文本复制(y命令)    434
20.1.3  修改文本(c命令)    435
20.1.4  过滤文本(!命令)    435
20.2  ex模式——多文件操作    437
20.2.1  文件切换    437
20.2.2  插入文件和命令执行
结果    438
20.3  符号缓冲区——保存多个
文本段    439
20.4  标号缓冲区——取消多个
行删除操作    440
20.5  输入控制符([Ctrl+v])    441
20.6  字符搜索    442
20.7  标签文本    442
20.8  定制vi编辑器    443
20.8.1  set命令    443
20.8.2  map——建立快捷键
映射表    444
20.8.3  abbr——定义文本输入
缩写符    445
20.9  小结    446
第21章  高级shell程序设计    449
21.1  shell与子shell    450
21.2  组运算符——()和{}    450
21.3  export命令——导出shell
变量    451
21.4  在当前shell运行
脚本——.命令    452
21.5  let运算命令(ksh 和
bash)    453
21.6  数组(ksh和bash)    454
21.7  字符串处理(ksh和bash)    455
21.7.1  字符串的长度    455
21.7.2  根据模式的匹配结果
求子串    456

21.8  带条件的参数替换    457
21.9  流的合并    458
21.10  shell函数    459
21.10.1  利用系统日期生成
一个文件名    460
21.10.2  函数返回值    460
21.10.3  验证输入日期的
有效性    461
21.11  eval命令——两次求值    462
21.12  exec 语句    464
21.13  小结    467
第22章  程序开发工具    469
22.1  处理多文件C语言应用
程序    470
22.2  一个多文件应用程序    470
22.2.1  编译和连接程序    472
22.2.2  保留.o文件的原因    473
22.3  make命令——保持程序
更新    474
22.3.1  删除冗余内容    476
22.3.2  make的其他功能:文件
清理和备份    476
22.3.3  宏    477
22.4  ar命令——建立一个库文件
(归档文件)    478
22.4.1  使用库文件    479
22.4.2  用make命令维护
库文件    480
22.5  静态库和共享库    480
22.6  版本控制工具——SCCS
和RCS    481
22.7  一次SCCS会话    482
22.7.1  admin命令——创建
一个SCCS文件    483
22.7.2  get命令——检出版本    484
22.7.3  delta——检入命令    485
22.7.4  unget命令——取消
修改    486
22.8  活动和历史信息    486
22.8.1  sact——显示活动状态
信息    486
22.8.2  prs命令——显示SCCS
历史记录    487
22.9  用SCCS继续编辑    487
22.9.1  get -r命令改变默认的
数字编号    488
22.9.2  使用标识关键字    489
22.10  修订控制系统(RCS)    489
22.10.1  用ci建立一个RCS
文件    490
22.10.2  co和ci——检出和
检入命令    491
22.10.3  设置版本号    492
22.10.4  rlog命令——查看
版本状态    492
22.10.5  ident命令——使用
标识关键字    493
22.11  小结    493
第23章  系统程序设计(上)——
文件    496
23.1  系统调用基础    497
23.1.1  系统调用与库函数    497
23.1.2  系统调用的执行过程    497
23.1.3  原子操作    498
23.2  打开和关闭文件    498
23.2.1  打开或建立一个
文件——open命令    499
23.2.2  close系统调用——关闭
文件    500
23.3  I/O系统调用    501
23.3.1  read调用——读取文件    501
23.3.2  write调用——写入文件    502
23.3.3  ccp.c——文件复制
程序    502
23.3.4  lseek调用——定位偏移
指针    503
23.3.5  reverse_read.c——逆序
读取文件    504
23.3.6  截断文件——truncate和
ftruncate    505
23.4  带缓冲和不带缓冲的读写
操作    506
23.5  umask命令——文件创建与
权限修改    507
23.6  错误处理    508
23.6.1  strerror函数    508
23.6.2  perror函数    509
23.6.3  带错误处理的文件逆序读
取程序reverse_read2.c    510
23.7  文件共享    512
23.7.1  文件描述表    513
23.7.2  文件表    513
23.7.3  vnode表    514
23.8  目录浏览    515
23.9  读取目录文件    516
23.10  修改目录文件的记录    517
23.10.1  建立和删除目录——
mkdir和rmdir系统
调用    518
23.10.2  建立硬连接和符号
连接——link和
symlink调用    518
23.10.3  unlink:删除连接    518
23.10.4  rename:重命名文件名、
目录名和连接文件名    519
23.11  stat——读取inode    519
23.11.1  attributes.c显示文件
部分属性    520
23.11.2  作用于st_mode成员上
的S_IFMT屏蔽字    521
23.11.3  用S_IS系列宏判断
文件类型    522
23.11.4  lsdir.c——只列出目录    522
23.12  查看文件的存取权限    524

23.12.1  check_all_perm.c——
查看12个权限位    524
23.12.2  access——查看文件
所有者的权限    526
23.12.3  SUID对文件存取的
影响    528
23.13  修改文件属性    529
23.13.1  chmod和fchmod——
修改文件权限    529
23.13.2  chown——修改文件
所有权    530
23.13.3  utime——修改文件的
时间戳    530
23.13.4  atimetime.c——创建具
有相同时间戳的文件    531
23.14  小结    532
第24章  系统程序设计(下)——进程
控制    536
24.1  进程的几个抽象概念    537
24.1.1  虚拟地址空间    537
24.1.2  进程表    538
24.2  process.c程序——查看进程
的权限    539
24.3  创建一个进程    540
24.3.1  fork系统调用——复制
当前进程    540
24.3.2  fork.c——一个简单的
子进程创建程序    540
24.3.3  getenv和setenv——使用
环境变量    542
24.3.4  childenv.c——传递环境    542
24.4  _exit和exit——终止进程    544
24.5  等待状态——读取子进程的
退出状态值    545
24.5.1  wait——等待子进程
死亡    545
24.5.2  wait.c——说明wait和
WEXISTATUS的用法    545
24.5.3  waitpid——一个功能
更强大的等待机制    546
24.6  进程组    547
24.7  僵尸进程和孤儿进程    548
24.8  exec——进程创建中的最后
一个步骤    549
24.8.1  execl--"l”系列中最
重要函数    549
24.8.2  execv--v组中最重要
的函数    551
24.8.3  exec_and_fork.c——在
子进程执行exec    551
24.8.4  l家族和v家族的其他
成员    552
24.9  shell.c——一个类似于
shell的程序    553
24.10  文件描述符的使用    555
24.10.1  dup——复制文件
描述符    556
24.10.2  dup2——复制描述符
的一种更好方法    557
24.10.3  fcntl——比dup和
dup2更好的函数    558
24.11  pipe系统调用——进程
之间的通信    559
24.11.1  pipe与fork一起使用    560
24.11.2  pipe2.c——管道中运行
UNIX命令    561
24.12  信号机制    562
24.12.1  信号处理    562
24.12.2  内核处理信号的过程    563
24.12.3  与信号有关的系统
调用    564
24.13  signal调用——设置信号
处理程序    564
24.13.1  响应SIGALRM信号    565
24.13.2  为什么signal调用不
可靠    566

24.13.3  捕获来自键盘终端
的信号    567
24.14  killprocess.c——用kill产生
信号    568
24.15  小结    570
第25章  高级系统管理    573
25.1  安全措施    574
25.1.1  口令老化机制    574
25.1.2  受限的shell    574
25.1.3  只允许一个用户关机    575
25.2  分区与文件系统    575
25.2.1  引导块    576
25.2.2  超级块    576
25.2.3  inode块    577
25.2.4  数据块    577
25.3  常用的文件系统和类型    578
25.4  fdisk——建立分区    579
25.5  mkfs——创建文件系统    580
25.6  加载和卸载文件系统    581
25.6.1  用mount加载文件
系统    581
25.6.2  umount——卸载文件
系统    582
25.6.3  /etc/fstab文件——配置
mount命令    582
25.6.4  mount的可选项    583
25.7  用fsck命令检查文件系统    584
25.8  系统启动和init命令    585
25.8.1  init命令——控制
运行级    586
25.8.2  使用/etc/inittab文件    586
25.8.3  init和getty    587
25.8.4  rc脚本程序    588
25.9  关机操作和sync操作    589
25.10  备份    590
25.10.1  用find命令进行增量
备份(-newer)    590
25.10.2  用find命令备份文件
系统    590
25.10.3  xargs——建立动态
命令行    591
25.10.4  保存备份文件的列表    591
25.11  小结    592
附录A  C shell的结构    594
附录B  vi/vim命令手册    601
附录C  命令反查表    609
附录D  测试题答案    614


??

UNIX原理与应用(第4版)

目    录        

XII


XIX



深入理解计算机系统(中英文).7z

http://ishare.iask.sina.com.cn/f/21742054.html?from=like

http://202.102.94.56/2/ishare.down.sina.com.cn/22119041.7z?ssig=9SfMW00Dr%2B&Expires=1346342400&KID=sina,ishare&ip=1346234027,221.226.47.&fn=%E6%B7%B1%E5%85%A5%E7%90%86%E8%A7%A3%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%B3%BB%E7%BB%9F%28%E4%B8%AD%E8%8B%B1%E6%96%87%29.7z

迷你书-深入理解计算机系统(原书第二版).pdf

http://ishare.iask.sina.com.cn/f/22469545.html?from=like

http://static.ishare.down.sina.com.cn/6084532.pdf?ssig=yrNMg%2FaHNH&Expires=1346342400&KID=sina,ishare&ip=1346233992,221.226.47.&fn=%E6%B7%B1%E5%85%A5%E7%90%86%E8%A7%A3%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%B3%BB%E7%BB%9F.pdf

 

end

分享到:
评论

相关推荐

    iOS and OS X Network Programming Cookbook

    While there are numerous books and articles written to teach network development in a UNIX environment there is surprisingly little dedicated to teaching network development specifically in an Apple ...

    Unix Power Tools Third Edition

    The latest edition of Unix Power Tools explores the standard Unix tools in greater depth than ever, and with better coverage of Linux, FreeBSD, and even the Darwin environment of Mac OS X. It's also ...

    UNIX高级编程 计算机科学丛书

    4. Sun Microsystems的Sun OS4.1.1和4.1.2(该系统与贝克莱系统有很深的渊源团系,但也包含了很多系统V的特征),这些系统在SPARC工作站SLC上运行。 本书提供了与测试有关的许多时间信息,也说明了用于测试的系统...

    Cocoa® Programming for Mac® OS X, Third Edition

    software developer and creator of the Nu programming language, www.programming.nu&lt;br&gt;&lt;br&gt;"If you're a UNIX or Windows developer who picked up a Mac OS X machine recently in hopes of developing new ...

    Programming in Objective-C 2.0

    www.cocoadev.comWeb site, a technical reviewer for numerous books and magazine articles, and an occasional dabbler in Mac OS X open source projects. Currently, he is using Objective-C and Apple ...

    Kindle Computer Science other.rar

    iOS_Mac\OReilly Mac OS X for Unix Geeks Leopard 4th.mobi iOS_Mac\Pragmatic iOS Recipes.mobi iOS_Mac\Pragmatic Mac Kung Fu.mobi iOS_Mac\Wrox Beginning iOS Game Development.mobi iOS_Mac\Wrox Building ...

    ipc-channel:Rust通道的多进程直接替换

    :books: :books: 概述 ipc-channel是通过本机OS抽象实现Rust通道API(一种通信顺序过程的形式,CSP)的实现。 在后台,此API使用Mac上的Mach端口和通过Linux上的Unix套接字传递的文件描述符。 serde库用于序列化值...

    Trybe-exercises-:普罗耶托·特里比(Projeto Trybe)

    欢迎来到TRYBE :books: escola que te ensina a programar,aprender e atrabalhar。 -- 格式: 从现在开始到现在,您可以使用任何一种形式的方法,也可以在其中使用vosaprenderánaprática,evoluindo ...

    gustavo-mendel:自述文件中的我的个人信息

    :books: 目前,我是巴西巴伊亚联邦大学(UFBA)的计算机科学系学生。 我还是UFBA的计算机科学InfoJr初级企业( )的志愿者,我是Project Staff的成员,我对Infra&Sec和Project Management感兴趣。 :green_heart: ...

    OpenGL SuperBible 5th Edition.pdf

    • Cross-platform OpenGL: Windows (including Windows 7), Mac OS X, GNU/Linux, UNIX, and embedded systems • OpenGL programming for iPhone, iPod touch, and iPad: step-by-step guidance and complete ...

    Crystal Reports 9 - The Complete Reference.part1

    网络互连数据库多媒体科学工程网页制作Unix/LinuxWindowsMac OS X办公应用Perl/PHP/PythonC/C++.NETJava硬件游戏开发嵌入式系统操作系统程序设计系统安全信息通讯 长篇小说 » 儿童读物文学名著科幻小说侦探小说...

    core_servlets_and_javaserver_pages_advanced_technologies_volume_2_2nd_edition

    Web servers for Windows, UNIX (including Linux), Mac OS, VMS, and mainframe operating systems now support servlet and JSP technology either natively or by means of a plug-in. With only a small amount ...

    openGL超级宝典(第四版).pdf

    They also present thorough, up-to-date introductions to OpenGL implementations on multiple platforms, including Windows, Mac OS X, GNU/Linux, UNIX, and embedded systems. Coverage includes · An ...

    Securing PHP Web Applications.pdf

    Changing File Permissions in UNIX, Linux, and Mac OS X 76 Changing Windows File Permissions 77 Changing File Permissions in PHP 87 Patching the Application to Allow User-Uploaded Image Files 88 Modify...

    DebuggingWithGDB 6.8-2008

    Table of Contents Summary of gdb . . . . . . . . ....Free Software ....Free Software Needs Free Documentation ....Contributors to gdb....1 A Sample gdb Session ....2 Getting In and Out of gdb ....2.1 Invoking gdb ....

    IDL英文原版(很好的一份IDL教材)

    2.3 Other IDL books.........................................12 Interactive IDL 14 3.1 IDL commands..........................................14 3.2 Before starting IDL.....................................

Global site tag (gtag.js) - Google Analytics