●章操作繫統概述(1) 1.1什麼是操作繫統(1) 1.1.1計算機繫統組成(1) 1.1.2操作繫統與計算機繫統(2) 1.2操作繫統的發展歷史(4) 1.2.1無操作繫統(4) 1.2.2單道批處理繫統(4) 1.2.3多道批處理繫統(5) 1.2.4分時繫統(6) 1.2.5實時繫統(7) 1.2.6操作繫統的進一步發展(8) 1.3操作繫統的主要功能(9) 1.3.1處理機管理(9) 1.3.2存儲管理(9) 1.3.3設備管理(10) 1.3.4文件管理(11) 1.3.5用戶接口(12) 1.4操作繫統結構(13) 1.4.1單體結構(14) 1.4.2模塊化結構(14) 1.4.3可擴展內核結構(14) 1.4.4層次結構(15) 1.5操作繫統的特征(15) 1.5.1操作繫統的基本特征(15) 1.5.2操作繫統的新特征(17) 1.6操作繫統介紹(18) 1.6.1Windows操作繫統(19) 1.6.2Linux操作繫統(23) 1.6.3嵌入式操作繫統(24) 1.6.4華為鴻蒙操作繫統(26) 小結(28) 習題1(28) 第2章中斷(29) 2.1中斷的基本概念(29) 2.1.1中斷的作用(30) 2.1.2中斷的類型(31) 2.1.3中斷嵌套、中斷優先級和中斷屏蔽(32) 2.2中斷在操作繫統中的地位(33) 2.3中斷響應過程(34) 2.4中斷處理過程(35) 2.4.1中斷處理流程(35) 2.4.2中斷服務程序簡介(36) 2.5向量中斷(38) 2.6中斷的應用(39) 小結(40) 習題2(41) 第3章進程和線程(42) 3.1進程概述(42) 3.1.1程序的順序執行及其特征(42) 3.1.2程序的並發執行及其特征(43) 3.1.3進程的概念及其特征(45) 3.1.4進程狀態(45) 3.1.5進程控制塊(48) 3.2進程控制(48) 3.2.1進程創建(48) 3.2.2進程終止(49) 3.2.3進程阻塞和喚醒(50) 3.2.4進程掛起和激活(50) 3.3線程(51) 3.3.1線程簡介(51) 3.3.2多線程(52) 3.3.3線程實現與線程模型(54) 3.4互斥和同步(57) 3.4.1並發原理(57) 3.4.2硬件同步(58) 3.4.3信號量機制(60) 3.4.4管程(63) 3.4.5經典同步問題(64) 3.4.6消息傳遞(70) 小結(72) 習題3(72) 第4章調度與死鎖(74) 4.1調度簡介(74) 4.1.1基本概念(74) 4.1.2調度原則(77) 4.2調度算法(78) 4.2.1先來先服務調度算法(79) 4.2.2短作業優先調度算法(79) 4.2.3優先級調度算法(80) 4.2.4時間片輪轉調度算法(81) 4.2.5高響應比優先調度算法(82) 4.2.6多級反饋隊列調度算法(84) 4.2.7實時調度算法(85) 4.2.8多處理器調度算法(85) 4.3死鎖簡介(87) 4.3.1資源(87) 4.3.2死鎖產生的原因和必要條件(88) 4.3.3死鎖的表示方法(91) 4.3.4死鎖的判定(91) 4.4死鎖預防(92) 4.4.1破壞“請求和保持”條件(92) 4.4.2破壞“不剝奪”條件(92) 4.4.3破壞“環路等待”條件(92) 4.5死鎖避免(93) 4.5.1銀行家算法(93) 4.5.2銀行家算法實例(96) 4.6死鎖檢測和恢復(97) 4.6.1死鎖檢測(97) 4.6.2死鎖恢復(97) 4.7處理死鎖的綜合措施(98) 小結(98) 習題4(99) 第5章內存管理(100) 5.1概述(100) 5.1.1存儲層次結構(100) 5.1.2存儲管理的目的和任務(101) 5.2地址重定位(103) 5.2.1基本概念(103) 5.2.2常用重定位技術(103) 5.3分區存儲管理(105) 5.3.1單一連續分區存儲管理(105) 5.3.2固定分區管理(105) 5.3.3可變分區管理(106) 5.3.4分區分配算法(107) 5.4頁式存儲管理(109) 5.4.1頁面變換基本思想(109) 5.4.2地址變換過程(110) 5.4.3快表(111) 5.4.4多級頁表(112) 5.5段式與段頁式存儲管理(113) 5.5.1段式存儲管理(113) 5.5.2段頁式存儲管理(116) 5.6內存擴充技術(118) 5.6.1覆蓋技術(119) 5.6.2交換技術(119) 5.7虛擬存儲管理(121) 5.7.1基本原理(121) 5.7.2請求分頁存儲管理(122) 5.7.3頁面置換算法(124) 5.7.4請求分頁存儲管理繫統性能分析(128) 5.7.5請求分段存儲管理(130) 小結(131) 習題5(131) 第6章設備管理(133) 6.1概述(133) 6.1.1設備管理的目標和任務(133) 6.1.2I/O繫統結構(134) 6.1.3I/O設備分類(136) 6.2I/O繫統控制方式(137) 6.2.1程序直接控制方式(137) 6.2.2中斷控制方式(138) 6.2.3DMA控制方式(138) 6.2.4通道控制方式(139) 6.3I/O軟件的組成(140) 6.3.1I/O軟件設計目標和原則(140) 6.3.2I/O軟件結構(141) 6.3.3設備驅動程序(142) 6.3.4設備無關軟件(144) 6.3.5用戶層軟件(145) 6.4具有通道的設備管理(146) 6.4.1通道(146) 6.4.2通道類型(146) 6.5設備管理相關技術(147) 6.5.1DMA(147) 6.5.2緩衝技術(148) 6.5.3總線技術(150) 6.6磁盤存儲管理(151) 6.6.1磁盤簡述(151) 6.6.2磁盤調度(154) 6.6.3磁盤管理(156) 6.6.4容錯技術(158) 小結(162) 習題6(162) 第7章文件管理(164) 7.1概述(164) 7.1.1文件(164) 7.1.2文件繫統(166) 7.2文件結構(167) 7.2.1邏輯結構(167) 7.2.2物理結構(168) 7.2.3直接文件和Hash結構(170) 7.2.4文件存取方法(171) 7.2.5常見的物理存儲設備(172) 7.3文件目錄(173) 7.3.1文件目錄內容(173) 7.3.2目錄結構(175) 7.3.3目錄查詢(179) 7.4文件共享和文件安全(180) 7.4.1文件共享(180) 7.4.2文件安全(182) 小結(185) 習題7(185) 第8章用戶接口(186) 8.1繫統生成和繫統初啟(186) 8.1.1繫統生成(186) 8.1.2繫統初啟(187) 8.1.3獨立引導的過程(188) 8.2命令接口(189) 8.2.1命令語言(189) 8.2.2命令的類型(190) 8.2.3命令解釋程序(192) 8.3程序接口(193) 8.3.1繫統調用的基本概念(193) 8.3.2繫統調用的類型(196) 8.3.3繫統調用的實現(198) 8.4圖形接口(200) 8.4.1桌面、圖標和超級任務欄(201) 8.4.2窗口(203) 8.4.3對話框(204) 小結(206) 習題8(206) 第9章Android操作繫統(207) 9.1Android操作繫統概述(207) 9.1.1什麼是Android操作繫統(207) 9.1.2Android操作繫統的發展歷程(208) 9.1.3Android操作繫統的特點(211) 9.2Android操作繫統的架構(212) 9.2.1Linux內核層(212) 9.2.2繫統運行庫層(213) 9.2.3應用程序框架層(213) 9.2.4應用程序層(214) 9.3Android應用程序的開發(214) 9.3.1Android應用程序的開發環境(214) 9.3.2Android操作繫統開發組件(218) 9.3.3Android應用程序開發過程(220) 9.4Android操作繫統進程管理(221) 9.4.1Android操作繫統進程概述(222) 9.4.2Android操作繫統線程概述(223) 9.4.3Android操作繫統進程同步(223) 9.4.4Android操作繫統進程通信(225) 9.5Android操作繫統內存管理(226) 9.5.1低內存處理機制(227) 9.5.2匿名共享內存機制(227) 小結(227) 習題9(227) 0章繫統安全(228) 10.1計算機繫統安全概述(228) 10.1.1計算機繫統安全的定義(228) 10.1.2計算機繫統安全的分類(229) 10.1.3計算機威脅的類型(229) 10.1.4信息繫統安全評價標準(230) 10.2程序安全(232) 10.2.1邏輯炸彈(233) 10.2.2緩衝區溢出(233) 10.2.3SQL注入(234) 10.3繫統和網絡安全(235) 10.3.1特洛伊木馬(235) 10.3.2計算機病毒(236) 10.3.3蠕蟲(240) 10.3.4rootkit(241) 10.3.5拒絕服務(242) 10.3.6端口掃描(243) 10.4計算機繫統安全技術(244) 10.4.1身份驗證(244) 10.4.2訪問控制(246) 10.4.3加密技術(248) 小結(249) 習題10(249) 1章Linux繫統(251) 11.1Linux繫統概述(251) 11.1.1UNIX繫統與Linux繫統的歷史(251) 11.1.2設計原則(254) 11.1.3內核模塊(255) 11.2進程管理(256) 11.2.1進程控制塊(257) 11.2.2進程狀態(260) 11.2.3進程控制(260) 11.3進程調度(262) 11.3.1調度方式和調度策略(262) 11.3.2實時調度(263) 11.3.3非實時調度(264) 11.4進程同步(264) 11.4.1原子操作(264) 11.4.2自旋鎖(264) 11.4.3信號量(265) 11.4.4屏障(266) 11.5內存管理(267) 11.5.1物理內存管理(267) 11.5.2虛擬內存管理(269) 11.6設備管理(274) 11.6.1字符設備驅動程序(274) 11.6.2塊設備驅動程序(276) 11.6.3網絡設備驅動程序(278) 11.6.4內核與驅動程序接口(280) 11.7文件管理(281) 11.7.1基本概念(281) 11.7.2虛擬文件繫統(282) 11.7.3文件繫統的繫統調用(289) 11.8繫統安全(290) 11.8.1認證(290) 11.8.2訪問控制(290) 小結(291) 習題11(291) 參考文獻(292)
內容簡介
全面介紹了計算機操作繫統的基本概念、原理和實現方法。全書共分為11章,章介紹了操作繫統的概況;第2章至第8章分別闡述了操作繫統的基本原理、概念和實現方法,包括中斷、進程和線程、調度與死鎖、內存管理、設備管理、文件管理和用戶接口;第9章對當前流行的移動平臺操作繫統Android進行了介紹;0章主要介紹了繫統安全方面的知識,包括程序安全、繫統和網絡安全、計算機繫統安全技術等;1章介紹了另外一個典型的操作繫統——Linux。