注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)操作系統(tǒng)LinuxLinux系統(tǒng)編程

Linux系統(tǒng)編程

Linux系統(tǒng)編程

定 價:¥109.00

作 者: [瑞典]杰克-本尼·佩爾松(Jack-Benny Persson) 著
出版社: 機械工業(yè)出版社
叢編項:
標(biāo) 簽: 暫缺

ISBN: 9787111716617 出版時間: 2023-01-01 包裝: 平裝-膠訂
開本: 16開 頁數(shù): 字?jǐn)?shù):  

內(nèi)容簡介

  Linux是世界上最流行的開源操作系統(tǒng)。Linux系統(tǒng)編程技術(shù)將使你能夠使用自己的系統(tǒng)程序擴(kuò)展Linux操作 系統(tǒng),并與系統(tǒng)上的其他程序進(jìn)行通信。 本書探討了Linux文件系統(tǒng)及其基本命令、內(nèi)置手冊頁、GNU編譯器集合(GCC)和Linux系統(tǒng)調(diào)用;講述了如何處理程序中的錯誤,以及如何捕獲錯誤并打印錯誤相關(guān)信息;介紹了在系統(tǒng)上讀寫文件的多種方法,包括使用流和文件描述符。隨著學(xué)習(xí)的不斷深入,你將深入研究創(chuàng)建進(jìn)程、創(chuàng)建僵尸進(jìn)程和守護(hù)進(jìn)程,并學(xué)習(xí)使用systemd處理守護(hù)進(jìn)程的方法;了解如何創(chuàng)建共享庫,并探索不同類型的進(jìn)程間通信(IPC);還將學(xué)習(xí)如何使用POSIX線程編寫程序,以及如何使用GNU調(diào)試器(GDB)和Valgrind調(diào)試程序。 學(xué)完本書,你將能夠在Linux系統(tǒng)中開發(fā)自己的系統(tǒng)程序,包括守護(hù)進(jìn)程、工具、客戶端和過濾器。 通過閱讀本書,你將: ◎ 了解如何使用各種系統(tǒng)調(diào)用為Linux系統(tǒng)編寫程序。 ◎ 深入研究POSIX函數(shù)的工作原理。 ◎ 理解并學(xué)會使用信號、管道、IPC和流程管理等關(guān)鍵概念。 ◎ 了解如何集成程序與Linux系統(tǒng)。 ◎ 探索高級主題,例如,文件系統(tǒng)操作、創(chuàng)建共享庫和調(diào)試程序。 ◎ 全面了解如何使用Valgrind調(diào)試程序。

作者簡介

  Jack-Benny Persson是一位來自瑞典的技術(shù)顧問和作家。他撰寫了多本Linux和編程方面的書籍。他對Linux和其他類UNIX系統(tǒng)的熱情始于20年前的一個愛好。從那時起,他就把大部分業(yè)余時間都花在了閱讀Linux技術(shù)資料、完善Linux服務(wù)器以及撰寫Linux管理相關(guān)的書籍上。如今,他在瑞典擁有自己的IT和媒體公司,該公司主要聚焦于Linux技術(shù)。

圖書目錄

第1章 獲取必要的工具并編寫
第一個Linux程序 1
1.1 技術(shù)要求 1
1.2 安裝GCC和GNU Make 2
1.2.1 準(zhǔn)備工作 3
1.2.2 實踐步驟 3
1.2.3 它是如何工作的 4
1.3 安裝GDB和Valgrind 5
1.3.1 準(zhǔn)備工作 5
1.3.2 實踐步驟 5
1.3.3 它是如何工作的 6
1.4 在Linux中編寫一個簡單的
C程序 7
1.4.1 準(zhǔn)備工作 7
1.4.2 實踐步驟 7
1.4.3 它是如何工作的 8
1.4.4 更多 9
1.5 編寫一個解析命令行選項
的程序 10
1.5.1 準(zhǔn)備工作 10
1.5.2 實踐步驟 10
1.5.3 它是如何工作的 12
1.6 在內(nèi)置手冊頁中查找信息 13
1.6.1 準(zhǔn)備工作 13
1.6.2 實踐步驟 14
1.6.3 它是如何工作的 14
1.6.4 更多 15
1.7 搜索手冊以獲取信息 15
1.7.1 準(zhǔn)備工作 15
1.7.2 實踐步驟 15
1.7.3 它是如何工作的 15
1.7.4 更多 16
第2章 使你的程序易于腳本化 17
2.1 技術(shù)要求 18
2.2 返回值以及如何讀取它們 18
2.2.1 準(zhǔn)備工作 18
2.2.2 實踐步驟 18
2.2.3 它是如何工作的 20
2.2.4 更多 21
2.2.5 參考 21
2.3 使用有意義的返回值退出程序 21
2.3.1 準(zhǔn)備工作 21
2.3.2 實踐步驟 21
2.3.3 它是如何工作的 24
2.3.4 更多 25
2.4 重定向標(biāo)準(zhǔn)輸入、標(biāo)準(zhǔn)輸出
和標(biāo)準(zhǔn)錯誤 25
2.4.1 準(zhǔn)備工作 25
2.4.2 實踐步驟 25
2.4.3 它是如何工作的 27
2.4.4 更多 28
2.5 使用管道連接程序 28
2.5.1 準(zhǔn)備工作 28
2.5.2 實踐步驟 28
2.5.3 它是如何工作的 29
2.5.4 更多 30
2.5.5 參考 30
2.6 寫入標(biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯誤 30
2.6.1 實踐步驟 30
2.6.2 它是如何工作的 32
2.6.3 更多 32
2.7 從標(biāo)準(zhǔn)輸入讀取 33
2.7.1 準(zhǔn)備工作 33
2.7.2 實踐步驟 33
2.7.3 它是如何工作的 34
2.7.4 更多 35
2.8 編寫一個管道友好的程序 36
2.8.1 準(zhǔn)備工作 36
2.8.2 實踐步驟 36
2.8.3 它是如何工作的 38
2.8.4 更多 39
2.9 將結(jié)果重定向到文件 39
2.9.1 準(zhǔn)備工作 40
2.9.2 實踐步驟 40
2.9.3 它是如何工作的 43
2.9.4 更多 44
2.10 讀取環(huán)境變量 44
2.10.1 準(zhǔn)備工作 44
2.10.2 實踐步驟 45
2.10.3 它是如何工作的 46
2.10.4 更多 47
第3章 深入探索Linux中的C語言 48
3.1 技術(shù)要求 49
3.2 使用GNU編譯器套件
鏈接庫 49
3.2.1 準(zhǔn)備工作 49
3.2.2 實踐步驟 49
3.2.3 它是如何工作的 52
3.2.4 更多 53
3.3 切換C標(biāo)準(zhǔn) 54
3.3.1 準(zhǔn)備工作 54
3.3.2 實踐步驟 54
3.3.3 它是如何工作的 56
3.3.4 更多 57
3.4 使用系統(tǒng)調(diào)用 57
3.4.1 準(zhǔn)備工作 58
3.4.2 實踐步驟 58
3.4.3 它是如何工作的 60
3.4.4 更多 61
3.5 獲取Linux和類UNIX頭
文件信息 61
3.5.1 準(zhǔn)備工作 61
3.5.2 實踐步驟 62
3.5.3 它是如何工作的 63
3.5.4 更多 63
3.6 定義功能測試宏 63
3.6.1 準(zhǔn)備工作 64
3.6.2 實踐步驟 64
3.6.3 它是如何工作的 67
3.6.4 更多 68
3.7 編譯過程的4個步驟 68
3.7.1 準(zhǔn)備工作 68
3.7.2 實踐步驟 68
3.7.3 它是如何工作的 71
3.8 使用Make編譯 72
3.8.1 準(zhǔn)備工作 72
3.8.2 實踐步驟 73
3.8.3 它是如何工作的 74
3.9 使用GCC選項編寫一個
通用的Makefile 74
3.9.1 準(zhǔn)備工作 74
3.9.2 實踐步驟 75
3.9.3 它是如何工作的 75
3.9.4 更多 75
3.10 編寫一個簡單的Make file 76
 3.10.1 準(zhǔn)備工作 76
 3.10.2 實踐步驟 76
 3.10.3 它是如何工作的 77
3.11 編寫一個更高級的Makefile 77
 3.11.1 準(zhǔn)備工作 78
 3.11.2 實踐步驟 78
 3.11.3 它是如何工作的 82
第4章 處理程序中的錯誤 84
4.1 技術(shù)要求 85
4.2 為什么錯誤處理在系統(tǒng)編程
中很重要 85
4.2.1 準(zhǔn)備工作 85
4.2.2 實踐步驟 85
4.2.3 它是如何工作的 87
4.3 處理常見的錯誤 87
4.3.1 準(zhǔn)備工作 87
4.3.2 實踐步驟 88
4.3.3 它是如何工作的 90
4.4 錯誤處理和errno 90
4.4.1 準(zhǔn)備工作 91
4.4.2 實踐步驟 91
4.4.3 它是如何工作的 92
4.5 處理更多errno宏 93
4.5.1 準(zhǔn)備工作 93
4.5.2 實踐步驟 93
4.5.3 它是如何工作的 94
4

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) hotzeplotz.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號