Linux編程白皮書

Linux編程白皮書

《Linux編程白皮書》是由一群Linux高手所寫的,它由五個部分組成——是Linux文檔工程的一個印刷版本。該書描述了關鍵的設計概念,以及系統和Linux核心子系統的概念系統結構和具體的系統結構。

基本信息

簡介

‍《Linux編程白皮書》是由一群Linux高手所寫的,它由五個部分組成——是Linux文檔工程的一個印刷版本。該書描述了關鍵的設計概念,以及系統和Linux核心子系統的概念系統結構和具體的系統結構。全書是從Linux作業系統的心臟——核心開始進行深入介紹的。所介紹的知識包括Linux硬體和軟體基礎、核心機制、進程、模組、結構及原始碼、Linux核心模組編程指南,把應用程式移植到Linux下,以及對網路的討論等等。

目錄

目錄

第二部分 Linux核心模組編程指南

致謝

關於版本1.0.1

關於版本1.1.0

前言

適合閱讀本書的對象

一點說明

第1章 HELLO, WORLD

1.1 核心模組的MAKEFILES檔案

1.2 多重檔案核心模組

第2章字元設備檔案

2.1 多核心版本源檔案

第3章 /PROC檔案系統

第4章 把/PROC用於輸入

第5章 把設備檔案用於輸入(寫和IOCTL)

第6章 啟動參數

第7章 系統調用

第8章 阻塞處理

第9章 替換printk

第10章 任務調度

第11章 中斷處理程式

11.1 INTEL體系結構的鍵盤

第12章 對稱多處理

第13章 常見錯誤

第三部分 Linux程式設計師指南

第1章 LINUX作業系統

第2章 LINUX核心

第3章 LINUXlibc

第4章 系統調用

第5章 "瑞士軍刀":IOCTL

第6章 LINUX進程間通信

6.1 介紹

6.2 半雙工UNIX管道

6.2.1 基本概念

6.2.2 用C語言創建管道

6.2.3 簡便方法

6.2.4 管道的原子操作

6.2.5 關於半雙工管道需要注意的幾個問題

6.3 命名管道(FIFO:先進先出)

6.3.1 基本概念

6.3.2 創建FIFO

6.3.3 FIFO操作

6.3.4 FIFO上的阻塞動作

6.3.5 SIGPIPE信號

6.4 系統V IPC

6.4.1 基本概念

6.4.2 訊息佇列

6.4.3 信號量

6.4.4 共享記憶體

第7章 聲音編程

7.1 內部揚聲器編程

7.2 音效卡編程

第8章 字元單元圖形

8.1 LIBC中的I/O函式

8.1.1 格式化輸出

8.1.2 格式化輸入

8.2 TERMCAP庫

8.2.1 前言

8.2.2 獲得終端描述

8.2.3 查看終端描述

8.2.4 termcap權能

8.3ncurses簡介

8.4 初始化

8.5 視窗

8.6 輸出

8.6.1 格式化輸出

8.6.2 插入字元/行

8.6.3 刪除字元/行

8.6.4 方框和直線

8.6.5 背景字元

8.7 輸入

8.7.1 格式化輸入

8.8 選項

8.8.1 輸出選項

8.8.2 輸入選項

8.8.3 終端屬性

8.8.4 使用選項

8.9 更新終端

8.10 視頻屬性與顏色

8.11 游標和螢幕坐標

8.12 滾動

8.13 小鍵盤

8.14 軟標籤

8.15 雜項

8.16 低級訪問

8.17 螢幕轉儲

8.18 TERMCAP模擬

8.19 TERMINFO函式

8.20 調試函式

8.21 TERMINFO權能

8.21.1 布爾型權能

8.21.2 數值型權能

8.21.3 字元串型權能

8.22 [N]curses函式概述

第9章 I/O連線埠編程

9.1 滑鼠編程

9.2 數據機編程

9.3 印表機編程

9.4 遊戲桿編程

第10章 把應用程式移植到LINUX上

10.1 介紹

10.2 信號處理

10.2.1 SVR4、BSD和POSIX.1下的信號

10.2.2 Linux信號選項

10.2.3 Linux下的信號

10.2.4 Linux支持的信號

10.3 終端I/O

10.4 進程信息和控制

10.4.1 kvm過程

10.4.2 ptrace和/proc檔案系統

10.4.3 Linux下的進程控制

10.5 可移植條件編譯

10.6 補充說明

附錄 以字母順序排列的系統調用

第四部分 Linux核心的概念系統結構

摘要

前言

目標

本部分的難點

本文的組織

第1章 系統結構

1.1 系統概述

1.2 核心的目標

1.3 核心結構的概述

1.4 支持多個開發人員

1.5 系統數據結構

1.5.1 任務列表

1.5.2 記憶體映射

1.5.3 索引節

1.5.4 數據連線

第2章 子系統的系統結構

2.1 進程調度程式系統結構

2.1.1 目標

2.1.2 模組

2.1.3 數據表達

2.1.4 依賴性、數據流和控制流

2.2 記憶體管理程式系統結構

2.2.1 目標

2.2.2 模組

2.2.3 數據表示

2.2.4 數據流、控制流和依賴性

2.3虛擬檔案系統系統結構

2.3.1 目標

2.3.2 模組

2.3.3 數據表示

2.3.4 數據流、控制流和依賴性

2.4 網路接口系統結構

2.4.1 目標

2.4.2 模組

2.4.3 數據表示

2.4.4 數據流、控制流和依賴性

2.5 進程間通信系統結構

第3章 結論

第五部分 Linux核心的具體系統結構

摘要

第1章 前言

1.1 目標

1.2 LINUX介紹

1.3 軟體系統結構的背景知識

1.4 方法與途徑

1.5 適用本書的讀者

1.6 本部分的章節安排

第2章 系統結構

第3章 子系統結構

3.1 進程調度程式

3.1.1 目標

3.1.2 外部接口

3.1.3 子系統描述

3.1.4 數據結構

3.1.5 子系統結構

3.1.6 子系統依賴性

3.2 記憶體管理程式

3.2.1 目標

3.2.2 外部接口

3.2.3 子系統描述

3.2.4 數據結構

3.2.5 子系統結構

3.2.6 子系統依賴性

3.3 虛擬檔案系統

3.3.1 目標

3.3.2 外部接口

3.3.3 子系統描述

3.3.4 設備驅動程式

3.3.5 邏輯檔案系統

3.3.6 模組

3.3.7 數據結構

3.3.8 子系統結構

3.3.9 子系統依賴性

3.4 進程間通信

3.4.1 目標

3.4.2 外部接口

3.4.3 子系統描述

3.4.4 數據結構

3.4.5 子系統結構

3.4.6 子系統依賴性

3.5 網路接口

3.5.1 目標

3.5.2 外部接口

3.5.3 子系統描述

3.5.4 數據結構

3.5.5 子系統結構

3.5.6 子系統依賴性

第4章 結論

4.1 將來的工作

第六部分 附錄

附錄A Linux文檔工程拷貝許可證

附錄B GNU通用公共許可證

詞條圖冊更多圖冊

相關詞條

熱門詞條

聯絡我們