首頁 搜尋 我的知識庫
系統程式設計 (下册)

系統程式設計 (下册)

作者: 陳金追
出版社: 碁峰
出版日期: 2022/03/18
ISBN-13: 9786263241114
書店 1







內容描述


• 本書英文版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測試過。


目錄大綱


第12章 網路插口程式設計
12-1 基本網路概念
12-2 何謂插口
12-3 計算機網路通信的類型
12-4 使用資料郵包插口的非連線式通信
12-5 通配伺服位址與印地
12-6 使用連播插口的連線式通信
12-7 插口選項
12-8 支援多個平台
12-9 以主機名查取其IP位址
12-10‎ 同時支援‎IPv4與‎IPv6
12-11‎ 取得對手的位址與端口號
12-12 IP不分的程式
12-13 常見的插口函數錯誤與解決之道
12-14 同一計算機內的通信—Unix領域插口
12-15 非同步的插口作業
12-16‎ 發覺對手死掉並自動重新連線
12-17 多播
12-18‎ 多工的伺服器‎
12-19 端口號—保留或不保留呢
12-20‎ 摘要

第13章 插口選項與性能調整
13-1 性能調整
13-2 如何調整各作業系統之核心層參數
13-3 調整插口之緩衝器大小
13-4‎ SO_KEEPALIVE插口選項
13-5 SOLINGER‎插口選項
‎ 13-6 SO
‎REUSEADDR與‎SO‎REUSE‎PORT插口選項
13-7 SO
‎RCVTIMEO與‎SO_‎SNDTIMEO插口選項
13-8 ‎SORCVLOWAT與‎SO‎SNDLOWAT插口選項

第14章 分散式軟體的設計
14-1 印地
14-2 分散式軟體的設計

第15章 計算機網路安全
15-1‎ OpenSSL
15-2 計算機網路安全的方面
15-3‎ 信息完整性
15-4‎ 信息保密一加密與解密
15-5 ‎信息確認
15-6 發送者確認—數位簽字
15-7‎ 公開暗碼‎環境結構(PKI)
15-8 X.509憑證
15-9 產生X.509憑證
15-10‎ SSL‎與TLS
15-11‎ SSL/TLS程式設計
15-12 ‎OpenSSL‎的錯誤處理
15-13‎ 庫存函數的原始碼

第16章 軟體設計原理與程式設計建議
16-1 程式設計的科學,工程及藝術
16-2‎ 設計與開發‎一流的軟體
16-3 軟體設計原理—設計層次的要點
16-‎4 ‎程式設計的建議


作者介紹


作者簡介

陳金追(Jin-Jwei Chen)

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

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






相關書籍

SQL學習手冊 第三版|資料建立、維護與檢索

精通 威力導演 視訊影音剪輯

TQC+ AutoCAD 2023特訓教材:基礎篇(隨書附贈102個精彩繪圖心法動態教學檔)

只要一行指令!FFmpeg應用開發完全攻略