分類
電腦資訊 / 程式設計 / 商品介紹

學會Linux/UNIX高級程式設計才叫大師


作者: 趙克佳.沈志宇
出版社: 佳魁資訊A
出版日期: 2016/09/06
ISBN: 9789863793830
頁數: 688

定價: NT$590
優惠價:NT$531


結帳與運送
詳細說明
商品資訊
退換貨說明
相關推薦
詳細說明

內容簡介


學會Linux/UNIX高級程式設計才叫大師

本書遵循最新的〝統一UNIX標準版本4〞,以Linux為平台,系統性地說明了UNIX API各種函數的程式設計方法。本書內容包含UNIX的發展歷史與標準、標準I/O和低階I/O、檔案與目錄操作、處理程序環境與處理程序控制、訊號處理、時間與定時、終端I/O、進階I/O、處理程序之間的通訊、通訊端與網路通訊、多執行緒程式設計。

內容目錄


第01章 UNIX 導論
1.1 UNIX 簡史
1.1.1 UNIX 的誕生
1.1.2 UNIX 的早期發展
1.1.3 BSD UNIX
1.1.4 系統V UNIX
1.1.5 UNIX 的商業化
1.1.6 Linux
1.2 標準
1.2.1 SVID
1.2.2 POSIX
1.2.3 統一UNIX 標準
1.2.4 C 標準
1.3 UNIX 基本概念
1.3.1 程式和處理程序
1.3.2 核心
1.3.3 shell
1.3.4 使用者名稱與使用者ID、使用者群組與群組ID
1.3.5 特權使用者
1.3.6 系統呼叫與函數
1.4 系統函數庫
1.4.1 標頭檔
1.4.2 保留字
1.4.3 特徵測試
1.5 範例程式和編譯環境
1.6 錯誤處理
1.7 系統資訊
1.7.1 機器標識
1.7.2 硬體/ 軟體型態識別
1.8 系統能力限制
1.8.1 一般能力限制值
1.8.2 系統和檔案特徵選項
1.8.3 sysconf()、pathconf() 和 fpathconf() 函
1.9 思考與練習
第02章 標準輸入輸出
2.1 UNIX 輸入輸出基本概念
2.2 流和FILE 物件
2.3 開啟和關閉流
2.4 讀和寫流
2.4.1 字元I/O
2.4.2 行I/O
2.4.3 讀回
2.4.4 區塊I/O
2.5 檔案定位
2.6 檔案結束和錯誤指示器
2.7 流緩衝
2.8 格式I/O
2.8.1 格式輸出
2.8.2 格式輸入
2.9 暫存檔案
2.10 思考與練習
第03章 低階輸入輸出
3.1 檔案描述子的開啟、建立和關閉函數
3.2 read() 和write() 函數
3.3 設定描述子的檔案位置
3.4 dup() 和dup2() 函數
3.5 fdopen() 和fileno() 函數
3.6 檔案控制函數fcntl()
3.6.1 重複檔案描述子呼叫
3.6.2 檔案描述子標籤
3.6.3 檔案狀態標籤
3.7 非阻塞I/O
3.8 readv() 和writev() 函數
3.9 fsync() 和fdatasync() 函數
3.10 思考與練習
第04章 檔案與目錄
4.1 檔案
4.1.1 stat()、fstat() 和lstat()函數
4.2 檔案型態
4.2.1 一般檔案
4.2.2 目錄
4.2.3 連結與link() 函數
4.2.4 符號連結與symlink() 和readlink() 函數
4.2.5 特別檔案
4.2.6 測試檔案的型態
4.3 檔案的擁有者和使用者群組
4.3.1 chown()、fchown() 和lchown() 函數
4.4 檔案規則
4.4.1 檔案存取權限
4.4.2 調整使用者ID 和調整群組ID
4.4.3 sticky 位元
4.4.4 檔案規則位元小結
4.5 確定和改變檔案規則
4.5.1 umask() 函數
4.5.2 chmod() 和fchmod()函數
4.5.3 access() 函數
4.6 檔案大小
4.6.1 截斷檔案
4.7 檔案時間
4.7.1 utime() 和utimes() 函數
4.8 檔案的刪除與重新命名
4.8.1 刪除檔案和目錄
4.8.2 檔案重新命名
4.9 目錄操作
4.9.1 工作目錄
4.9.2 建立目錄
4.9.3 讀取目錄
4.9.4 對目錄流的隨機存取
4.10 思考與練習
第05章 處理程序環境
5.1 main() 函數
5.2 命令列參數
5.2.1 命令列參數的語法約定
5.2.2 掃描命令列中的選項
5.3 環境變數
5.3.1 環境表
5.3.2 存取環境
5.4 終止處理
5.4.1 Exit|Code
5.4.2 終止前的清理
5.4.3 中止程式
5.5 處理程序的儲存空間
5.5.1 處理程序的位址空間
5.5.2 動態儲存裝置分配與釋放
5.5.3 釋放分配的儲存單元
5.6 setjmp() 和longjmp() 函數
5.7 處理程序資源
5.7.1 檢視與設定資源限制
5.7.2 資源使用統計
5.8 使用者資訊
5.8.1 使用者名稱
5.8.2 使用者資料庫
5.8.3 群組資料庫
5.9 處理程序的身份憑證
5.10 調整處理程序的身份
5.11 思考與練習
第06章 處理程序控制
6.1 處理程序標識
6.2 處理程序建立
6.3 執行一個新程式
6.4 等待處理程序完成
6.5 處理程序終止與僵屍處理程序
6.6 system() 函數
6.7 處理程序群組
6.8 階段
6.9 控制終端
6.10 作業控制
6.11 思考與練習
第07章 訊號處理
7.1 訊號概念
7.2 UNIX 訊號
7.2.1 程式錯誤類訊號
7.2.2 程式中止類訊號程式
7.2.3 鬧鈴類訊號
7.2.4 I/O 類訊號
7.2.5 作業控制類訊號
7.2.6 操作錯誤類訊號
7.2.7 其他訊號
7.3 產生訊號
7.3.1 raise() 函數
7.3.2 kill() 函數
7.4 設定訊號的動作
7.4.1 signal() 函數
7.4.2 處理程序啟始時的訊號動作
7.4.3 不可靠訊號
7.4.4 sigaction() 函數
7.5 訊號控制
7.5.1 正常傳回的訊號控制碼
7.5.2 終止處理程序的控制碼
7.6 阻塞訊號
7.6.1 sigset_t 型態和訊號集操作
7.6.2 設定訊號隱藏
7.6.3 檢查擱置訊號
7.7 等待訊號
7.7.1 pause() 函數
7.7.2 sigsuspend() 函數
7.8 使用分開的訊號
7.9 訊號控制碼程式設計技巧
7.9.1 控制碼內非局部控制轉移
7.9.2 可重入函數與非同步訊號安全函數
7.9.3 被訊號中斷的系統呼叫
7.9.4 最小資料
7.10 即時訊號
7.10.1 SA_SIGINFO 標示
7.10.2 發送即時訊號
7.10.3 等待即時訊號
7.11 思考與練習
第08章 時間與定時
8.1 系統時鐘時鐘
8.1.1 time() 函數
8.1.2 gettimeofday() 函數
8.2 時間格式轉換
8.2.1 分解的日曆時間
8.2.2 格式化日期與時間
8.3 CPU 時間與鐘錶時間
8.3.1 clock() 函數
8.3.2 times() 函數
8.4 休眠與定時
8.4.1 sleep() 函數
8.4.2 設定計時器
8.5 即時時鐘與定時
8.5.1 即時時鐘
8.5.2 即時休眠相
8.5.3 即時計時器
8.5.4 建立和刪除即時計時器
8.5.5 設定即時計時器
8.5.6 計時器超期計數
8.6 思考與練習
第09章 終端I/O
9.1 需要改變終端設定的實例
9.2 終端I/O 概述
9.2.1 終端
9.2.2 序列埠
9.2.3 終端裝置檔案
9.2.4 輸入輸出佇列
9.2.5 加工和非加工輸入方式
9.3 GTI 控制介面
9.3.1 termios 資料結構
9.3.2 GTI 控制函數
9.4 終端屬性
9.4.1 輸入方式輸入
9.4.2 輸出方式
9.4.3 控制方式
9.4.4 局部方式
9.4.5 特殊字元
9.4.6 stty 指令
9.5 終端標識
9.6 改變終端屬性
9.7 加工方式與非加工方式輸入
9.7.1 加工方式輸入
9.7.2 非加工方式輸入
9.8 設定串列傳輸速率
9.9 行控制函數
9.10 序列埠程式設計
9.11 思考與練習
第10章 進階I/O1
10.1 檔案鎖
10.1.1 fcntl() 檔案鎖操作
10.1.2 鎖的測試、請求和釋放
10.1.3 檔案鎖與處理程序和檔案的關係
10.1.4 鎖死
10.1.5 建議鎖與強制鎖
10.2 訊號驅動的I/O
10.3 多路轉接I/O
10.3.1 select() 函數
10.3.2 poll() 函數
10.4 非同步I/O
10.4.1 非同步I/O 控制區塊
10.4.2 I/O 完成時的訊號發佈
10.4.3 非同步I/O 的優先順序
10.4.4 非同步I/O 函數
10.4.5 非同步I/O 範例
10.4.6 非同步I/O 注意事項
10.5 儲存映射I/O
10.6 思考與練習
第11章 處理程序間通訊?
11.1 管道
11.1.1 建立管道
11.1.2 父子處理程序間的管道通訊
11.1.3 連接標準輸入和標準輸出的管道
11.1.4 popen() 和pclose() 函數
11.1.5 管道I/O 的不可分割性
11.2 FIFO 特別檔案
11.2.1 建立FIFO
11.2.2 FIFO 操作
11.2.3 FIFO 用於客戶/ 服務通訊
11.3 系統V IPC
11.3.1 關鍵字和標識
11.3.2 IPC 資源描述結構與成員ipc_perm
11.3.3 ipcs 和ipcrm 指令
11.4 訊息佇列
11.4.1 建立和獲得訊息佇列
11.4.2 訊息佇列的查詢、設定和刪除
11.4.3 發送和接收訊息
11.5 共用儲存區段
11.5.1 建立和獲得共用儲存區段
11.5.2 共用儲存區段的查詢、設定和刪除
11.5.3 共用儲存區段的連接和分離
11.6 號誌
11.6.1 建立和獲得號誌標識
11.6.2 號誌的查詢、設定和刪除
11.6.3 號誌操作
11.7 思考與練習
第12章 通訊端及網路通訊
12.1 TCP/IP 協定
12.2 通訊端
12.3 通訊端位址結構
12.3.1 IP 位址
12.3.2 域名位址
12.3.3 服務與通訊埠號
12.3.4 通訊端位址資料結構
12.3.5 位元組順序
12.4 命名通訊端
12.5 通訊端通訊模式
12.6 流通訊端操作
12.6.1 請求連接
12.6.2 接收連接
12.6.3 getsockname() 和getpeername() 函數
12.6.4 多客戶服務
12.6.5 send() 和recv() 函數
12.7 通訊端選項
12.8 頻外資料
12.8.1 TCP 頻外資料
12.8.2 頻外資料的發送和接收
12.8.3 頻外資料標示
12.9 資料通訊端操作
12.9.1 sendto() 和recvfrom()函數
12.9.2 資料通訊端客戶/ 服務範例
12.9.3 使用connect() 函數
12.10 逾時處理
12.11 思考與練習
第13章 執行緒
13.1 執行緒概念
13.1.1 什麼是執行緒
13.1.2 執行緒的好處
13.1.3 Pthreads 執行緒
13.1.4 執行緒標識
13.2 建立執行緒
13.3 終止執行緒
13.3.1 等待中的執行緒終止
13.3.2 可匯合與分離的執行緒
13.4 建立特殊屬性的執行緒
13.5 互斥變數
13.5.1 互斥變數的初始化和銷毀
13.5.2 互斥變數屬性
13.5.3 互斥變數的加鎖與解鎖
13.5.4 互斥變數與spin 鎖
13.6 讀寫鎖
13.6.1 讀寫鎖的初始化和銷毀
13.6.2 讀寫鎖的上鎖與解鎖
13.7 條件變數
13.7.1 建立和銷毀條件變數
13.7.2 條件變數屬性
13.7.3 等待條件變數
13.7.4 喚醒條件變數等待
13.8 思考與練習
第14章 執行緒進階特徵
14.1 執行緒專有資料
14.1.1 執行緒專有資料鍵的建立和刪除
14.1.2 使用執行緒專有資料
14.2 取消執行緒
14.2.1 執行緒的可取消屬性
14.2.2 取消執行緒與取消點
14.2.3 非同步取消的安全性
14.2.4 現場清理
14.3 執行緒排程
14.3.1 執行緒排程競爭範圍
14.3.2 排程策略與優先順序
14.3.3 執行緒排程屬性
14.3.4 動態改變執行緒的排程策略和優先順序
14.4 執行緒與訊號
14.4.1 訊號動作
14.4.2 訊號隱藏
14.4.3 向執行緒發送訊號
14.4.4 等待訊號
14.4.5 一種新的事件通知方法:SIGEV_THREAD
14.5 思考與練習

ISBN: 9789863793830
商品資訊

作者: 趙克佳.沈志宇 出版社: 佳魁資訊A 出版日期: 2016/09/06 ISBN: 9789863793830 頁數: 688
退換貨說明

※ 本店不提供換貨服務,請於下單前確認購買商品項目。(瑕疵品除外)
※ 退貨流程:於到貨後7天內至本店的訂單查詢頁「申請退貨」>墊腳石確認退貨申請>傳送簡訊通知,需供退貨商品正/背/側面照片>宅配人員向您收取退貨商品>退款>結
案。
1. 收到商品後如發現有瑕疵、破損或是配件短缺的狀況,需要辦理退換貨,請於到貨後 7 天內登錄本購物網,於「我的帳戶」頁面申請「換貨」,我們將盡速為您處理。
2. 收到商品後可享有 7 天免費鑑賞期(含例假日),鑑賞期係供您參考、觀賞、品鑑比較。若需退換貨(依照退貨程序辦理退貨)敬請保持原包裝商品的完整,我們完全保
障您的購物權益。
3. 收到退貨申請後,將發送簡訊至您的手機,需提供退貨商品正/背/側面照片並mail至ecservice@tcsb.com.tw,或上傳照片至墊腳石LINE:@tcs.tw,避免因在運送時造成
受損等疑慮發生。

4. 退換貨注意事項:退貨的商品必須必須回復原狀,亦即必須回復至您收到商品時的原始狀態(包含商品本體、配件、內外包裝、說明書、活動贈品等)。
5. 書籍若有封膜,則拆封後不可退貨。及耳機類商品,因屬個人貼身產品,基於個人衛生問題,商品一經拆封使用後恕無法辦理退貨,如欲退貨請勿拆封。
6. 若退貨後的保留商品金額未達免運門檻(全家超商取貨$599/萊爾富超商取貨$450/7-11超商取貨$599、宅配$999、離島宅配$1,600),需支付原訂單出貨運費(全家、萊爾
富及7-11超商$65、宅配$90、離島宅配$120)。
7. 下列情形可能影響您的退貨權利:
    * 隨商品已附上相同之試用品,或在收到影音光碟及軟體前已提供您試聽、試用之機會。
    * 在不影響您檢查商品情形下,您將商品包裝毀損、封條移除、吊牌拆除、貼膠移除或標籤拆除等情形。
    * 在您收到商品之前,已提供您檢查商品之機會。
    * 其他逾越檢查之必要或可歸責於您之事由,致商品有毀損、滅失或變更者。
8. 若您已取得紙本發票或已過營業稅期的發票電子檔,待退貨完成後,客服人員會與您聯絡相關退貨事宜。
9. 請您以送貨廠商使用之包裝紙箱將退貨商品包裝妥當,若原紙箱已遺失,請另使用其他紙箱包覆於商品原廠包裝之外,切勿直接於原廠包裝上黏貼紙張或書寫文字。若原
廠包裝損毀將無法退貨或須將損壞費用於退款中扣抵。
10. 當您申請退換貨後,請主動向貨運人員索取單據,並保留至退換貨完成,以利日後查詢。
11. 墊腳石實體門市、您的取貨超商門市,以及宅配業者無法受理本網路訂單的退換貨,請於本網進行相關退換貨手續。
12. 離島區域之退換貨,需自行自費至郵局進行投遞,寄至墊腳石電商部(320 桃園市中壢區中正路95號5樓)。
13. 海外地區之訂單,未提供退換貨服務。
                
相關推薦