注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網(wǎng)絡操作系統(tǒng)Linux深度探索Linux操作系統(tǒng):系統(tǒng)構建和原理解析

深度探索Linux操作系統(tǒng):系統(tǒng)構建和原理解析

深度探索Linux操作系統(tǒng):系統(tǒng)構建和原理解析

定 價:¥89.00

作 者: 王柏生 著
出版社: 機械工業(yè)出版社
叢編項:
標 簽: 操作系統(tǒng) 計算機與互聯(lián)網(wǎng)

ISBN: 9787111439011 出版時間: 2013-09-01 包裝: 平裝
開本: 16開 頁數(shù): 436 字數(shù):  

內(nèi)容簡介

  《深度探索Linux操作系統(tǒng):系統(tǒng)構建和原理解析》是探索Linux操作系統(tǒng)原理的里程碑之作,在眾多的同類書中獨樹一幟。它顛覆和摒棄了傳統(tǒng)的從閱讀Linux內(nèi)核源代碼著手學習Linux操作系統(tǒng)原理的方式,而是基于實踐,以從零開始構建一個完整的Linux操作系統(tǒng)的過程為依托,指引讀者在實踐中去探索操作系統(tǒng)的本質(zhì)。這種方式的妙處在于,讓讀者先從宏觀上全面認清一個完整的操作系統(tǒng)中都包含哪些組件,各個組件的作用,以及各個組件間的關系,從微觀上深入理解系統(tǒng)各個組件的原理,幫助讀者達到事半功倍的學習效果,這是作者潛心研究Linux操作系統(tǒng)10幾年的心得和經(jīng)驗,能避免后來者在學習中再走彎路。此外,本書還對編譯鏈接技術(尤其是動態(tài)加載和鏈接技術)和圖形系統(tǒng)進行了原理性的探討,這部分內(nèi)容非常珍貴?!渡疃忍剿鱈inux操作系統(tǒng):系統(tǒng)構建和原理解析》一共8章:第1章介紹了如何準備工作環(huán)境。在第2章中構建了編譯工具鏈,這是后面構建操作系統(tǒng)各個組件的基礎。在這一章中,不僅詳細講解了工具鏈的構建過程,而且還通過對編譯鏈接過程的探討,深入討論了工具鏈的組成及各個組件的作用,理解工具鏈的工作原理對理解操作系統(tǒng)至關重要。第3~4章,從零開始構建了一個具備用戶字符界面的最小操作系統(tǒng),詳細講解了構建的過程以及涉及的技術細節(jié)。第5章從理論的角度探討了這一過程,從內(nèi)核的加載、解壓一直討論到用戶進程的加載,包括用戶空間的動態(tài)鏈接器為加載程序所作的努力。第6~7章首先構建了操作系統(tǒng)的基礎圖形系統(tǒng),然后在此基礎上構建了桌面環(huán)境。第8章深入探討了計算機圖形的基礎原理,包含2D和3D程序的渲染、軟件渲染、硬件渲染等內(nèi)容,同時也從操作系統(tǒng)的角度審視了Pipeline。

作者簡介

  王柏生,資深Linux技術專家,精通Linux操作系統(tǒng),對Linux操作系統(tǒng)進行了超過10年的研究。10多年來,先后參與并帶領團隊開發(fā)Linux發(fā)行版、移動操作系統(tǒng)和車載操作系統(tǒng)。不僅深刻領悟了Linux操作系統(tǒng)的原理和本質(zhì),而且對學習Linux操作系統(tǒng)原理的方式和方法也有獨到的認識和見解。

圖書目錄

前  言
第1章 準備基本環(huán)境
1.1 安裝VirtualBox
1.2 創(chuàng)建虛擬計算機
1.3 安裝Linux系統(tǒng)
1.4 使用root用戶
1.5 啟用自動登錄
1.6 掛載實驗分區(qū)
1.7 安裝ssh服務器
1.8 更改網(wǎng)絡模式
1.9 安裝增強模式
1.10 使用Xephyr
第2章 工具鏈
2.1 編譯過程
2.1.1 預編譯
2.1.2 編譯
2.1.3 匯編
2.1.4 鏈接
2.2 構建工具鏈
2.2.1 GNU工具鏈組成
2.2.2 構建工具鏈的過程
2.2.3 準備工作
2.2.4 構建二進制工具
2.2.5 編譯freestanding的交叉編譯器
2.2.6 安裝內(nèi)核頭文件
2.2.7 編譯目標系統(tǒng)的C庫
2.2.8 構建完整的交叉編譯器
2.2.9 定義工具鏈相關的環(huán)境變量
2.2.10 封裝“交叉”pkg-config
2.2.11 關于使用libtool鏈接庫的討論
2.2.12 啟動代碼
第3章 構建內(nèi)核
3.1 內(nèi)核映像的組成
3.1.1 一級推進系統(tǒng)--setup.bin
3.1.2 二級推進系統(tǒng)--內(nèi)核非壓縮部分
3.1.3 有效載荷--vmlinux
3.1.4 映像的格式
3.2 內(nèi)核映像的構建過程
3.2.1 kbuild簡介
3.2.2 構建過程概述
3.2.3 vmlinux的構建過程
3.2.4 vmlinux.bin的構建過程
3.2.5 setup.bin的構建過程
3.2.6 bzImage的組合過程
3.2.7 內(nèi)核映像構建過程總結(jié)
3.3 配置內(nèi)核
3.3.1 交叉編譯內(nèi)核設置
3.3.2 基本內(nèi)核配置
3.3.3 配置處理器
3.3.4 配置內(nèi)核支持模塊
3.3.5 配置硬盤控制器驅(qū)動
3.3.6 配置文件系統(tǒng)
3.3.7 配置內(nèi)核支持ELF文件格式
3.4 構建基本根文件系統(tǒng)
3.4.1 根文件系統(tǒng)的基本目錄結(jié)構
3.4.2 安裝C庫
3.4.3 安裝shell
3.4.4 安裝根文件系統(tǒng)到目標系統(tǒng)
第4章 構建initramfs
4.1 為什么需要initramfs
4.2 initramfs原理探討
4.2.1 掛載rootfs
4.2.2 解壓initramfs到rootfs
4.2.3 掛載并切換到真正的根目錄
4.3 配置內(nèi)核支持initramfs
4.4 構建基本的initramfs
4.5 將硬盤驅(qū)動編譯為模塊
4.5.1 配置devtmpfs
4.5.2 將硬盤控制器驅(qū)動配置為模塊
4.6 自動加載硬盤控制器驅(qū)動
4.6.1 內(nèi)核向用戶空間發(fā)送事件
4.6.2 udev加載驅(qū)動和建立設備節(jié)點
4.6.3 處理冷插拔設備
4.6.4 編譯安裝udev
4.6.5 配置內(nèi)核支持NETLINK
4.6.6 配置內(nèi)核支持inotify
4.6.7 安裝modules.alias.bin文件
4.6.8 啟動udevd和模擬熱插拔
4.7 掛載并切換到根文件系統(tǒng)
4.7.1 掛載根文件系統(tǒng)
4.7.2 切換到根文件系統(tǒng)
第5章 從內(nèi)核空間到用戶空間
5.1 Linux操作系統(tǒng)加載
5.1.1 GRUB映像構成
5.1.2 安裝GRUB
5.1.3 GRUB啟動過程
5.1.4 加載內(nèi)核和initramfs
5.2 解壓內(nèi)核
5.2.1 移動內(nèi)核映像
5.2.2 解壓
5.2.3 重定位
5.3 內(nèi)核初始化
5.3.1 初始化虛擬內(nèi)存
5.3.2 初始化進程0
5.3.3 創(chuàng)建進程1
5.4 進程加載
5.4.1 加載可執(zhí)行程序
5.4.2 進程的投入運行
5.4.3 按需載入指令和數(shù)據(jù)
5.4.4 加載動態(tài)鏈接器
5.4.5 加載動態(tài)庫
5.4.6 重定位動態(tài)庫
5.4.7 重定位可執(zhí)行程序
5.4.8 重定位動態(tài)鏈接器
5.4.9 段RELRO
第6章 構建根文件系統(tǒng)
6.1 初始根文件系統(tǒng)
6.2 以讀寫模式重新掛載文件系統(tǒng)
6.3 配置內(nèi)核支持網(wǎng)絡
6.3.1 配置內(nèi)核支持TCP/IP協(xié)議
6.3.2 配置內(nèi)核支持網(wǎng)卡
6.4 啟動udev
6.5 安裝網(wǎng)絡配置工具并配置網(wǎng)絡
6.6 安裝并配置ssh服務
6.7 安裝procps
6.8 安裝X窗口系統(tǒng)
6.8.1 安裝M4宏定義
6.8.2 安裝X協(xié)議和擴展
6.8.3 安裝X相關庫和工具
6.8.4 安裝X服務器
6.8.5 安裝GPU的2D驅(qū)動
6.8.6 安裝X的輸入設備驅(qū)動
6.8.7 運行X服務器
6.8.8 一個簡單的X程序
6.8.9 配置內(nèi)核支持DRM
6.9 安裝圖形庫
6.9.1 安裝GLib和libffi
6.9.2 安裝ATK
6.9.3 安裝libpng
6.9.4 安裝GdkPixbuf
6.9.5 安裝Fontconfig
6.9.6 安裝Cairo
6.9.7 安裝Pango
6.9.8 安裝libXi
6.9.9 安裝GTK
6.9.10 安裝GTK圖形庫的善后工作
6.9.11 一個簡單的GTK程序
6.10 安裝字體
第7章 構建桌面環(huán)境
7.1 窗口管理器
7.1.1 基本原理
7.1.2 創(chuàng)建編譯腳本
7.1.3 主要數(shù)據(jù)結(jié)構
7.1.4 初始化
7.1.5 為窗口“落戶”
7.1.6 構建窗口裝飾
7.1.7 繪制裝飾窗口
7.1.8 配置窗口
7.1.9 移動窗口
7.1.10 改變窗口大小
7.1.11 切換窗口
7.1.12 最大化/最小化/關閉窗口
7.1.13 管理已存在的窗口
7.2 任務條和桌面
7.2.1 標識任務條的身份
7.2.2 更新任務條上的任務項
7.2.3 激活任務
7.2.4 高亮顯示當前活動任務
7.2.5 顯示桌面
7.2.6 桌面
第8章 Linux圖形原理探討
8.1 渲染和顯示
8.1.1 渲染
8.1.2 顯示
8.2 顯存
8.2.1 動態(tài)顯存技術
8.2.2 Buffer Object
8.3 2D渲染
8.3.1 創(chuàng)建前緩沖
8.3.2 GPU渲染
8.3.3 CPU渲染
8.4 3D渲染
8.4.1 創(chuàng)建幀緩沖
8.4.2 渲染Pipleline
8.4.3 交換前緩沖和后緩沖
8.5 Wayland

本目錄推薦

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