計(jì)算機(jī)操作系統(tǒng)實(shí)驗(yàn)與實(shí)踐

出版時(shí)間:2010-9  出版社:清華大學(xué)出版社  作者:秦明,李波 編著  頁數(shù):270  
Tag標(biāo)簽:無  

前言

“計(jì)算機(jī)操作系統(tǒng)”是一門重要的專業(yè)基礎(chǔ)課,也是計(jì)算機(jī)專業(yè)的學(xué)位課和考研課程。該課程涉及概念較多,內(nèi)容抽象,很多初學(xué)者常感到不易理解。想要學(xué)好該課程,實(shí)驗(yàn)環(huán)節(jié)尤為重要。選擇一本適合的實(shí)驗(yàn)教材,對于學(xué)習(xí)者非常重要。我們認(rèn)為,教材并非難度大、有深度、面面俱到就是最好;教材應(yīng)該和學(xué)習(xí)者的基礎(chǔ)和層次緊密相關(guān)。目前關(guān)于操作系統(tǒng)的實(shí)驗(yàn)教材不多,尤其是同時(shí)提供Linux和windows兩種主流操作系統(tǒng)實(shí)驗(yàn)內(nèi)容的實(shí)驗(yàn)教材更少。我們希望能夠擁有一本適合學(xué)生層次,同時(shí)具備windows和Linux兩種主流操作系統(tǒng)內(nèi)容的實(shí)驗(yàn)教材,該教材能夠?qū)W(xué)生的實(shí)驗(yàn)方向有所指引、對實(shí)驗(yàn)過程有適當(dāng)提示和引導(dǎo),同時(shí),也能夠充分調(diào)動學(xué)生的積極性、發(fā)揮他們的主觀能動性?;谝陨险J(rèn)識,我們編寫了本教材。本教材是與一般高校計(jì)算機(jī)專業(yè)(本科生)操作系統(tǒng)原理這門專業(yè)課相配套的實(shí)驗(yàn)指導(dǎo)書,主要介紹了基于Windows操作系統(tǒng)內(nèi)核和Linux操作系統(tǒng)內(nèi)核的操作系統(tǒng)理論課程實(shí)驗(yàn)和課程設(shè)計(jì)的主要實(shí)驗(yàn)內(nèi)容,對操作系統(tǒng)的5大管理功能——進(jìn)程管理、資源管理、存儲管理、設(shè)備管理、文件管理進(jìn)行了各種模擬實(shí)驗(yàn),通過這些模擬實(shí)驗(yàn),學(xué)生能更深入地理解操作系統(tǒng)管理計(jì)算機(jī)各類資源的方法,對操作系統(tǒng)原理有更深刻的認(rèn)識和體會。本教材部分內(nèi)容已在教學(xué)實(shí)踐中多次內(nèi)部使用,讀者對象定位在一般高校本科生,注重應(yīng)用,語言通俗易懂。為了使讀者能更好地理解這些實(shí)驗(yàn)的目的,本書還對大多數(shù)實(shí)驗(yàn)的實(shí)驗(yàn)結(jié)果進(jìn)行深入分析和總結(jié),力圖使學(xué)生通過各個(gè)實(shí)驗(yàn)來更好地理解操作系統(tǒng)管理計(jì)算機(jī)系統(tǒng)各類資源的機(jī)理。與一般教材不同,本教材對實(shí)驗(yàn)進(jìn)行啟發(fā)式引導(dǎo),并不給出全部參考源代碼,而是給出實(shí)驗(yàn)步驟提示。

內(nèi)容概要

“計(jì)算機(jī)操作系統(tǒng)”是一門非常重要的專業(yè)課程,本教材所介紹的“基于Windows和Linux內(nèi)核的操作系統(tǒng)實(shí)驗(yàn)體系”可使學(xué)生對于目前應(yīng)用面最廣的Windows和Linux操作系統(tǒng)的內(nèi)部原理有更深入的理解。整個(gè)實(shí)驗(yàn)體系分別架構(gòu)在Windows和Linux這兩個(gè)內(nèi)核的基礎(chǔ)上,并按照操作系統(tǒng)的進(jìn)程管理、資源管理、存儲管理、設(shè)備管理和文件管理設(shè)計(jì)相應(yīng)的模擬實(shí)驗(yàn)。    本教材分為上下兩篇,上篇介紹基于Windows內(nèi)核的圍繞操作系統(tǒng)5大管理功能的各個(gè)實(shí)驗(yàn),共5章,每章通過一個(gè)典型的實(shí)驗(yàn)對操作系統(tǒng)的其中一個(gè)管理功能進(jìn)行模擬;下篇除了介紹基于Linux內(nèi)核的圍繞操作系統(tǒng)5大管理功能的各個(gè)實(shí)驗(yàn)之外,還介紹了Linux socket編程實(shí)驗(yàn)(第16章)以及Linux操作系統(tǒng)的預(yù)備實(shí)驗(yàn)(第7章和第8章),其余各章分別圍繞操作系統(tǒng)的5大管理功能分別介紹了相應(yīng)的模擬實(shí)驗(yàn)。    本教材所介紹的實(shí)驗(yàn)幾乎涵蓋了操作系統(tǒng)所有的重要原理和機(jī)制。本教材既可作為大專院校、計(jì)算機(jī)職業(yè)??茖W(xué)?;蛘唠娮宇惛鲗I(yè)“操作系統(tǒng)”的實(shí)驗(yàn)教學(xué)課程教材,也可供從事計(jì)算機(jī)方向研究的專業(yè)技術(shù)人員使用。

書籍目錄

上篇  Windows操作系統(tǒng)實(shí)驗(yàn)與實(shí)踐 第1章  生產(chǎn)者-消費(fèi)者實(shí)驗(yàn)   1.1  實(shí)驗(yàn)?zāi)康摹? 1.2  預(yù)備知識     1.2.1  基本概念     1.2.2  Windows SDK簡介     1.2.3  并發(fā)程序設(shè)計(jì)     1.2.4  Windows程序設(shè)計(jì)簡介     1.2.5  API函數(shù)     1.2.6  相關(guān)函數(shù)   1.3  實(shí)驗(yàn)內(nèi)容   1.4  實(shí)驗(yàn)指導(dǎo)     1.4.1  程序流程圖     1.4.2  參考部分源程序代碼     1.4.3  程序運(yùn)行結(jié)果     1.4.4  簡要分析和說明     1.4.5  深入探討和研究 第2章  進(jìn)程死鎖模擬實(shí)驗(yàn)   2.1  實(shí)驗(yàn)?zāi)康摹? 2.2  預(yù)備知識     2.2.1  基本概念     2.2.2  句柄簡介     2.2.3  內(nèi)核對象簡介     2.2.4  Windows API簡介       2.2.5  相關(guān)函數(shù)   2.3  實(shí)驗(yàn)內(nèi)容   2.4  實(shí)驗(yàn)指導(dǎo)     2.4.1  程序流程圖     2.4.2  參考程序源代碼     2.4.3  程序運(yùn)行結(jié)果及簡要分析     2.4.4  深入探討和研究 第3章  頁式存儲管理部分功能模擬實(shí)驗(yàn)   3.1  實(shí)驗(yàn)?zāi)康摹? 3.2  基本概念     3.2.1  虛擬存儲器     3.2.2  程序的局部性原理   3.3  實(shí)驗(yàn)內(nèi)容   3.4  實(shí)驗(yàn)指導(dǎo)     3.4.1  實(shí)驗(yàn)步驟     3.4.2  程序流程圖     3.4.3  參考部分源程序代碼     3.4.4  程序運(yùn)行結(jié)果及簡要分析     3.4.5  深入探討和研究 第4章  設(shè)備管理模擬實(shí)驗(yàn)   4.1  實(shí)驗(yàn)?zāi)康摹? 4.2  預(yù)備知識     4.2.1  基本概念     4.2.2  設(shè)備處理程序     4.2.3  Windows設(shè)備驅(qū)動程序簡介     4.2.4  相關(guān)函數(shù)   4.3  實(shí)驗(yàn)內(nèi)容   4.4  參考源程序代碼 第5章  文件管理模擬實(shí)驗(yàn)   5.1  實(shí)驗(yàn)?zāi)康摹? 5.2  預(yù)備知識     5.2.1  文件的組織結(jié)構(gòu)     5.2.2  文件存儲空間的管理     5.2.3  文件目錄管理     5.2.4  文件系統(tǒng)的接口     5.2.5  相關(guān)函數(shù)   5.3  實(shí)驗(yàn)內(nèi)容   5.4  實(shí)驗(yàn)指導(dǎo)     5.4.1  實(shí)現(xiàn)文件基本操作的源程序代碼(僅供參考)     5.4.2  實(shí)現(xiàn)文件屬性操作的源程序代碼(僅供參考)下篇  Linux操作系統(tǒng)實(shí)驗(yàn)與實(shí)踐 第6章  預(yù)備知識   6.1  Red hat Linux簡介   6.2  Ubuntu簡介     6.2.1  安裝與設(shè)置Ubuntu     6.2.2  Ubuntu常用服務(wù)安裝   6.3  Linux的特性   6.4  Linux操作系統(tǒng)的核心結(jié)構(gòu)   6.5  Linux操作系統(tǒng)的特點(diǎn) 第7章  初步使用Linux   7.1  實(shí)驗(yàn)?zāi)康摹? 7.2  實(shí)驗(yàn)指導(dǎo)     7.2.1  C語言使用簡介     7.2.2  文件編輯器vi簡介     7.2.3  GNU C編譯器     7.2.4  gdb調(diào)試工具   7.3  實(shí)驗(yàn)基本原理   7.4  練習(xí)程序 第8章  系統(tǒng)調(diào)用   8.1  實(shí)驗(yàn)?zāi)康摹? 8.2  實(shí)驗(yàn)基本原理   8.3  實(shí)驗(yàn)參考程序   8.4  提高與深化 第9章  進(jìn)程創(chuàng)建   9.1  實(shí)驗(yàn)?zāi)康摹? 9.2  實(shí)驗(yàn)內(nèi)容   9.3  實(shí)驗(yàn)指導(dǎo)     9.3.1  進(jìn)程的基本概念     9.3.2  進(jìn)程映像     9.3.3  進(jìn)程所涉及的系統(tǒng)調(diào)用   9.4  參考程序源代碼   9.5  運(yùn)行結(jié)果及分析   9.6  深入理解fork() 第10章  進(jìn)程控制實(shí)驗(yàn)   10.1  實(shí)驗(yàn)?zāi)康摹? 10.2  實(shí)驗(yàn)內(nèi)容   10.3  實(shí)驗(yàn)指導(dǎo)     10.3.1  實(shí)驗(yàn)所涉及的系統(tǒng)調(diào)用     10.3.2  參考源程序代碼     10.3.3  深入分析和討論 第11章  進(jìn)程互斥實(shí)驗(yàn)   11.1  實(shí)驗(yàn)?zāi)康呐c實(shí)驗(yàn)內(nèi)容     11.1.1  實(shí)驗(yàn)?zāi)康摹?   11.1.2  實(shí)驗(yàn)內(nèi)容   11.2  實(shí)驗(yàn)指導(dǎo)     11.2.1  實(shí)驗(yàn)所涉及的系統(tǒng)調(diào)用     11.2.2  部分源程序代碼     11.2.3  運(yùn)行結(jié)果及分析   11.3  提高與深化 第12章  進(jìn)程同步實(shí)驗(yàn)   12.1  實(shí)驗(yàn)?zāi)康摹? 12.2  實(shí)驗(yàn)的基本原理     12.2.1  PV操作的基本概念     12.2.2  Linux的進(jìn)程同步原語   12.3  參考源程序 第13章  進(jìn)程通信實(shí)驗(yàn)   13.1  信號機(jī)制     13.1.1  實(shí)驗(yàn)?zāi)康摹?   13.1.2  實(shí)驗(yàn)內(nèi)容     13.1.3  實(shí)驗(yàn)指導(dǎo)     13.1.4  本次實(shí)驗(yàn)所涉及的中斷調(diào)用     13.1.5  部分源程序代碼     13.1.6  源程序分析及思考   13.2  進(jìn)程管道通信     13.2.1  實(shí)驗(yàn)?zāi)康摹?   13.2.2  實(shí)驗(yàn)內(nèi)容     13.2.3  實(shí)驗(yàn)指導(dǎo)     13.2.4  部分源程序代碼及結(jié)果分析   13.3  消息的發(fā)送與接收     13.3.1  實(shí)驗(yàn)?zāi)康摹?   13.3.2  實(shí)驗(yàn)內(nèi)容     13.3.3  實(shí)驗(yàn)指導(dǎo)     13.3.4  部分源程序代碼     13.3.5  運(yùn)行結(jié)果簡要分析和說明   13.4  共享存儲區(qū)通信     13.4.1  實(shí)驗(yàn)?zāi)康摹?   13.4.2  實(shí)驗(yàn)內(nèi)容     13.4.3  實(shí)驗(yàn)指導(dǎo)     13.4.4  部分源程序代碼     13.4.5  源程序運(yùn)行結(jié)果簡單分析 第14章  存儲管理一頁面置換算法模擬   14.1  實(shí)驗(yàn)?zāi)康摹? 14.2  實(shí)驗(yàn)基本原理   14.3  實(shí)驗(yàn)內(nèi)容   14.4  實(shí)驗(yàn)前的準(zhǔn)備工作   14.5  實(shí)驗(yàn)指導(dǎo)     14.5.1  虛擬存儲系統(tǒng)     14.5.2  頁面置換算法     14.5.3  參考源程序代碼     14.5.4  該程序運(yùn)行結(jié)果及對該結(jié)果的簡要分析 第15章  虛擬文件系統(tǒng)模擬實(shí)驗(yàn)   15.1  實(shí)驗(yàn)?zāi)康摹? 15.2  實(shí)驗(yàn)基本原理   15.3  實(shí)驗(yàn)指導(dǎo)     15.3.1  參考源程序代碼     15.3.2  源程序的簡要說明 第16章  Linux socket編程實(shí)驗(yàn)   16.1  實(shí)驗(yàn)?zāi)康摹? 16.2  實(shí)驗(yàn)基本原理     16.2.1  socket的基本概念     16.2.2  socket的建立     16.2.3  socket的配置   16.3  參考源程序代碼 第17章  Linux設(shè)備驅(qū)動程序   17.1  實(shí)驗(yàn)?zāi)康摹? 17.2  實(shí)驗(yàn)基本原理附錄A  Windows API函數(shù)清單附錄B  Linux常用命令簡介 B1  Linux的登錄與退出 B2  Linux命令格式 B3  常用命令 B4  用cat命令查看/proc動態(tài)文件系統(tǒng)目錄下的文件,辨識其中的系統(tǒng)信息附錄C  Linux部分源代碼附錄D  操作系統(tǒng)實(shí)驗(yàn)報(bào)告要求參考文獻(xiàn)

章節(jié)摘錄

插圖:線程(thread)-有時(shí)稱輕量級進(jìn)程(Light Weight Process,LWP),是一個(gè)CPU調(diào)度單位,是進(jìn)程中的一個(gè)執(zhí)行路徑。它由線程ID、程序計(jì)數(shù)器、寄存器集合和堆棧組成。它與同屬于一個(gè)進(jìn)程的其他線程共享其代碼段、數(shù)據(jù)段和其他操作系統(tǒng)的資源(如打開文件和信號)。在引入線程的操作系統(tǒng)中,進(jìn)程是作為獨(dú)立分配資源的單位,線程是進(jìn)程的一個(gè)實(shí)體,是被獨(dú)立調(diào)度和分派處理機(jī)的基本單位。由于同一個(gè)進(jìn)程內(nèi)的多個(gè)線程都可以訪問進(jìn)程的所有資源,因此,線程之間的通信要比進(jìn)程之間的通信方便得多;同一進(jìn)程內(nèi)線程的切換也因?yàn)榫€程的輕裝而簡單得多。線程是操作系統(tǒng)中能夠獨(dú)立執(zhí)行的實(shí)體(控制流),是處理器調(diào)度和分派的基本單位。線程是進(jìn)程的組成部分,每個(gè)進(jìn)程內(nèi)允許包含多個(gè)并發(fā)執(zhí)行的實(shí)體(控制流),這就是多線程。在多線程環(huán)境下,進(jìn)程是操作系統(tǒng)中進(jìn)行保護(hù)和資源分配的基本單位。多線程是為了同步完成多項(xiàng)任務(wù),其目的是提高資源使用效率來提高系統(tǒng)的效率。線程是在同一時(shí)間需要完成多項(xiàng)任務(wù)的時(shí)候?qū)崿F(xiàn)的。每一個(gè)進(jìn)程至少有一個(gè)主執(zhí)行線程,它無須由用戶去主動創(chuàng)建,是由系統(tǒng)自動創(chuàng)建的。用戶根據(jù)需要在應(yīng)用程序中創(chuàng)建其他線程,多個(gè)線程并發(fā)地運(yùn)行于同一個(gè)進(jìn)程中。一個(gè)進(jìn)程中的所有線程都在該進(jìn)程的虛擬地址空間中,共同使用這些虛擬地址空間、全局變量和系統(tǒng)資源,所以線程間的通信非常方便,多線程技術(shù)的應(yīng)用也較為廣泛。多線程可以實(shí)現(xiàn)并行處理,避免了某項(xiàng)任務(wù)長時(shí)間占用CPU時(shí)間。要說明的一點(diǎn)是,目前大多數(shù)的計(jì)算機(jī)都是單處理器(CPU),為了運(yùn)行所有這些線程,操作系統(tǒng)為每個(gè)獨(dú)立線程安排一些CPU時(shí)間,操作系統(tǒng)以輪換方式向線程提供時(shí)間片,這就給人一種假象,好像這些線程都在同時(shí)運(yùn)行。由此可見,如果兩個(gè)非?;钴S的線程為了搶奪對CPU的控制權(quán),在線程切換時(shí)會消耗很多的CPU資源,反而會降低系統(tǒng)的性能。這一點(diǎn)在多線程編程時(shí)應(yīng)該注意。Windows SDK函數(shù)支持進(jìn)行多線程的程序設(shè)計(jì),并提供了操作系統(tǒng)原理中的各種同步、互斥和臨界區(qū)等操作。Visual C++6.0(本書后面簡稱VC++)中,使用MFC類庫也實(shí)現(xiàn)了多線程的程序設(shè)計(jì),使得多線程編程更加方便。

編輯推薦

《計(jì)算機(jī)操作系統(tǒng)實(shí)驗(yàn)與實(shí)踐:基于Windows與Linux》:教學(xué)目標(biāo)明確,注重理論與實(shí)踐的結(jié)合教學(xué)方法靈活,培養(yǎng)學(xué)生自主學(xué)習(xí)的能力教學(xué)內(nèi)容先進(jìn),強(qiáng)調(diào)計(jì)算機(jī)在各專業(yè)中的應(yīng)用教學(xué)模式完善,提供配套的教學(xué)資源解決方案

圖書封面

圖書標(biāo)簽Tags

評論、評分、閱讀與下載


    計(jì)算機(jī)操作系統(tǒng)實(shí)驗(yàn)與實(shí)踐 PDF格式下載


用戶評論 (總計(jì)1條)

 
 

  •   不知道它的配套教材是什么,也算是一本不錯(cuò)的書,就是位置尷尬一點(diǎn)。
 

250萬本中文圖書簡介、評論、評分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號-7