-
>
闖進數學世界――探秘歷史名題
-
>
中醫基礎理論
-
>
當代中國政府與政治(新編21世紀公共管理系列教材)
-
>
高校軍事課教程
-
>
思想道德與法治(2021年版)
-
>
毛澤東思想和中國特色社會主義理論體系概論(2021年版)
-
>
中醫內科學·全國中醫藥行業高等教育“十四五”規劃教材
操作系統設計與實現:基于LOONGARCH架構 版權信息
- ISBN:9787111746683
- 條形碼:9787111746683 ; 978-7-111-74668-3
- 裝幀:平裝-膠訂
- 冊數:暫無
- 重量:暫無
- 所屬分類:>
操作系統設計與實現:基于LOONGARCH架構 本書特色
親自動手設計和實現一個具備基本功能的操作系統內核是學習操作系統的有效方式。本書以作者團隊開發的基于龍芯指令集的MaQueOS為主線,詳細介紹了操作系統的進程管理、內存管理、文件系統、中斷管理和外設驅動等功能的實現方法。本書采用循序漸進的寫作方式,每一章的內容均是在前一章內容基礎上對功能進行迭代而實現的,*終形成一個完整的操作系統。書中提供了各個關鍵函數、功能的源代碼,并附有詳細的說明和注釋,讀者可通過研讀代碼理解操作系統不同功能的實現方法以及各個功能間如何實現協同工作。
操作系統設計與實現:基于LOONGARCH架構 內容簡介
本書以基于LoongArch架構的教學版操作系統MaQueOS為主線,詳細介紹了操作系統內核的設計和實現方法。在介紹MaQueOS的功能的基礎上,依次介紹了顯示器驅動、時鐘中斷、鍵盤驅動、進程0和進程1的創建與運行、進程的掛起與喚醒、硬盤驅動、xtfs文件系統、進程1加載可執行文件、頁例外、進程間通信和文件操作的實現方法。本書結構清晰、循序漸進,既突出操作系統的基本原理,又強調動手實現,適合作為高校計算機類專業操作系統相關的教材,也適合作為技術人員的參考書。
操作系統設計與實現:基于LOONGARCH架構 目錄
前言
第0章 緒論1
0.1 MaQueOS的功能1
0.1.1 進程管理2
0.1.2 內存管理4
0.1.3 文件系統4
0.1.4 外設驅動5
0.1.5 中斷管理5
0.2 系統功能測試5
第1章 顯示器驅動7
1.1 顯示器的顯示原理7
1.1.1 顯示模式7
1.1.2 字符顯示7
1.2 printk函數10
1.2.1 顯示字符串10
1.2.2 字符擦除12
1.2.3 回車換行13
1.2.4 卷屏13
1.2.5 刪除字符14
1.2.6 panic函數15
1.3 本章任務15
第2章 時鐘中斷16
2.1 時鐘中斷初始化16
2.1.1 恒定頻率定時器16
2.1.2 初始化17
2.1.3 開中斷18
2.2 時鐘中斷的處理過程18
2.2.1 中斷硬件18
2.2.2 中斷現場保存與恢復19
2.2.3 中斷處理21
2.2.4 中斷返回21
2.3 本章任務22
第3章 鍵盤驅動23
3.1 物理內存管理23
3.1.1 初始化24
3.1.2 申請25
3.1.3 釋放26
3.2 初始化鍵盤中斷27
3.3 鍵盤中斷的處理過程29
3.4 本章任務32
第4章 進程0的創建與運行34
4.1 虛擬內存管理34
4.1.1 初始化35
4.1.2 建立頁表映射37
4.2 創建進程038
4.3 進程0的運行41
4.3.1 進程0進入用戶態41
4.3.2 TLB重填例外的處理過程42
4.4 時鐘中斷的處理過程44
4.4.1 中斷響應及處理44
4.4.2 中斷返回46
4.5 本章任務46
第5章 進程1的創建與運行48
5.1 創建進程148
5.1.1 系統調用48
5.1.2 fork系統調用51
5.1.3 系統調用返回54
5.2 進程切換55
5.2.1 時鐘中斷55
5.2.2 從進程0切換到進程156
5.2.3 進程1的運行59
5.3 本章任務59
第6章 進程的掛起、喚醒與終止60
6.1 不可中斷掛起與喚醒60
6.1.1 不可中斷掛起62
6.1.2 喚醒不可中斷掛起進程64
6.2 可中斷掛起與喚醒65
6.3 進程終止66
6.3.1 exit系統調用66
6.3.2 釋放進程資源67
6.4 本章實例69
6.5 本章任務72
第7章 硬盤驅動73
7.1 初始化硬盤73
7.2 讀寫硬盤77
7.2.1 發送讀寫命令77
7.2.2 硬盤中斷處理78
7.3 硬盤讀寫實例80
7.3.1 創建硬盤鏡像文件81
7.3.2 讀硬盤82
7.3.3 寫硬盤85
7.4 本章任務86
第8章 xtfs文件系統87
8.1 xtfs文件系統概述87
8.2 格式化xtfs文件系統87
8.2.1 格式化xtfs.img88
8.2.2 格式化實例88
8.3 文件復制89
8.3.1 加載0/1號數據塊90
8.3.2 復制數據塊90
8.3.3 創建數據塊索引表92
8.3.4 初始化inode數據結構93
8.3.5 寫回0/1號數據塊94
8.3.6 復制實例94
8.4 本章任務97
第9章 進程1加載可執行文件98
9.1 掛載xtfs文件系統98
9.2 xt可執行文件100
9.2.1 編譯xt可執行文件100
9.2.2 shell程序102
9.3 加載可執行文件104
9.4 進程1的運行108
9.5 本章實例109
9.6 本章任務109
第10章 頁例外111
10.1 頁無效例外111
10.1.1 觸發頁無效例外112
10.1.2 處理頁無效例外114
10.2 頁修改例外116
10.2.1 觸發頁修改例外118
10.2.2 處理頁修改例外118
10.3 本章實例120
10.4 本章任務122
第11章 進程間通信123
11.1 共享內存123
11.1.1 初始化123
11.1.2 與共享頁建立映射的
虛擬頁125
11.1.3 shmem系統調用127
11.1.4 復制頁表128
11.1.5 釋放頁表129
11.1.6 共享內存實例130
11.2 軟件定時器131
11.2.1 軟件定時器的實現原理131
11.2.2 軟件定時器實例133
11.3 本章任務134
第12章 文件操作135
12.1 創建文件135
12.1.1 創建文件的過程135
12.1.2 創建文件實例137
12.2 寫文件140
12.2.1 打開文件的過程140
12.2.2 寫文件的過程141
12.2.3 關閉文件的過程142
12.2.4 寫文件實例144
12.3 讀文件146
12.3.1 讀文件的過程146
12.3.2 讀文件實例146
12.4 刪除文件147
12.4.1 刪除文件的過程147
12.4.2 刪除文件實例149
12.5 本章任務150
附 錄151
附錄A 實驗環境的搭建151
附錄B LoongArch匯編指令153
附錄C LoongArch控制狀態寄存器157
附錄D MaQueOS庫函數159
附錄E 飛機大戰程序設計163
操作系統設計與實現:基于LOONGARCH架構 作者簡介
周慶國,1973年出生,福建人,理學博士,教授,博士生導師,蘭州谷歌開發者社區(Lanzhou GDG)負責人,現任蘭州大學分布式與嵌入式系統實驗室主任、開源軟件與實時系統工程研究中心副主任。已在國內外學術期刊上發表論文 51 篇(SCI 7 篇,EI 24 篇)。
- >
巴金-再思錄
- >
【精裝繪本】畫給孩子的中國神話
- >
名家帶你讀魯迅:朝花夕拾
- >
伊索寓言-世界文學名著典藏-全譯本
- >
羅曼·羅蘭讀書隨筆-精裝
- >
龍榆生:詞曲概論/大家小書
- >
詩經-先民的歌唱
- >
姑媽的寶刀