注冊 | 登錄讀書好,好讀書,讀好書!
讀書網-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網絡操作系統(tǒng)其他操作系統(tǒng)Solaris系統(tǒng)編程

Solaris系統(tǒng)編程

Solaris系統(tǒng)編程

定 價:¥99.00

作 者: (加)提爾;云巔工作室譯
出版社: 機械工業(yè)出版社
叢編項: Sun公司核心技術叢書
標 簽: solaris

購買這本書可以去


ISBN: 9787111185710 出版時間: 2006-03-01 包裝: 平裝
開本: 16開 頁數: 855 字數:  

內容簡介

  本書使用實際安全研究、代碼示例和圖示,為系統(tǒng)程序員提供了全面、實用的指導,涵蓋Solaris操作系統(tǒng)的所有版本,包括版本2.5到版本9,而且與SPARC和x86平臺相關。從I/O到IPC、從偽終端到本地化、從進程到門,本書闡述了該環(huán)境的特征和微妙之處。本書主要特點?Solaris系統(tǒng)編程中使用的術語和功能。?基本知識:實用工具函數、文件I/O、標準I/O庫、日期/時間操作、用戶/組、系統(tǒng)信息、資源限制、安全C編程。?I/O深入學習:文件、目錄、文件系統(tǒng)、終端I/O和高級I/O。?進程和進程控制:UNIX進程環(huán)境、關系、信號和守護進程。?進程間通信:管道、FIFO、System V IPC工具、門等。?可移植性向導:介紹Solaris具有的所有特征。

作者簡介

  RichTeer,加拿大不列顛哥倫比亞省基洛納市的一名UNIX顧問,UNIX社區(qū)中一名受人尊重的資深成員,知名的Solaris系統(tǒng)管理和編程專家,持有SCSA、SCNA和SCSA證書。他具有15年的C編程經驗、9年多從事Sun系統(tǒng)工作的經驗,其中有2年是SunMicrosystems公司的技術支持顧問。同時,他也是W.RichlardStevens的暢銷書((UNIXNetworkProgramming》(第2版)的技術審校。

圖書目錄

第1章 引  言
1.1 簡介
1.1.1  在Solaris上編譯C程序
1.2 登錄
1.3 shell
1.4 文件、目錄和文件系統(tǒng)
示例:簡單目錄清單
包含頭文件
1.5 輸入和輸出
1.6 程序、進程和線程
1.7 錯誤處理
1.8 用戶標識
1.9 信號
1.10 UNIX時間值
1.11 系統(tǒng)調用和庫函數
1.12 64位編程概述
1.12.1 編寫純64位的程序
1.12.2 編譯和安裝64位的程序
1.12.3 大文件的編譯環(huán)境
1.12.4 過渡期的大文件編譯環(huán)境
1.13 小結
練習
第2章 Solaris簡史
2.1 引言
2.2 初期:SunOS
2.3 SunOS之后:Solaris
2.4 標準
2.4.1 ANSI/ISO/IEC C
2.4.2 系統(tǒng)V接口定義
2.4.3 IEEE POSIX
2.4.4 開放組的XPG4
2.4.5 單一UNIX規(guī)范
2.5 Solaris 2.5
2.5.1 Solaris 2.5.1
2.6 Solaris 2.6
2.7 Solaris 7
2.8 Solaris 8
2.9 Solaris 9
2.10 Solaris標準遵守情況
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.8 轉換字符串的函數
3.9 把字符串轉換為數字
3.3.10 把數字轉換成字符串
3.4 處理字節(jié)數組
3.4.1 比較字節(jié)數組
3.4.2 復制字節(jié)數組
3.4.3 查找字節(jié)數組
3.5 動態(tài)內存
3.5.1 內存對齊
3.5.2 分配動態(tài)內存
3.5.3 釋放動態(tài)內存
3.6 其他的內存管理包
3.6.1 malloc庫
3.6.2 bsdmalloc庫
3.6.3 mapmalloc庫
3.6.4 watchmalloc共享對象
3.6.5 比較malloc庫
3.7 臨時文件
3.7.1 產生臨時文件名
3.7.2 創(chuàng)建臨時文件
3.8 分析命令行參數
3.9 錯誤報告
3.10 掛起進程
3.11 小結
練習

第4章 基本的文件I/O
4.1 引言
4.2 文件描述符
4.3 open函數

4.6 lseek和llseek函數
4.7 tell函數
4.8 read和pread函數
4.9 write和pwrite函數
4.10 readn和writen函數
4.11 I/O效率
4.12 文件共享
4.13 原子的操作
4.14 dup和dup2函數
4.15 fcntl函數
4.16 ioctl函數
4.17 fdwalk函數
4.18 直接I/O
4.19 /dev/fd文件系統(tǒng)
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/O
5.7 流狀態(tài)
5.8 格式化I/O
  5.8.1 格式輸出
  5.8.2 格式輸入
  5.8.3 格式轉換規(guī)范
  5.8.4 C語言轉義序列
5.9 定位流
5.10 文件流鎖定
  5.10.1 未鎖定的文件流I/O
5.11 緩沖
5.12 標準I/O的效率
5.13 小結
練習
第6章 日期和時間操作
6.1 引言
6.2 轉換時間的復雜性
6.3 獲得當前時間
  6.3.1 difftime函數
6.4 設置當前時間
6.5 獲得當前時區(qū)
6.6 在UNIX時間和日歷時間進行轉換
  6.6.1 localtime和localtime_r函數
  6.6.2 gmtime和gmtime_r函數
  6.6.3 mktime函數
6.7 格式日期I/O
  6.7.1 將日期轉換成格式字符串
  6.7.2 將格式字符串轉換成日期
6.8 小結
6.3 編寫一個程序,顯示世界上不同時區(qū)的當前時間,包括北半球和南半球位置。
第7章 用戶和組
7.1 引言
7.2 用戶名
7.3 用戶ID
7.4 組ID
7.5 組成員資格

7.8 讀取和加密口令
7.9 組文件
7.10 utmpx和wtmpx文件
7.11 utmp和wtmp文件
7.12 lastlog文件
7.13 shells文件
7.14 總結
第8章 系統(tǒng)信息和資源限制
8.1 引言
8.2 系統(tǒng)信息和識別
8.3 系統(tǒng)資源限制
8.4 每個進程的資源限制
8.5 資源控制工具
8.6 資源控制示例
8.7 資源使用信息
8.8 使用/proc文件系統(tǒng)確定資源使用信息
8.9 確定系統(tǒng)的平均負荷
8.10 總結
練習
第9章 安全的C編程
9.1 引言
9.2 緩沖區(qū)溢出
9.3 程序的環(huán)境
9.4 防御性編程
9.5 最小特權原則
9.6 使用chroot“監(jiān)牢”
9.7 編寫安全程序的技巧
9.8 總結
第三部分  輸入/輸出
第10章 文件和目錄
10.1 引言
10.2路徑名組件
10.3 stat、fstat和lstat函數
10.4 文件類型
10.5 設置-用戶-ID和設置-組-ID
10.6 粘著位
10.7 文件訪問權限
10.8 access函數
10.9 umask函數
10.10 chmod和fchmod函數
10.11 chown、fchown和lchown函數
10.12 文件尺寸
  10.12.1 稀疏文件
10.13 文件截取
10.14 文件系統(tǒng)
10.15 link和unlink函數
10.16 remove和rename函數
10.17 符號鏈接
10.18 解析可能包含符號鏈接的路徑
  10.18.1 resolvepath函數
  10.18.2 realpath函數
10.19 symlink和readlink函數
10.20 文件時間
10.21 改變文件的訪問和修改時間
  10.21.1 utime函數
  10.21.2 utimes函數
10.22 創(chuàng)建和移除目錄
10.23 讀取目錄
  10.23.1 opendir和fdopendir函數
  10.23.2 readdir和readdir_r函數
  10.23.3 seekdir、rewinddir和telldir函數
  10.23.4 closedir函數
  10.23.5 ftw和nftw函數
10.24 chdir、fchdir和getcwd函數
10.25 chroot和fchroot函數
10.26 特殊文件
10.27 sync和fsync函數
10.28 綜合討論
10.29 小結
練習
第11章 使用文件系統(tǒng)
11.1 引言
11.2 磁盤術語
11.3 已掛載的文件系統(tǒng)表
  11.3.2 hasmntopt函數
  11.3.3 resetmnttab函數
  11.3.4 putmntent函數
11.4 mntfs文件系統(tǒng)ioctl命令
11.5 文件系統(tǒng)默認值
  11.5.1 getvfsent系列函數
  11.5.2 添加項到/etc/vfstab
11.6 掛載和卸載文件系統(tǒng)
  11.6.1 mount函數
  11.6.2 umount和umount2函數
11.7 獲得文件系統(tǒng)的狀態(tài)
  11.7.1 statvfs和fstatvfs函數
  11.7.2 ustat函數
11.8 讀取文件系統(tǒng)數據結構
  11.8.1 超級塊
  11.8.2 信息節(jié)點表
  11.8.3 柱面組
11.9 總結
練習
第12章 終端I/O
12.1 引言
12.2 終端I/O概述
12.3 特殊的輸入字符
12.4 獲得和設置終端屬性
12.5 終端選項標志
  12.5.1 stty命令
12.6 波特率函數
12.7 行控制函數
  12.7.1 tcdrain函數
  12.7.2 tcflow函數
  12.7.3 tcflush函數
  12.7.4 tcsendbreak函數
12.8 終端標識
  12.8.1 ctermid和ctermid_r函數
  12.8.2 isatty函數
  12.8.3 ttyname和ttyname_r函數
12.9 規(guī)范模式
12.10 非規(guī)范模式
12.11 終端窗口尺寸
12.12 設備無關的終端控制
12.13 小結
練習
第13章 高級I/O
13.1 引言
13.2 非阻塞I/O
13.3 記錄鎖定
13.4 使用fcntl的記錄鎖定
13.5 使用lockf的記錄鎖定
13.6 死鎖和活鎖
13.7 鎖繼承性和釋放
13.8 強制鎖與建議鎖的比較
13.9 STREAMS I/O子系統(tǒng)
  13.9.1 isastream函數
13.10 STREAMS消息
13.11 putmsg和putpmsg函數
13.12 getmsg和getpmsg函數
13.13 STREAMS ioctl操作
13.14 使用read和write的STREAMS I/O
  13.14.1 從STREAMS設備中讀取
  13.4.2 寫入到STREAMS設備
13.15 I/O多路復用
13.16 select函數
13.17 poll函數
13.18 /dev/poll設備驅動程序
13.19 異步I/O
13.20 和STREAMS設備文件一起的異步I/O
13.21 和其他文件一起的異步I/O
  13.21.1 aioread和aiowrite函數
  13.21.2 aiowait函數
  13.21.3 aiocancel函數
13.22 readv和writev函數
13.23 sendfile和sendfilev函數
  13.23.1 sendfile函數
  13.23.2 sendfilev函數
13.24 內存映射的I/O
13.25 mmap和munmap函數
13.26 mprotect函數
13.27 madvise函數
13.28 msync函數
13.29 在內存中鎖定頁面
  13.29.1 mlock和munlock函數
  13.29.2 mlockall和munlockall函數
  13.29.3 plock函數
13.30 memcntl函數
13.31 內存映射I/O的小結
13.32 訪問控制列表
13.33 acl和facl函數
13.34 aclfromtext和acltotext函數
13.35 aclcheck函數
13.36 aclfrommode和acltomode函數
13.37 aclsort函數
13.38 擴展的文件屬性
13.39 openat和attropen函數
13.40 fstatat函數
13.41 unlinkat函數
13.42 renameat函數
13.43 fchownat函數
13.44 futimesat函數
13.45 改變擴展屬性文件權限
13.46 小結
練習
第四部分 進程和進程控制
第14章 UNIX進程的環(huán)境
14.1 引言
14.2 進程啟動
  14.2.1 main函數
14.3 進程終止
  14.3.1 exit和_exit函數
  14.3.2 atexit函數
14.4 命令行參數
  14.4.1 getexecname函數
14.5 環(huán)境變量
  14.5.1 getenv函數
  14.5.2 putenv函數
14.6 C程序的內存布局
  14.6.1 查找程序中最近的位置
14.7 共享的對象
14.8 內存分配
  14.8.1 sbrk函數
  14.8.2 brk函數
14.9 setjmp和longjmp函數
  14.9.1 自動變量、寄存器變量和易變的變量
  14.9.2 _setjmp和_longjmp函數
  14.9.3 使用自動變量時的常見錯誤
14.10 資源限制
14.11 小結
練習
第15章 進程控制
15.1 引言
15.2 進程標識符
  15.2.1 getpid函數
  15.2.2 getppid函數
15.3 fork和forkl函數
  15.3.1 通過fork的文件共享
15.4 vfork函數
15.5 exit和_exit函數
15.6 wait函數
15.7 waitpid函數
15.8 wait3和wait4函數
15.9 waitid函數
15.10 競爭條件
15.11 exec函數
  15.11.1 execl函數
  15.11.2 execv函數
  15.11.3 execle函數
  15.11.4 execve函數
  15.11.5 execlp函數
  15.11.6 execvp函數
  15.11.7 exec函數的總結
15.12 解釋程序文件
15.13 system函數
15.14 進程記帳
15.15 小結
練習
第16章 進程關系
16.1 引言
16.2 終端登錄
16.3 網絡登錄
16.4 進程組
  16.4.1 創(chuàng)建或連接進程組
16.5 會話
  16.5.1 創(chuàng)建新的會話
16.6 控制終端
16.7 tcgetpgrp和tcsetpgrp函數
16.8 tcgetsid函數
16.9 作業(yè)控制
16.10 程序的外殼執(zhí)行
16.11 孤立的進程組
16.12 小結
練習
第17章 信號
17.1 引言
17.2 信號概念
17.3 signal函數
17.3.1 進程啟動
17.4 不可靠的信號
17.5 可靠的信號
17.6 sigset函數
17.7 pause函數
17.8 sighold、sigrelse、sigignore和sigpause函數
17.9 中斷的系統(tǒng)調用
17.10 可重入函數
17.11 比較SIGCHLD和SIGCLD信號
17.12 kill、killpg、raise、sigsend和sigsendset函數
17.12.1 kill函數
17.12.2 killpg函數
17.12.3 raise函數
17.12.4 sigsend和sigsendset函數
17.13 alarm函數
17.14 間隔計時器
17.15 POSIX信號
17.16 信號集
17.17 sigprocmask函數
17.18 sigpending函數
17.19 sigaction函數
17.20 sigfpe函數
17.21 sigsetjmp和siglongjmp函數
17.22 sigsuspend函數
17.23 sigwait函數
17.24 abort函數
17.25再談system函數
17.26 重新審視sleep函數
12.27 作業(yè)控制信號
17.28 軟件信號
17.29 備選信號棧
17.30 系統(tǒng)信號消息
17.31 sig2str和str2sig函數
17.32 小結
練習
第18章 守護進程
18.1  簡介
18.2 守護程序的特性
18.3  錯誤日志
18.4  STREAMS log驅動器
18.5  syslog工具
18.6  成為守護程序
18.7僅啟動守護程序的一個副本
18.8 結語
練習
第五部分  進程間通信
第19章 使用管道和FIFO的進程間通信
19.1 簡介
19.2管道
19.3 popen和pclose函數
19.4 協(xié)作進程
19.5 FIFO
19.6 迭代服務器VS并行服務器
19.7 小結
練習
第20章  System V進程間的通信工具
20.1 簡介
20.2 System V IPC的概念
20.3 System V消息隊列
20.4 System V 信號量集
20.5 System V 共享內存
20.6 性能比較
20.7 小結
練習
第21章 高級進程間通信
21.1 引言
21.2 傳遞文件描述符
21.3 打開的服務器(版本1)
21.4 客戶服務器連接函數
21.5 打開的服務器(版本2)
練習
第22章 門
22.1 引言
22.2 基本門函數
22.3 門信息函數
22.4 門高級功能
22.5 門客戶或服務器的提前終止
22.6 小結
第23章 偽終端
23.1 引言
23.2 概述
23.3 打開偽終端設備
23.4 pty_fork函數
23.5 pty程序
23.6 使用pty程序
23.7 高級特征
23.8 小結
練習
附錄A 國際化和本地化基本知識
附錄B  BSD源代碼兼容性包
附錄C 函數小結
附錄D 其他源代碼
附錄E 部分練習題答案

本目錄推薦

掃描二維碼
Copyright ? 讀書網 www.stefanvlieger.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網安備 42010302001612號