月录 第8章在Emacs中创建程序… …*……(76 8.1macs简介 8.1.1启动与停止Em8C8…+…………… ……………(76) 8.1.2移动………………… …78 8.1.3插人文本……………(79) 8.】,4别除文本………(79) 8.1,5查找和替换…… (80) 8.1.6保存和打开文件…… ……(81) 8.1.7多窗口…*4*… ……………(82) 8.2支持编程的特性…………… (83) 8.2.】缩进约定… (83) 8.2.2语法高亮度显示……………, (84) 8.2、3使用注释… 44(84) 8.2.4使用Emacs进行编译………(85) 8.2.5定制简介…………(87) 8.3使用Emacs Lisp白动完成Emacs操作 w……*…(89】 8.小结……(9引) 第2部分 系统编程 第9章/0例程 ……(92} 9.】文件描述符……… 4…(92) 9,2使用文件描述符的系统调用…… *4(92) 9.2.1open()调用 …(93) 9.2.2cl08e()调用…… (94) 9.2.3read()调用 4A4*82F0464444-310441410444 (94) 9.2.4 write()i调用44…,4 9.2.5 ioctl()调用 9.2.6fcnl()调用……………*…… ++4……(95) 9.2.7y7c()调用…………(95》 9.2.8 ftruncate()调用…,, (96) 9.2.9 lseek()调H… ………(96) 9.2.10dup()和dup2()调用…………,, 9.2.1】select()调用… 9.2.12 fstat()调用…………… (101) 9,2.13 fchown()调用*…………… (102) 9.2.14 fchmod()调用 (102) 9.2.15 fehdir()调用 ……4…(103) 9.2.16fl0Ck()调用*… …(103) 9.2.17pipe()阀用 9.3文件类型
日录 5 9.3.1普道文件 9.3.2做带1/0 (106) 9.3.3单▣1/0 9.3.4打印机接口 (109) 9.35前卡…………44… ……………(09) 9.生小结………………………… (109) 第10章文件操作 ***+…(110 10.】文件操作函数…………。 *n+(110】 10.1.1打开/关闭文件 *+(110) 10.1.2基本的读和写……………… (111) 10.1.3状态函数……… (111) 】0.2格式化输出………*…,… (112) 10.2,1格式化输入………… 10.2.2基于字符和行的输入输出… 10.2.3文件定…………… (116) 10.2.4缓冲区控制 ……………(116) 10.2.5删除和改名……4……… (117) 10.2.6临时文件… ………*…(117) 10.3小结… ………(118) 第11章进程控制… (119) 11.1进程的属性……… (119) 11.2系统调用及库函数 (120) 11.2.16k()系统调用…… (120) 11.2.2exec()函数族…… (120) 1L.2.35 ystem()和pop0n()☒数…(们21) 1】.2.4c0nC()函数调用……… (121) 11,2.5wait()、waitpid()、wail3()以及wait4()系统调用… (122) 11.2.6cCt()系统调用……… (122) 11,2.7信号……(们22) 11.2.8程序的中止… *…**(124) 11.2.9闹钟和计时器……(125) 11.3调度参数….…… ……4(126)】 11.4线程……(12 1l.4.1 pthread-create()函数… 11.4.2 pthread exit()函数 *…(128) ll.4.3 pthread..join()函数+" ………(128) 11.4.4属性的挖制…… 444…(129) 1i.4.5 pthread_.atfork()函数… …(130) 11.4.6取消线程……4 *…(130) ll.4.?pthread-cleanup-push()宏…
目求 1l.4.8 pthread-cond-init()函数 11.4.9 pthres3d-equal()函数…………(132) 11.4.10互斥 (132) 11.5编程示例…… (132) 11.5.1子库…………………(133) 11.5.2例子child-.demol.c程序 ………(143) 11.5.3例子程序child.dem02.c…(145) 1l.5.4例子程序child-demo3.ct…… (150) 11.6小h…… (151) 第12章访问系统信虑…(152) 12.】进程的信息…(152) l2.1.】cmdline文件 (153) 12.1.2 envirot文件………………(153) 12.1.3f月录… …(153) 12.1.4mem文件… (153) 12.1.58tal文f件…… ………(153) 12.1.6 status文件… (155) 12.1.7cwd符号链接… …(155) 12.1.8exe符号链接 …………(155) 12.1.9mps文件… (155) 12.1.10root符号链接 …(155) 12.1.11ratm文件… (155) 12.2脊通的系统信息…… (155) 12.2.1/proc/emd/.line文件 (155) 12.2.2proc/cpuinfc文件…… …(155) 12.2.3 /proc/devices文件……… …(156) 12.2.4/proc/dma文件… …(156) 12.2.5/Proc/filesystems文件 ……(156) 12.2.6fpr0沁/interrupts文件……(156) 12.2.7/pr00/i0p0rs文件… (156) 12.2.8/proc/core文件…… (156) 12.2.9/pr0心/kmsg文件…(156) 12.2.10/pr0c/ksyms文件…(156) 12.2.11/proc/loadavg文件 ……(157) 12.2.12/pr0C/小0ck5文件……………(157) l2.2.13/ptoe/mdstat文件 12.2.14/proc/meminfo文件 …(157) 12.2.15pr0心/1ie文件……(157) 12.2.16/ptoe/nodules文件 (157) 12.2.17/proc/mounts文f件 (157) 12.2.18/pr0C/pCi文件…+**……… (157) 12.2.19/proc/rc文件… (158)
目录 7 12.2.20/pr0c/5tat文件………… (158) 12.2.21pr0c/uptime文件n, (158) 12.2.22proc/version文件 …4+(158) 12.2.23/pr0心/hct子1录4……………(158》 12.2.24/pr0心/9csi子日录…………………(159) 12.2.25/pr0e/5ys日录…… 12.3明数库和实用丁其………………………*…(160) 12,4小结………………4…… (160) 第13章出错处理… (161) 13.」出错处理简述……… (161) 13,2C语言机制………(161) 13,2.1a5ser1()宏*" (161) 13.2.2使用预编译…… …44*4(163》 3.2.3标准库了具 (165) 13.2.4对错误代码errno的理解 *…(165) 13.2.5使用函数ab0r()…………(166) 13.2.6使用函数xit()……… ………(166) 3.2.7使用函数atxit()………… (167) 13.2.8使月函数1rerr0r()…………… (168) 13.2.9使用函数p0ror()… 13.3系统日志工具……(169) 1 13.3.1用户程序… *…(173) 13.4小结* 第14章内存管理…… 1.】C内存管理的回顾…………(174) 上4.1.】mal0c()函数的使用…………… (174) 14.1.2al0c()函数的使用*… (174) 141,3 realloc()函数的使用………(175)》 14.1.4打ee()函数的使用…,… 14.1.50C1()函数的使用…………………《175) 14.2内存映像文件(们77) 14.2.1mmap()函数的使用 14.2.2 munmap()函数的使用 (178) 14.2、3 msyne()函数的使用……… (178) 14.2.4mpr0tCt()函数的使用……………… (179) 14.2.5锁住内存……… …(179) 14.2.6 mremap()函数的使用……(170) 14.2.7用内存映像实现cat(1)………180) 14,3发现并修改内存管理错误…… (]81) 14,3.】一个有问题的程疗………… (182)
8 目录 14.3.2用mpr和che沁k定位内存错误… (183) 14.3.3 Electric Fence...... 14.3.4使月Lint Brush……… (187) ]4.4小结……*……………”(188) 第3部分进程间通信和网络编程 第15章P℃人门:使用管道………(189) 15.1管道使用简介………… ……(190) 15.1.1无名管道…… **4*…*………,(190) 15.1.2有名管道… 15.2小结**4… …*……4…”(193) 第16章消总队列… 44**4。(194) 16.1创建一个使用消息队列示例程序: 4*44…(194) 16.2运行这个消总队列示例程序…… …(196) 16.3小结4… +4…(196) 第17章共享内存… …(197) 17.1把Linux配置成使用共享内存… *……(197 172创建一个使用共享内存的例子程序………… (197) 17,3运行共享内存示例程序… ……(199) 17,4小结…………… 第18章信号灯… …***4。(201) 18.使用信号灯的示例程序…… …*(201 18.2运行信号灯示例程序… …*………(205) 18.3小结4 ……………〔206) 第19章TCP/P和套接口编程 (207) 19.1支持套接门编程的系统调用… **(207) 19.1,】80沁ket………4… (207) 19.1.2bjnd4… (208) 19.1.3 listen4,… 4……(209) 19.1,4心0nneL…,………++4 ………(209) 19.1.5fecy……… ………(210) 19.1,6s纪nd (210) 19.2使用套接口的客户/服务器例子程序…。 …**(211】 19.2.】眼务器例子程序…(211) 19.2.2客户例子程序… (212) 19.2、3运行客户和服务器例子程序… 4*(213)