本書的目的是使讀者熟悉現(xiàn)代操作系統(tǒng)的設(shè)計原理和實現(xiàn)問題,因此單純講述概念和理論遠遠不夠。為說明這些概念,同時將它們與真實世界中不得不做出的設(shè)計選擇相關(guān)聯(lián),本書選擇了4個操作系統(tǒng)作為實例:
◆ Windows 8:用于個人計算機、工作站和服務(wù)器的多任務(wù)操作系統(tǒng)。它融入了很多操作系統(tǒng)發(fā)展的*新技術(shù)。此外,Windows是*早采用面向?qū)ο笤磉M行設(shè)計的重要商業(yè)操作系統(tǒng)之一。本書涵蓋了Windows*新版本所采用的技術(shù),包括Windows 8。
◆ Android:Android是為嵌入式設(shè)備特別是手機量身定做的,主要是為了滿足嵌入式環(huán)境的獨特需求。本書介紹了Android的內(nèi)核信息。
◆ UNIX:*初是為小型計算機設(shè)計的多用戶操作系統(tǒng),但后來廣泛用于從微機到超級計算機的各種機器中。本書采用若干版本的UNIX作為實例。FreeBSD融合了很多的現(xiàn)代特征,是一個廣泛應(yīng)用的操作系統(tǒng);Solaris是一個廣泛應(yīng)用的商業(yè)版UNIX系統(tǒng)。
◆ Linux:一個非常普及且源代碼開放的UNIX版本。
選擇這些操作系統(tǒng)的原因是它們之間存在相關(guān)性,同時它們也具有代表性。關(guān)于這些實例操作系統(tǒng)的討論貫穿全書,而非集中于某一章或附錄部分。因此在討論并發(fā)性時,會描述每個實例操作系統(tǒng)的并發(fā)機制,并探討各種設(shè)計選擇的動機。采用真實的例子可加深讀者對相關(guān)章節(jié)中設(shè)計概念的理解。為方便起見,讀者也可在在線文檔中查閱所有實例操作系統(tǒng)的資料。
本書既是關(guān)于操作系統(tǒng)概念、結(jié)構(gòu)和機制的教材,目的是盡可能清楚和全面地展示現(xiàn)代操作系統(tǒng)的本質(zhì)和特點;也是講解操作系統(tǒng)的經(jīng)典教材,不僅系統(tǒng)地講述了操作系統(tǒng)的基本概念、原理和方法,而且以當代*流行的操作系統(tǒng)Windows 8、UNIX、Android、Linux為例,展現(xiàn)了當代操作系統(tǒng)的本質(zhì)和特點。全書共分背景知識、進程、內(nèi)存、調(diào)度、輸入/輸出和文件、嵌入式系統(tǒng)六部分,內(nèi)容包括計算機系統(tǒng)概述、操作系統(tǒng)概述、進程描述和控制、線程、并發(fā)性:互斥和同步、并發(fā):死鎖和饑餓、內(nèi)存管理、虛擬內(nèi)存、單處理器調(diào)度、多處理器和實時調(diào)度、I/O管理和磁盤調(diào)度、文件管理、嵌入式操作系統(tǒng)、虛擬機、計算機安全技術(shù)、分布式處理、客戶/服務(wù)器和集群等。此外,本書配套網(wǎng)站提供了及時、生動的材料。
陳向群,北京大學(xué)信息科學(xué)技術(shù)學(xué)院計算機科學(xué)技術(shù)系教授,博士生導(dǎo)師,主要研究領(lǐng)域為軟件需求工程、知識工程、基于知識的軟件工程、面向服務(wù)的計算。
William Stallings:美國圣母大學(xué)電子工程學(xué)士,麻省理工學(xué)院計算機科學(xué)博士,《密碼術(shù)》期刊編委。美國多家高科技公司執(zhí)行總監(jiān),政府機構(gòu)、計算機軟/硬件供應(yīng)商顧問;曾為各種計算機和操作系統(tǒng)設(shè)計并實現(xiàn)TCP/IP和OSI協(xié)議套件;創(chuàng)建并維護了計算機科學(xué)專業(yè)學(xué)生資源網(wǎng)站ComputerScienceStudent.com。出版圖書17種,內(nèi)容涉及計算機安全、計算機網(wǎng)絡(luò)和計算機系統(tǒng)結(jié)構(gòu)等;在《IEEE進展》《ACM計算評論》和《密碼術(shù)》等期刊上發(fā)表文章多篇;先后12次獲美國年度*佳計算機科學(xué)教科書獎和學(xué)術(shù)作者協(xié)會獎。