購物比價找書網找車網
FindBook  
 有 1 項符合

一個64位操作系統的設計與實現

的圖書
一個64位操作系統的設計與實現 一個64位操作系統的設計與實現

作者:田宇 
出版社:人民郵電出版社
出版日期:2018-05-01
語言:簡體中文   規格:平裝 / 680頁 / 16k/ 24.2 x 19.4 x 4.2 cm / 普通級/ 單色印刷 / 1-1
圖書選購
型式價格供應商所屬目錄
 
$ 726
博客來 博客來
作業系統
圖書介紹 - 資料來源:博客來   評分:
圖書名稱:一個64位操作系統的設計與實現

內容簡介

本書講述了一個64位元多核作業系統的自製過程。此作業系統自製過程是先從虛擬平臺構築起一個基礎框架,隨後再將基礎框架移植到物理平臺中進行升級、完善與優化。為了凸顯64位元多核作業系統的特點,物理平臺選用搭載著Intel Core- i7處理器的筆記型電腦。與此同時,本書還將Linux內核的源碼精髓、諸多官方白皮書以及多款常用協議濃縮於其中,可使讀者在讀完本書後能夠學以致用,進而達到理論聯繫實際的目的。

全書共分為16章。第1~2章講述了作業系統的基礎概念和開發作業系統需要掌握的知識;第3~5章在虛擬平臺下快速構建起一個作業系統模型;第6~16章將在物理平臺下對作業系統模型做進一步升級、優化和完善。

本書既適合在校學習理論知識的初學者,又適合在職工作的軟體工程師或有一定基礎的業餘愛好者。


 

作者介紹

田宇,Linux內核愛好者,曾在多家大中型軟體公司從事軟體開發工作,參與過多款高端嵌入式產品的開發研製,主要負責Linux內核和驅動的研發,以及開源操作系統環境的深度定製。
 

目錄

第一部分 作業系統相關知識介紹及環境搭建
第1章 作業系統概述 4
1.1 什麼是作業系統 4
1.2 作業系統的組成結構 4
1.3 編寫作業系統需要的知識 7
1.4 本書作業系統簡介 8
第2章 環境搭建及基礎知識 9
2.1 虛擬機器及開發系統平臺介紹 9
2.1.1 VMware的安裝 9
2.1.2 編譯環境CentOS 6 10
2.1.3 Bochs虛擬機器 11
2.2 組合語言 14
2.2.1 AT&T組合語言格式與Intel組合語言格式 14
2.2.2 NASM編譯器 16
2.2.3 使用組合語言調用C語言的函數 16
2.3 C語言 19
2.3.1 GNU C內嵌組合語言 20
2.3.2 GNU C語言對標準C語言的擴展 23

第二部分 初級篇
第3章 BootLoader引導啟動程式 30
3.1 Boot引導程式 30
3.1.1 BIOS引導原理 31
3.1.2 寫一個Boot引導程式 32
3.1.3 創建虛擬軟碟鏡像檔 36
3.1.4 在Bochs上運行我們的Boot程式 38
3.1.5 載入Loader到記憶體 40
3.1.6 從Boot跳轉到Loader程式 52
3.2 Loader引導載入程式 54
3.2.1 Loader原理 54
3.2.2 寫一個Loader程式 55
3.2.3 從真實模式進入保護模式再到IA-32e模式 65
3.2.4 從Loader跳轉到內核程式 75
第4章 內核層 78
4.1 內核執行頭程式 78
4.1.1 什麼是內核執行頭程式 78
4.1.2 寫一個內核執行頭程式 79
4.2 內核主程序 83
4.3 螢幕顯示 85
4.3.1 在螢幕上顯示色彩 86
4.3.2 在螢幕上顯示log 88
4.4 系統異常 100
4.4.1 異常的分類 101
4.4.2 系統異常處理(一) 102
4.4.3 系統異常處理(二) 109
4.5 初級記憶體管理單元 121
4.5.1 獲得實體記憶體資訊 121
4.5.2 計算可用實體記憶體頁數 123
4.5.3 分配可用實體記憶體頁 126
4.6 中斷處理 142
4.6.1 8259A PIC 142
4.6.2 觸發中斷 148
4.7 鍵盤驅動 152
4.7.1 簡述鍵盤功能 152
4.7.2 實現鍵盤中斷捕獲函數 154
4.8 進程管理 155
4.8.1 簡述進程管理模組 155
4.8.2 PCB 156
4.8.3 init進程 163
第5章 應用層 171
5.1 跳轉到應用層 171
5.2 實現系統調用API 180
5.3 實現一個系統調用處理函數 185

第三部分 高級篇
第6章 處理器體系結構 190
6.1 基礎功能與新特性 190
6.1.1 運行模式 190
6.1.2 通用寄存器 191
6.1.3 CPUID指令 192
6.1.4 標誌寄存器EFLAGS 193
6.1.5 控制寄存器 195
6.1.6 MSR寄存器組 199
6.2 位址空間 199
6.2.1 虛擬位址 200
6.2.2 物理位址 200
6.3 真實模式 200
6.3.1 真實模式概述 201
6.3.2 真實模式的段定址方式 201
6.3.3 真實模式的中斷向量表 201
6.4 保護模式 202
6.4.1 保護模式概述 202
6.4.2 保護模式的段管理機制 206
6.4.3 保護模式的中斷/異常處理機制 214
6.4.4 保護模式的頁管理機制 217
6.4.5 保護模式的位址轉換過程 224
6.5 IA-32e模式 226
6.5.1 IA-32e模式概述 226
6.5.2 IA-32e模式的段管理機制 228
6.5.3 IA-32e模式的中斷/異常處理機制 234
6.5.4 IA-32e模式的頁管理機制 234
6.5.5 IA-32e模式的位址轉換過程 237
第7章 完善BootLoader功能 238
7.1 真實模式的定址瓶頸 238
7.1.1 錯綜複雜的1 MB物理位址空間 238
7.1.2 突破1 MB實體記憶體瓶頸 239
7.1.3 真實模式下的4 GB線性位址定址 240
7.2 獲取物理位址空間資訊 240
7.3 作業系統引導載入階段的記憶體空間劃分 242
7.4 U盤啟動 244
7.4.1 USB-FDD、USB-ZIP和USB-HDD啟動模式的簡介 244
7.4.2 將Boot引導程式移植到U盤中啟動 251
7.5 在物理平臺上啟動作業系統 255
7.6 細說VBE功能的實現 261
7.6.1 VBE規範概述 261
7.6.2 獲取物理平臺的VBE相關資訊 272
7.6.3 設置顯示模式 279
第8章 內核主程序 282
8.1 內核主程序功能概述 282
8.2 作業系統的Makefile編譯腳本 282
8.3 作業系統的kernel.lds連結腳本 286
8.4 作業系統的線性位址空間劃分 289
8.5 獲得處理器的固件資訊 290
第9章 高級記憶體管理單元 297
9.1 SLAB記憶體池 297
9.1.1 SLAB記憶體池概述及相關結構體定義 298
9.1.2 SLAB記憶體池的創建與銷毀 299
9.1.3 SLAB記憶體池中物件的分配與回收 302
9.2 基於SLAB記憶體池技術的通用記憶體管理單元 308
9.2.1 通用記憶體管理單元的初始化函數slab_init 308
9.2.2 通用記憶體的分配函數kmalloc 312
9.2.3 通用記憶體的回收函數kfree 317
9.3 調整物理頁管理功能 321
9.3.1 記憶體管理單元結構及相關函數調整 321
9.3.2 調整alloc_pages函數 323
9.3.3 創建free_pages函數 327
9.4 頁表初始化 330
9.4.1 頁表重新初始化 331
9.4.2 VBE幀緩存區位址重映射 334
第10章 高級中斷處理單元 337
10.1 APIC概述 337
10.2 Local APIC 338
10.2.1 Local APIC的基礎資訊 338
10.2.2 Local APIC整體結構及各功能描述 344
10.3 I/O APIC 352
10.3.1 I/O APIC控制器的基礎資訊 353
10.3.2 I/O APIC整體結構及各引腳功能 356
10.4 中斷控制器的模式選擇與初始化 358
10.4.1 中斷模式 359
10.4.2 Local APIC控制器的初始化 362
10.4.3 I/O APIC控制器的初始化 368
10.5 高級中斷處理功能 375
10.5.1 Linux的中斷處理機制概述 375
10.5.2 實現中斷上半部處理功能 377
第11章 設備驅動程式 382
11.1 鍵盤和滑鼠驅動程式 382
11.1.1 鍵盤和滑鼠控制器 382
11.1.2 完善鍵盤驅動 389
11.1.3 實現滑鼠驅動 398
11.2 硬碟驅動程式 403
11.2.1 硬碟設備初探 403
11.2.2 完善硬碟驅動程式 418
第12章 進程管理 428
12.1 進程管理單元功能概述 428
12.2 多核處理器 429
12.2.1 超執行緒技術與多核技術概述 429
12.2.2 多核處理器間的IPI通信機制介紹 434
12.2.3 讓我們的系統支援多核 437
12.3 進程調度器 464
12.3.1 Linux進程調度器簡介 465
12.3.2 牆上時鐘與計時器 468
12.3.3 內核計時器 479
12.3.4 實現進程調度功能 486
12.4 內核同步方法 498
12.4.1 原子變數 498
12.4.2 信號量 499
12.4.3 完善自旋鎖 501
12.5 完善進程管理單元 503
12.5.1 完善PCB與處理器運行環境 503
12.5.2 完善進程調度器和AP處理器引導程式 508
12.5.3 關於執行緒 514
第13章 檔案系統 516
13.1 檔案系統概述 516
13.2 解析FAT32檔案系統 517
13.2.1 FAT32檔案系統簡介 517
13.2.2 通過實例深入解析FAT32檔案系統 523
13.2.3 實現基於路徑名的檔案系統檢索功能 532
13.3 虛擬檔案系統 552
13.3.1 Linux VFS簡介 552
13.3.2 實現VFS 554
第14章 系統調用API庫 566
14.1 系統調用API結構 566
14.2 基於POSIX規範實現系統調用API庫 567
14.2.1 POSIX規範下的系統調用API簡介 567
14.2.2 升級系統調用模組 568
14.2.3 基礎檔操作的系統調用API實現 574
14.2.4 進程創建的系統調用API實現 599
14.2.5 記憶體管理的基礎系統調用API實現 618
第15章 Shell命令解析器及命令 626
15.1 Shell命令解析器 626
15.1.1 Shell命令解析器概述 626
15.1.2 實現Shell命令解析器 627
15.2 基礎命令 641
15.2.1 重啟命令reboot 641
15.2.2 工作目錄切換命令cd 642
15.2.3 目錄內容顯示命令ls 645
15.2.4 文件查看命令cat 654
15.2.5 程式執行命令exec 655
第16章 一個彩蛋 665

附錄 術語表 676
參考資料 679  
 

詳細資料

  • ISBN:9787115475251
  • 規格:平裝 / 680頁 / 16k / 24.2 x 19.4 x 4.2 cm / 普通級 / 單色印刷 / 1-1
  • 出版地:大陸
贊助商廣告
 
金石堂 - 今日66折
靈界的訊息有聲書第2輯
作者:許添盛
出版社:賽斯文化
出版日期:2013-09-01
66折: $ 581 
金石堂 - 今日66折
三國笑史7:梟雄曹操大爭霸!
作者:林明鋒編
出版社:五南圖書出版股份有限公司
出版日期:2016-01-25
66折: $ 185 
金石堂 - 今日66折
信念疫苗All-in-One--全效心靈救災防疫超值包
作者:許添盛
出版社:賽斯文化
出版日期:2010-01-04
66折: $ 165 
金石堂 - 今日66折
2025ㄇㄚˊ幾手帳+桌曆套組(隨書附贈霧面PVC書套+書籤)
作者:YUKIJI
出版社:春光出版股份有限公司
出版日期:2024-11-09
66折: $ 626 
 
博客來 - 暢銷排行榜
原始碼:成為比爾.蓋茲
出版日期:2025-02-05
$ 553 
Taaze 讀冊生活 - 暢銷排行榜
自學日語 看完這本就能說:專為華人設計的日語教材,50音+筆順+單字+文法+會話一次學會!(附QR CODE音檔)
作者:許心瀠
出版社:語研學院
出版日期:2020-12-10
$ 374 
博客來 - 暢銷排行榜
偽裝的真實之吻 break 上+下(首刷限定版)
出版日期:2025-02-05
$ 357 
Taaze 讀冊生活 - 暢銷排行榜
我獨自升級(9+10)漫畫(特裝版)
作者:漫畫 DUBU(REDICE STUDIO)、原作 Chugong
出版社:知翎文化
出版日期:2025-01-02
$ 882 
 
Taaze 讀冊生活 - 新書排行榜
前世今生靈魂療癒:突破眼前困境,擁抱新生
作者:彌哲、卡琳.史德勒
出版社:方舟文化
出版日期:2025-02-05
$ 336 
金石堂 - 新書排行榜
哈利路亞寶貝 (1)
作者:仔縞樂々
出版社:台灣角川股份有限公司
出版日期:2025-02-20
$ 126 
博客來 - 新書排行榜
特殊傳說Ⅲ【2025珍藏特裝組】
作者:護玄
出版社:蓋亞
出版日期:2025-02-12
$ 702 
金石堂 - 新書排行榜
患上不出道就會死的病1
作者:DS.Back
出版社:知翎文化(欣燦連)
出版日期:2025-02-13
$ 332 
 

©2025 FindBook.com.tw -  購物比價  找書網  找車網  服務條款  隱私權政策