系統程式設計(上册)

系統程式設計(上册)
定價:880
NT $ 792
  • 作者:陳金追
  • 出版社:碁峰
  • 出版日期:2022-03-16
  • 語言:繁體中文
  • ISBN10:6263240776
  • ISBN13:9786263240773
  • 裝訂:平裝 / 816頁 / 17 x 23 x 3.79 cm / 普通級 / 單色印刷 / 初版
 

內容簡介

  • 本書英文版System Programming獲得美國最權威的書評機構Bookauthority的推薦,並評為最佳網路程式設計書籍。
  • 作者陳金追為電腦系統軟體世界級的專家!從事軟體研發三十幾年,曾為Oracle開發全新的資料庫復原系統。
  • 想成為世界級的電腦軟體專家,看本書就對了!

  本書有系統地介紹如何以POSIX標準所規定的作業系統程式界面,做跨平台的軟體開發,設計出一流軟體。
  上册第1-11章(系統程式設計):
  • 靜態與動態連結,動態載入。程序管理。軟體開發與軟體工程過程。
  • 檔案輸入/輸出:循序I/O、隨機I/O、向量I/O、非同步I/O、直接I/O。
  • 程序間通信方法:信號、旗誌、共有記憶、插口、有名與無名導管、信息排隊、映入記憶器檔案。
  ‎• Pthreads多程線程式設計:互斥鎖、條件變數、程線特有資料、修復吊死的互斥鎖、程線取消、生産消費問題。
  • 共時控制:更新遺失問題、系統五與POSIX旗誌。以組合語言撰寫自己的上鎖與解鎖函數,比系統所提供的任何共時控制設施,都快上25~80%的速度。如何預防鎖死。

  下冊第12-16章(網路程式設計):
  • 網路插口程式設計:不同種類的插口、客戶伺服程式、連線與非連線式通信、同時支援IPv4與IPv6、多工式伺服程式、多播作業、非同步連線、自動重新再連線、查取端口號。
  • 插口選項:SO_KEEPALIVE、SO_LINGER、SO_REUSEADDR、SO_REUSEPORT 與緩衝器大小 。
  • 性能調整:如何分別在應用軟體與作業系統核心層次,調整網路插口程式的性能。
  • 分散式程式設計:如何解決跨印地(endian)、對位、32與64位元混合、永遠往後且往前相容、版本術、預防癱瘓攻撃。
  • 電腦網路安全:對稱式與不對稱式密碼術。撰寫從事信息紋摘、加密、解密、‎HMAC、數位簽字,‎以及SSL/TLS‎等作業的客戶伺服程式。PKI,如何產生並建立自簽的X.509憑証,如何做不‎同格式憑證的轉換,SSL/TLS 程式設計,如何在SSL/TLS作業時驗證一串的憑證,以及‎如何在SSL/TLS‎上‎做客戶認證等。
  • 如何設計一流軟體。
  • 書中200多個C範例程式,均在Linux、AIX、Solaris、HPUX、Apple Darwin上測試過。網路插口程式也在微軟Windows測試過。
 

作者介紹

作者簡介

陳金追(Jin-Jwei Chen)


  美國麻州大學電腦碩士,博士班肄業,是電腦系統軟體世界級的專家。求學後在美國電腦軟體工業界,從事軟體研發三十幾年,曾為Oracle開發全新的資料庫復原系統。經驗橫跨作業系統核心、資料庫管‎理系統核心、群集系統、網路與分散系統、網路安全、網路管理、應用伺服器與網際網路服務等不同領域。

  作者擁有一項美國大專利,含十六項發明的「無資料遺失之資料庫備存與復原」。他也在1990年代設計與開發由Unix作業系統核心反向叫用使用者空間的命令,進行完全動態載入設備驅動程式的技術,但卻不知申請專利。
 

目錄

第1 章 基本計算機概念
1-1 硬體與軟體,兩者缺一不可
1-2 計算機硬體簡介
1-3 計算機的基本作業
1-4 計算機軟體
1-5 作業系統
1-6 程式,程序與程線
1-7 電腦的階層

第2 章 軟體開發與軟體工程過程
2-1 軟體開發過程
2-2 原始碼控制系統
2-3 軟體釋出過程
2-4 產品建立的不同模式
2-5 產品建立的工具
2-6 退化測試組套
2-7 編譯式與解譯式程式語言
2-8 程式語言的選擇

第3 章 程式與庫存的建立
3-1 何謂庫存
3-2 存檔庫存與共用庫存
3-3 建立程式或庫存的兩個階段
3-4 靜態連結與動態連結
3-5 連結程式如何找到靜態與動態庫存
3-6 應用程式如何找到動態庫存
3-7 動態載入 — 不連結
3-8 編譯、載入與執行時段
3-9 混合式連結
3-10 建立與應用你自己的庫存
3-11 作業指令摘要

第4 章 檔案輸入/輸出
4-1 磁碟的結構
4-2 檔案的一些觀念
4-3 兩種程式界面
4-4 檔案描述與相關之核心層資料結構
4-5 打開與建立檔案
4-6 寫入檔案
4-7 撰寫健全牢固從事I/O 的軟體
4-8 讀取檔案
4-9 循序I/O
4-10 共時程序間共用檔案
4-11 隨機I/O
4-12 向量式I/O
4-13 非同步I/O
4-14 ‎直接I/O
4-15 輸入/輸出緩衝
4-16 檔案的共時更新

第5章 檔案與檔案夾
5-1 檔案的種類與權限
5-2 開創或剔除檔案夾
5-3 建立連結
5-4‎ 建立象徵連結
5-5 剔除或改名一個檔案或檔案夾
5-6 獲取配置參數的值
5-7 取得或改變現有工作檔案夾
5-8 讀取檔案夾元素的狀態資訊
5-9 打開與讀取檔案夾
5-10 改變權限
5-11 改變擁有者
5-12 複製檔案‎描述
5-13 ‎fcntl()函數
5-14 ioctl()函數
5-15 檔案與檔案夾之權限面罩
5-16 SUID,SGID,與黏著位元
5-17 access()與‎faccessat()函數
5-18 更改存取與異動時間

第6章 信號
6-1 信號簡介
6-2 處置信號的行動
6-3‎ 以kill()函數發送信號
6-4 信號面罩—被阻擋著的信號
6-5 接收被擋住,懸而未決的信號
6-6 保留給應用程式的信號
6-7 作業系統所定義的非必要信號
6-8 信號對sleep()函數的影響
6-9 信號的警訊
6-10 信號摘要
6-11 ‎其他的信號函數

第7章 程序
7-1 程序有關的觀念與函數
7-2 以fork()產生一新程序
7-3 母程序等候子程序
7-4‎ 產生新程序以執行不同的程式
7-5 母程序與子程序之溝通
7-6 孤兒與亡魂程序
7-7 程序終止
7-8 getenv()‎與‎sysconf()函數
7-9 ‎system()函數
7-10‎ 程序的資源極限
7-11 其他用戶與群組相關的函數

第8章 Pthreads程式設計
8-1 為何使用多程線程式設計
8-2 基本的Pthreads
8-3 ‎Pthreads‎屬性
8-4 共時控制問題的種類
8-5 互斥鎖
8-6 條件變數
8-7‎ 讀寫鎖
8-8 程線特有的資料
8-9‎ 取消程線
8-10 程線的信號處理
8-11 進一步參考資料
8-12‎ 所有的pthreads‎程式界面
8-13 含程線取消點的函數

第9章 共時控制與上鎖
9-1 共時控制簡介
9-2 系統五IPC資源簡介
9-3 系統五旗誌
9-4 不同類型的鎖
9-5 設計與實作自己的上鎖函數
9-6 POSIX旗誌
9-7 微軟視窗的旗誌與互斥鎖
9-8 鎖死
9-9 和旗誌有關的系統可調參數
9-10 ‎共時控制問題與解決辦法摘要

第10章 共有記憶
10-1 共有記憶簡介
10-2 共有記憶的程式界面
10-3 共有記憶實例

第11章 再談程序間通信方式
11-1 程序間通信摘要
11-2 具名的導管(FIFOs)
11-3 信息排隊
11-4 映入記憶器檔案

 
網路書店 類別 折扣 價格
  1. 新書
    9
    $792