Solaris系统编程

出版社:Solaris系统编程机械工业出版社
出版日期:2006-3
ISBN:9787111185710
作者:提尔
页数:855页

内容概要

(加)提尔 Rich Teer,加拿大不列颠哥伦比亚省基洛纳市的一名UNIX顾问,UNIX社区中一名受人尊重的资深成员,知名的Solaris系统管理和编程专家,持有SCSA、SCNA和SCSA证书。他具有15年的C编程经验、9年多从事Sun系统工作的经验,其中有2年是Sun Microsystems公司的技术支持顾问。同时,他也是W.Richlard Stevens的畅销书《UNIX Network Programming》(第2版)的技术审校。

书籍目录

译者序前言第一部分  综述第1章  Solaris系统1.1引言1.2登录1.3shell1.4文件、目录和文件系统1.5输入和输出1.6程序、进程和线程1.7错误处理1.8用户标识1.9信号1.10UNIX时间值1.11系统调用和库函数1.1264位编程概述1.12.1编写纯64位的程序1.12.2编译和安装64位的程序1.12.3大文件的编译环境1.12.4过渡期的大文件编译环境1.13小结练习第2章  Solaris简史2.1引言2.2初期:SunOS2.3SunOs之后:Solaris2.4标准2.4.1ANSI/ISO/IECC2.4.2SystemV接口定义2.4.3IEEEPOSIX2.4.4开放组的XPG42.4.5单一UNIX规范2.5Solaris2.52.6Solaris2.62.7Solaris72.8Solaris82.9Solaris92.10Solaris标准遵守情况2.11编译符合标准的应用程序2.12小结练习第二部分  基本主题第3章  实用工具函数3.1引言3.2处理字符类3.2.1测试字符类成员资格3.2.2改变字符类成员资格3.2.3字符类小结3.3处理字符串3.3.1得到字符串的长度3.3.2比较字符串3.3.3连接字符串3.3.4复制字符串3.3.5字符串查找函数3.3.6生成字符串的副本3.3.7把一个字符串分割成标记3.3.8转换字符串的函数3.3.9把字符串转换成数字3.3.10把数字转换成字符串3.4处理字节数组3.4.1比较字节数组3.4.2复制字节数组3.4.3查找字节数组3.4.4初始化字节数组3.5动态内存3.5.1内存对齐3.5.2分配动态内存3.5.3释放动态内存3.6其他内存管理包3.6.1malloc库3.6.2bsdmalloc库3.6.3mapmaUoe库3.6.4watchmalloc共享对象3.6.5比较malloc库3.7临时文件3.7.1产生临时文件名3.7.2创建临时文件3.8分析命令行参数3.9错误报告3.10挂起进程3.11小结练习第4章  基本的文件I/O4.1引言4.2文件描述符4.3open函数4.4creat函数4.5close和closefrom函数4.6lseek和llseek函数4.7tell函数4.8.read和pread函数4.9write和pwrite函数4.10readn和writen函数-4.11I/O效率4.12文件共享4.13原子的操作4.14dup和dup2函数4.15fcntl函数4.16ioctl函数4.17fdwalk函数4.18直接I/O4.19/dev/fd文件系统4.20小结练习第5章  标准I/O库5.1引言5.2文件流、数据类型和常量5.3标准输入、标准输出和标准错误输出5.4打开文件流5.5关闭文件流5.6读和写5.6.1字符输入函数5.6.2字符输出函数5.6.3行输入函数5.6.4行输出函数5.6.5二进制I/O5.7流状态5.8格式化I/O5.8.1格式输出5.8.2格式输入5.8.3格式转换规范5.8.4C语言转义序列5.9定位流5.10文件流锁定5.11缓冲5.12标准I/0的效率5.13小结练习第6章  日期和时间操作6.1引言6.2转换时间的复杂性6.3获得当前时间6.4设置当前时间6.5获得当前时区6.6UNIX时间和日历时间的转换6.6.1localtime和localtime_r函数6.6.2gmtime和grntime_r函数6.6.3mktime函数6.7格式日期I/O6.7.1将日期转换成格式字符串6.7.2将格式字符串转换成日期6.8小结练习第7章  用户和组7.1引言7.2用户名7.3用户ID7.4组ID7.5组成员资格7.6口令文件7.7影像口令文件7.8读取和加密口令7.9组文件7.10utmpx和wtmpx文件7.11utmp和wtmp文件7.12lastlog文件7.13shells文件7.14小结练习第8章  系统信息和资源限制8.1引言8.2系统信息和识别8.3系统资源限制8.4每个进程的资源限制8.5资源控制工具8.6资源控制示例8.7资源使用信息8.8使用/proc文件系统确定资源使用信息8.9确定系统的平均负荷8.10小结练习第9章  安全的C编程9.1引言9.2缓冲区溢出9.3程序的环境9.4防御性编程9.5最小特权原则9.6使用chroot“监牢”9.7编写安全程序的技巧9.8小结练习第三部分  输入/输出第10章  文件和目录10.1引言10.2路径名组件10.2.1dimame函数10.2.2basename函数10.3stat、fstat和lstat函数10.4文件类型10.5Set-user-ID和set-group.ID10.6粘着位10.7文件访问权限10.8access函数10.9umask函数10.10chmod和fchmod函数10.11chown、fchown和lchown函数10.12文件尺寸10.13文件截取10.14文件系统10.15link和unlink函数10.16remove和rename函数10.17符号链接10.18解析可能包含符号链接的路径10.18.1resolvepath函数10.18.2realpath函数10.19symlink和readlink函数10.20文件时间10.21改变文件的访问时间和修改时间10.21.1utirne函数10.21.2utimes函数10.22创建和删除目录10.23读取目录10.23.1opendir和fdopendir函数10.23.2readdir和readdir_r函数10.23.3seekdir、rewinddir和telldir函数10.23.4closedir函数10.23.5ftw和,nftw函数10.24chdir、fchdir和getcwd函数10.25chroot和:fchroot函数10.26特殊文件10.27sync和fsync函数10.28综合讨论10.29小结练习第11章  使用文件系统11.1引言11.2磁盘术语11.3已挂载的文件系统表11.3.1gemmtent、gelanntany和getextmntent函数11.3.2hasmntopt函数11.3.3resetmnt,tab函数11.3.4putmntent函数11.4mntfS文件系统ioctl命令11.5文件系统默认值11.5.1getvfsent系列函数11.5.2添加项到/etc/vfstab11.6挂载和卸载文件系统11.6.1mount函数11.6.2umount和umount2函数11.7获得文件系统的状态11.7.1statvfs和fstatvfs函数11.7.2ustal函数11.8读取文件系统数据结构11.8.1超级块11.8.2索引节点表11.8.3柱面组11.9小结练习第12章  终端I/O12.1引言12.2终端I/0概述12.3特殊的输入字符12.4获得和设置终端属性12.5终端选项标志12.6波特率函数12.7行控制函数12.7.1tcdrain函数12.7.2tcflow函数12.7.3tcflush函数12.7.4tcsendbreak函数12.8终端标识12.8.1ctermid和ctermid_r函数12.8.2isatty函数12.8.3ttyname和ttynme_r函数12.9规范模式12.10非规范模式12.11终端窗口尺寸12.12设备无关的终端控制12.13小结练习第13章  高级I/O13.1引言13.2非阻塞I/O13.3记录锁定13.4使用fcntl的记录锁定13.5使用lockf的记录锁定13.6死锁和活锁13.7锁继承性和释放13.8强制锁与建议锁的比较13.9STREAMSI/0子系统13.10STREAMS消息13.11putmsg和putpmsg函数13.12getmsg和getpmsg函数13.13STREAMSioctl操作13.14使用read和write的STREAMSI/015.14.1从STREAMS设备中读取13.14.2写入到STREAMS设备13.15I/O多路复用13.16select函数13.17poll函数13.18/dev/poll设备驱动程序13.19异步I/O13.20和STREAMS设备文件一起的异步I/O13.21和其他文件一起的异步I/O13.21.1aioread和aiowrite函数13.21.2aiowait函数13.21.3aiocancel函数13.22readv和writev函数13.23sendfile和sendfilevr函数13.23.1sendfile函数13.23.2sendfilev函数13.24内存映射的I/O13.25mmap和munmap函数13.26mprotect函数13.27madvise函数13.28msync函数13.29在内存中锁定页面13.29.1mlock和munlock函数13.29.2mlockall和munlockall函数13.29.3plcck函数13.30mencntl函数13.31内存映射I/O的小结13.32访问控制列表13.33acl和facl函数13.34aclfromtext和acltotext函数13.35aclcheck函数13.36aclfmmmode和acltomode函数13.37aclsort函数13.38扩展的文件属性13.39openat和attrOpen函数13.40fsmtm函数13.41unlinkat函数13.42renameat函数13.43fchownat函数13.44futimesat函数13.45改变扩展属性文件权限13.46小结练习第四部分  进程和进程控制第14章  UNIX进程的环境14.1引言14.2进程启动14.3进程终止14.3.1exit和exit函数14.3.2atexit函数14.4命令行参数14.5环境变量14.5.1getenv函数14.5.2putenv函数14.6C程序的内存布局14.7共享的对象14.8内存分配14.8.1sbrk函数14.8.2Drk函数14.9Setimp和longimp函数14.9.1自动变量、寄存器变量和易变的变量14.9.2_setjmp和_longjlmp函数14.9.3使用自动变量时的常见错误14.10资源限制14.11小结练习第15章  进程控制15.1引言15.2进程标识符15.2.1getpid函数15.2.2getppid函数15.3fork和forkl函数15.4vfork函数15.5exit和exit函数15.6wait函数15.7waitpid函数15.8wait3和wait4函数15.9waitid函数15.10竞争条件15.11ekec函数15.11.1execl函数15.11.2execv函数15.11.3execle函数15.11.4execve函数15.11.5execlp函数15.11.6execvp函数15.11.7exec函数的总结15.12解释程序文件15.13system函数15.14进程记账15.15小结练习第16章  进程关系16.1引言16.2终端登录16.3网络登录16.4进程组16.5会话16.6控制终端16.7tcgetpgrp和tcsetpgrp函数16.8tcgetsid函数16.9作业控制16.10程序的外壳执行16.11孤立的进程组16.12小结练习第17章  信号17.1引言17.2信号概念17.3signal函数17.4不可靠的信号17.5可靠的信号17.6sigset函数17.7pause函数17.8sighold、sigrelse、sigignore和sigpause函数17.9中断的系统调用17.10可重入函数17.11比较SICCHID和SIGCID信号17.12kill、killpg、raise、sigsend和sigsendset函数17.13alarm函数17.14间隔计时器17.15POSIX信号17.16信号集17.17sigprocmask函数17.18sigpending函数17.19sigaction函数17.20sigfpe函数17.21sigsetjmp和siglongimp函数17.22sigsuspend函数17.23sigwait函数17.24abort函数17.25重新审视system函数17.26重新审视sleep函数17.27作业控制信号17.28软件信号17.29备选信号栈17.30系统信号消息17.31sig2str和str2sig函数17.32小结练习第18章  守护进程18.1引言18.2守护程序的特性18.3错误日志18.4STREAMSlog驱动器18.5syslog工具18.6成为守护程序18.7仅启动守护程序的一个副本18.8小结练习第五部分  进程间通信第19章  使用管道和FIFO的进程间通信19.1引言19.2管道19.3popen和pclose函数19.4协作进程19.5FIFO19.6迭代服务器与并行服务器19.7小结练习第20章  SystemV进程间的通信工具20.1引言20.2SystemVIPC的概念20.3SystemV消息队列20.4SystemV信号量集20.5Systemv共享内存20.6性能比较20.7小结练习第21章  高级进程间通信21.1引言21.2传递文件描述符21.3开放的服务器(版本1)21.4客户-服务器连接函数21.5开放的服务器(版本2)21.6小结练习第22章  门22.1引言22.2基本门函数22.3门信息函数22.4门的高级功能22.5门客户或门服务器的提前终止22.6小结练习第六部分  伪终端第23章  伪终端23.1引言23.2伪终端概述23.3打开伪终端设备23.4pty_fork函数23.5pty程序23.6使用pty程序23.7高级特征23.8小结练习附录附录A  国际化和本地化基本知识附录B  BSD源代码兼容性包附录C  函数小结附录D  其他源代码附录E  部分练习题答案

编辑推荐

  本书使用实际案例研究、代码示例和图示,为系统程序员提供了全面、实用的指导,涵盖Solaris操作系统的所有版本,包括版本2.5到版本9,而且与SPARC和X86平台相关。从I/O到IPC、从伪终端到本地化、从进程到门,本书阐述了该环境的特征和微妙之处。

作者简介

本书使用实际案例研究、代码示例和图示,为系统程序员提供了全面、实用的指导,涵盖Solaris操作系统的所有版本,包括版本2.5到版本9,而且与SPARC和X86平台相关。从I/O到IPC、从伪终端到本地化、从进程到门,本书阐述了该环境的特征和微妙之处。

  本书对Solaris系统编程进行了详细介绍。主要内容包括:接口以及UNIX编程中的重要知识、Solaris提供的I/O功能、进程和进程控制、进程间相互进行通信的工具、伪终端等。另外,本书还配备了适当的练习题,有助于读者加深对所学知识的理解。
  本书覆盖面广,讲解透彻,示例丰富,可作为一本Solaris系统编程的独立参考书。


 Solaris系统编程下载



发布书评

 
 


精彩短评 (总计2条)

  •     还在研究中,字体有点小
  •     作为unix环境编程的参考
 

外国儿童文学,篆刻,百科,生物科学,科普,初中通用,育儿亲子,美容护肤PDF图书下载,。 零度图书网 

零度图书网 @ 2024