![操作系統(tǒng)實驗報告1(共70頁)_第1頁](http://file4.renrendoc.com/view/b4d0d0fb046001ada4c8e31455e1359a/b4d0d0fb046001ada4c8e31455e1359a1.gif)
![操作系統(tǒng)實驗報告1(共70頁)_第2頁](http://file4.renrendoc.com/view/b4d0d0fb046001ada4c8e31455e1359a/b4d0d0fb046001ada4c8e31455e1359a2.gif)
![操作系統(tǒng)實驗報告1(共70頁)_第3頁](http://file4.renrendoc.com/view/b4d0d0fb046001ada4c8e31455e1359a/b4d0d0fb046001ada4c8e31455e1359a3.gif)
![操作系統(tǒng)實驗報告1(共70頁)_第4頁](http://file4.renrendoc.com/view/b4d0d0fb046001ada4c8e31455e1359a/b4d0d0fb046001ada4c8e31455e1359a4.gif)
![操作系統(tǒng)實驗報告1(共70頁)_第5頁](http://file4.renrendoc.com/view/b4d0d0fb046001ada4c8e31455e1359a/b4d0d0fb046001ada4c8e31455e1359a5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、PAGE PAGE 72常州大學(xué)(dxu)操作系統(tǒng)(co zu x tn)課程(kchng)實驗報告姓 名 金苗 專業(yè)班級 信息與計算科學(xué) 學(xué) 號 13434104 指導(dǎo)老師 張英麗 實驗時間 2015年10月23日2015年12月15日實驗(shyn)一 Windows XP 系統(tǒng)管理一 實驗?zāi)康?md)1) 了解(lioji)和學(xué)習(xí)Windows系統(tǒng)管理工具及其使用;2) 熟悉Windows系統(tǒng)工具的內(nèi)容和應(yīng)用;3)熟悉Windows操作系統(tǒng)的應(yīng)用環(huán)境。二 實驗環(huán)境需要準備一臺運行Windows XP操作系統(tǒng)的計算機。三 背景知識Windows XP的“管理工具”中集成了許多系統(tǒng)管理工具,
2、利用這些工具,管理員可以方便地實現(xiàn)各種系統(tǒng)維護和管理功能。這些工具都集中在“控制面板”的“管理工具”選項下,用戶和管理員可以很容易地對它們操作和使用。在默認情況下,只有一些常用工具如服務(wù)、計算機管理、事件查看器、數(shù)據(jù)源 (ODBC) 、性能和組件服務(wù)等隨Windows XP系統(tǒng)的安裝而安裝。四 實驗內(nèi)容與步驟為了幫助用戶管理和監(jiān)視系統(tǒng),Windows XP提供了多種系統(tǒng)管理工具,其中最主要的有計算機管理、事件查看器和性能監(jiān)視等。步驟1:登錄進入Windows XP。步驟2:在“開始”菜單中單擊“設(shè)置”-“控制面板”命令,雙擊“管理工具”圖標。在本地計算機“管理工具”組中,有哪些系統(tǒng)管理工具,基
3、本功能是什么:1) 本地安全策略:查看和修改本地安全策略,如用戶權(quán)限和審核策略 2) Internet信息服務(wù):管理 IIS,Internet 和 Intranet 站點的 WEB服務(wù)器 3) 服務(wù):啟動和停止服務(wù) 4)計算機管理:管理磁盤以及使用其他系統(tǒng)工具來管理本地或遠程的計算機 5)事件查看器:顯示來自于 Windows 和其他程序的監(jiān)視與排錯消息 6)數(shù)據(jù)源ODBC:添加、刪除、以及配置 ODBC 數(shù)據(jù)源和驅(qū)動程序 7)性能:顯示系統(tǒng)性能圖表以及配置數(shù)據(jù)日志和警報 8)組件服務(wù):配置和管理 COM+ 應(yīng)用程序 1. 計算機管理使用“計算機管理”可通過一個合并的桌面工具來管理本地或遠程計
4、算機,它將幾個Windows XP管理實用程序合并到一個控制臺目錄樹中,使管理員可以輕松地訪問特定計算機的管理屬性和工具。步驟3:在“管理工具”窗口中,雙擊“計算機管理”圖標。“計算機管理”使用的窗口與“Windows資源管理器”相似。在用于導(dǎo)航和工具選擇的控制臺目錄樹中有“系統(tǒng)工具”、“存儲”及“服務(wù)和應(yīng)用程序”等節(jié)點,窗口右側(cè)“名稱”窗格中顯示了工具的名稱、類型或可用的子工具等。它們是:1) 系統(tǒng)(xtng)工具,填入表1-3中。表1-3 實驗(shyn)記錄名稱類型描述事件查看器擴展管理單元顯示事件日志共享文件夾顯示共享文件夾,目前回話及打開文件本地用戶和組擴展管理單元管理本地用戶和組性
5、能日志和警報擴展管理單元配置數(shù)據(jù)性能日志和警報設(shè)備管理器設(shè)備管理器2) 存儲(cn ch),填入表1-4中。表1-4 實驗記錄名稱類型描述可移動存儲擴展管理單元編錄可移動媒體并管理自動庫磁盤碎片整理程序擴展名管理單元對本地卷上的文件和文件夾進行碎片整理磁盤管理管理單元邏輯磁盤管理器 3) 服務(wù)和應(yīng)用程序,填入表1-5中。表1-5 實驗記錄名稱性能描述Microsoft SQL Server服務(wù)啟動,控制并設(shè)置Windows服務(wù)WMI控件擴展管理單元配置和控制Windows Management Instrumentation(WMI)服務(wù)索引服務(wù)擴展管理單元提供快速和靈活的文件內(nèi)容和屬性搜索I
6、nternet信息服務(wù)2. 事件查看器事件查看器不但可以記錄各種應(yīng)用程序錯誤、損壞的文件、丟失的數(shù)據(jù)以及其他問題,而且還可以把系統(tǒng)和網(wǎng)絡(luò)的問題作為事件記錄下來。管理員通過查看在事件查看器中顯示的系統(tǒng)信息,可以迅速診斷和糾正可能發(fā)生的錯誤和問題。步驟4:在“管理工具”窗口中,雙擊“事件查看器”圖標。在Windows XP事件查看器中,管理員可以查看到三種類型的本地事件日志,請?zhí)钊氡?-6中。表1-6 實驗記錄名稱類型描述當前大小應(yīng)用程序日志應(yīng)用程序錯誤記錄128.0KB安全性日志安全審核記錄64.0KB系統(tǒng)日志系統(tǒng)錯誤記錄128.0KB步驟(bzhu)5:在事件(shjin)查看器中觀察“應(yīng)用程
7、序日志(rzh)”:本地計算機中,共有367個應(yīng)用程序日志事件。步驟6:單擊“查看”菜單中的“篩選”命令,系統(tǒng)日志包括的事件類型有:1) 信息(I) 2) 警告(W) 3) 錯誤(O) 4) 成功審核(S) 5) 失敗審核(L) 3. 性能監(jiān)視“性能”監(jiān)視工具通過圖表、日志和報告,使管理員可以看到特定的組件和應(yīng)用進程的資源使用情況。利用性能監(jiān)視器,可以測量計算機的性能,識別以及診斷計算機可能發(fā)生的錯誤,并且可以為某應(yīng)用程序或者附加硬件制作計劃。另外,當資源使用達到某一限定值時,也可以使用警報來通知管理員。步驟7:在“管理工具”窗口中,雙擊“性能”圖標。“性能”窗口的控制臺目錄樹中包括的節(jié)點有:
8、1) 性能監(jiān)視器 2) 性能日志和警報,其中的子節(jié)點填入表1-7中。表1-7 實驗記錄名稱描述計數(shù)器日志配置性能數(shù)據(jù)和監(jiān)視器日志跟蹤日志配置跟蹤事件日志警報配置性能警報4. 服務(wù)步驟8:在“管理工具”窗口中,雙擊“服務(wù)”圖標。在你的本地計算機中,管理著100個系統(tǒng)服務(wù)項目。通過觀察,重點描述你所感興趣的5個系統(tǒng)服務(wù)項目:1) World Wide Web Publishing:通過Internet信息服務(wù)管理單元提供Web連接和管理2) Windows Image Acquisition:為掃描儀和照相機提供圖像捕獲 3) Security Accounts Manager:存儲本地用戶賬號的
9、安全信息 4) Security Center:監(jiān)視系統(tǒng)安全設(shè)置和配置 5)Shell Hardware Detection:為自動提供硬件事件提供通知 5. 數(shù)據(jù)源 (ODBC)ODBC,即開放(kifng)數(shù)據(jù)庫連接。通過ODBC可以(ky)訪問來自多種數(shù)據(jù)庫管理系統(tǒng)的數(shù)據(jù)。例如,ODBC數(shù)據(jù)源會允許一個(y )訪問SQL數(shù)據(jù)庫中數(shù)據(jù)的程序,同時訪問Visual FoxPro數(shù)據(jù)庫中的數(shù)據(jù)。為此,必須為系統(tǒng)添加稱為“驅(qū)動程序”軟件組件。步驟9:在“管理工具”窗口中,雙擊“數(shù)據(jù)源 (ODBC) ”圖標,打開“ODBC數(shù)據(jù)源管理器”對話框,請描述其中各選項卡的功能,填入表1-8中。表1-8 實
10、驗記錄選項卡功能描述用戶DSNODBC用戶數(shù)據(jù)源存儲了如何與指定數(shù)據(jù)提供程序連接的信息。用戶數(shù)據(jù)只對當前用戶可見,而且只能用于當前機器上。系統(tǒng)DSNODBC用戶數(shù)據(jù)源存儲了如何與指定數(shù)據(jù)提供程序連接的信息。用戶數(shù)據(jù)只對當前用戶可見,包括NT服務(wù)。文件DSNODBC文件數(shù)據(jù)源允許用戶連接到數(shù)據(jù)提供程序。文件DSN可以由安裝了相同驅(qū)動程序的用戶共享。驅(qū)動程序ODBC驅(qū)動程序允許支持ODBC的程序從ODBC數(shù)據(jù)源獲取信息。要安裝新的驅(qū)動程序,請使用其安裝程序。跟蹤ODBC跟蹤允許創(chuàng)建調(diào)用驅(qū)動程序的日志,以供技術(shù)支持人員查看,也有助于您調(diào)試應(yīng)用程序。Visual Studio跟蹤啟用Microsoft
11、 Visual Studio的ODBC跟蹤。連接池連接池允許應(yīng)用程序重用打開連接句柄,此操作將節(jié)省到服務(wù)器的往返過程。步驟10:單擊“驅(qū)動程序”選項卡,試分析,系統(tǒng)為哪些數(shù)據(jù)源缺省安裝了ODBC驅(qū)動程序:1) MSORCL32.DLL 2) SQLSRV32.DLL 實驗二 Windows任務(wù)管理器的進程管理一 實驗?zāi)康?)在Windows 任務(wù)管理器中對程序進程進行響應(yīng)的管理操作;2)熟悉操作系統(tǒng)進程管理的概念;3)學(xué)習(xí)觀察操作系統(tǒng)運行的動態(tài)性能。二 實驗(shyn)環(huán)境需要(xyo)準備一臺運行Windows XP操作系統(tǒng)(co zu x tn)的計算機。三 背景知識Windows XP的
12、任務(wù)管理器提供了用戶計算機上正在運行的程序和進程的相關(guān)信息,也顯示了最常用的度量進程性能的單位。使用任務(wù)管理器,可以打開監(jiān)視計算機性能的關(guān)鍵指示器,快速查看正在運行的程序的狀態(tài),或者終止已停止響應(yīng)的程序。也可以使用多個參數(shù)評估正在運行的進程的活動,以及查看CPU 和內(nèi)存使用情況的圖形和數(shù)據(jù)。四 實驗內(nèi)容與步驟啟動并進入Windows環(huán)境,單擊Ctrl + Alt + Del鍵,或者右鍵單擊任務(wù)欄,在快捷菜單中單擊“任務(wù)管理器”命令,打開“任務(wù)管理器”窗口。當前機器中由你打開,正在運行的應(yīng)用程序有:1) 實驗二 Windows任務(wù)管理器的進程管理 2) 管理工具 Windows“任務(wù)管理器”的窗
13、口由5個選項卡組成,分別是:1) 應(yīng)用程序 2) 進程 3) 性能 4)聯(lián)網(wǎng) 5)用戶 當前“進程”選項卡顯示的欄目分別是 (可移動窗口下方的游標/箭頭,或使窗口最大化進行觀察) :1) 映像名稱 2) 用戶名 3) CPU 4) 內(nèi)存使用 1. 使用任務(wù)管理器終止進程步驟1:單擊“進程”選項卡,一共顯示33個進程。請試著區(qū)分一下,其中:系統(tǒng) (SYSTEM) 進程有19個,填入表2-1中。表2-1 實驗記錄映像名稱用戶名作用內(nèi)存使用Svchost.exeSYSTEMWindows服務(wù)主進程4416KService.exeSYSTEM服務(wù)和控制器應(yīng)用程序3272Ksqlservr.exeSYS
14、TEMSQL基礎(chǔ)服務(wù)9580KLMS.exeSYSTEMLocal Manageability service2912KMDM.EXESYSTEM針對應(yīng)用軟件進行排錯3424KInetinfo.exeSYSTEM支持微軟Windows IIS網(wǎng)絡(luò)服務(wù)的除錯9780KSpoolsv.exeSYSTEM管理所有本地和網(wǎng)絡(luò)打印隊列及控制所有打印工作5612Kati2evxx.exeSYSTEM管理ATI Hotkey特性4024KSvchost.exeSYSTEMWindows服務(wù)主進程24912KSvchost.exeSYSTEMWindows服務(wù)主進程5084Kservice.exeSYSTEM
15、服務(wù)和控制器應(yīng)用程序3476Klsass.exeSYSTEMLocal Security Authority Process1736KServices.exeSYSTEM服務(wù)和控制器應(yīng)用程序5904KWinlogon.exeSYSTEMWindows登錄應(yīng)用程序1820KCsrss.exeSYSTEMClient Server Runtime Process9492Klsm.exeSYSTEM本地會話管理器服務(wù)1156KSmss.exeSYSTEMWindows會話管理器408KSystemSYSTEMNT Kernel & System2196KSystem Idle ProcessSYST
16、EM處理器空閑時間百分比16K服務(wù)(fw) (SERVICE) 進程(jnchng)有4個,填入表2-2中。表2-2 實驗(shyn)記錄映像名稱用戶名作用內(nèi)存使用Svchost.exeLOCAL SERVICEWindows服務(wù)主進程4212Kalg.exeLOCAL SERVICE處理微軟Windows網(wǎng)絡(luò)連接共享和網(wǎng)絡(luò)連接防火墻3808KSvchost.exeNETWORK SERVICEWindows服務(wù)主進程3848KSvchost.exeNETWORK SERVICEWindows服務(wù)主進程4660K用戶(yngh)進程有9個,填入表2-3中。表2-3 實驗(shyn)記錄映像名稱
17、用戶名作用內(nèi)存使用Taskmgr.exeAdministrator任務(wù)管理器2596KTXPplatform.exeAdministratorTXP platform620KSafecenter.exeAdministrator安全中心12728Ksogouflash.exeAdministrator搜狗拼音輸入法-Flash皮膚引擎10976KSqlmangr.exeAdministrator構(gòu)建和管理用于業(yè)務(wù)的高可用和高性能的數(shù)據(jù)應(yīng)用程序5548KCtfmon.exeAdministrator供語音識別、手寫識別、鍵盤、翻譯和其它用戶輸入技術(shù)的支持3512KRTHDCPL.EXEAdmin
18、istrator聲卡特性設(shè)置軟件相關(guān)程序6268KExplorer.exeAdministratorWindows 資源管理器34760KWscntfy.exeAdministratorWindows安全相關(guān)策略2544KWINWORD.EXEAdministratorMicrosoft Office Word28844K步驟(bzhu)2:單擊要終止的進程,然后單擊“結(jié)束進程”按鈕。終止進程,將結(jié)束它直接或間接創(chuàng)建的所有子進程。例如,如果終止了電子郵件程序 (如Outlook 98) 的進程樹,那么同時也終止了相關(guān)的進程,如MAPI后臺處理程序mapisp32.exe。請將終止某進程后的操作
19、結(jié)果與原記錄數(shù)據(jù)對比,發(fā)生了什么:終止后,原窗口被關(guān)閉,進程不再運行,未經(jīng)保持的數(shù)據(jù)都將失去。 2. 顯示其他進程記數(shù)器在“進程”選項卡上單擊“查看”菜單,然后單擊“選擇列”命令。單擊要增加顯示為列標題的項目,然后單擊“確定”。為對進程列表進行排序,可在“進程”選項卡上單擊要根據(jù)其進行排序的列標題。而為了要反轉(zhuǎn)排序順序,可再次單擊列標題。 經(jīng)過調(diào)整,“進程”選項卡現(xiàn)在顯示的項目分別是:映像名稱,用戶名,CPU,內(nèi)存使用。通過(tnggu)對“查看(chkn)”菜單的選擇(xunz)操作,可以在“任務(wù)管理器”中更改顯示選項: 在“應(yīng)用程序”選項卡上,可以按詳細信息、大圖標或小圖標查看。 在“性能
20、”選項卡上,可以更改CPU記錄圖,并顯示內(nèi)核時間?!帮@示內(nèi)核時間”選項在“CPU使用”和“CPU使用記錄”圖表上添加紅線。紅線指示內(nèi)核操作占用的CPU資源數(shù)量。 3. 更改正在運行的程序的優(yōu)先級要查看正在運行的程序的優(yōu)先級,可單擊“進程”選項卡,單擊“查看”菜單,單擊“選擇列”-“基本優(yōu)先級”命令,然后單擊“確定”按鈕。為更改正在運行的程序的優(yōu)先級,可在“進程”選項卡上右鍵單擊您要更改的程序,指向“設(shè)置優(yōu)先級”,然后單擊所需的選項。更改進程的優(yōu)先級可以使其運行更快或更慢 (取決于是提升還是降低了優(yōu)先級) ,但也可能對其他進程的性能有相反的影響。記錄操作后所體會的結(jié)果當進程的優(yōu)先級提高后,該進程
21、的執(zhí)行速度比其他進程的速度快了,操作起來不卡,優(yōu)先級被降低的進程,運行速度明顯變慢。在多處理器計算機上,用戶還可以給處理器指派進程,將程序或進程的執(zhí)行限制在選定的處理器上,但這有可能導(dǎo)致總體性能的下降。實驗三:進程調(diào)度一、實驗內(nèi)容1模擬(mn)批處理多道操作系統(tǒng)的進程調(diào)度;2模擬實現(xiàn)同步機構(gòu)避免并發(fā)進程執(zhí)行時可能與時間(shjin)相關(guān)的錯誤;二、實驗(shyn)目的進程調(diào)度時進程管理的主要內(nèi)容之一,通過設(shè)計,編制,調(diào)試一個簡單的進程調(diào)度模擬系統(tǒng),對進程調(diào)度,進程運行狀態(tài)變換及PV操作加深理解和掌握。三、實驗題目采用剝奪式優(yōu)先算法,對三個進程進行模擬調(diào)度模擬PV操作同步機構(gòu),用PV操作解決進程
22、進入臨界區(qū)的問題?!咎崾尽浚?)對三個進程進行模擬調(diào)度,對各進程的優(yōu)先數(shù)靜態(tài)設(shè)置,P1,P2,P3三個進程的優(yōu)先數(shù)為1,2,3,并指定P1的優(yōu)先數(shù)最高,P3的優(yōu)先數(shù)最低,每個進程都處于執(zhí)行態(tài)“e”,就緒態(tài)“r”,等待態(tài)“w”三種狀態(tài)之一,并假定初始態(tài)為“r”。(2)每一個進程用一個PCB表,PCB表的內(nèi)容根據(jù)具體情況設(shè)置,該系統(tǒng)在運行過程中能顯示或打印各進程和參數(shù)的變化情況,以便觀察各進程的調(diào)度。(3)在完成必要的初始化后,便進入進程調(diào)度程序,首先由P1進入執(zhí)行,當執(zhí)行進程因等待某各事件被阻塞或喚醒某個進程等待進程時,轉(zhuǎn)進程調(diào)度。(4)在進入臨界區(qū)前后,調(diào)PV操作。(5)如果被喚醒的進程優(yōu)先數(shù)
23、高于現(xiàn)有執(zhí)行的進程,則剝奪現(xiàn)行進程的執(zhí)行權(quán)。(6)當三個進程都處于等待狀態(tài)時,本模擬系統(tǒng)退出執(zhí)行。四、實驗要求1、仔細閱讀程序,然后調(diào)試該程序;2、將程序中進程的優(yōu)先數(shù)改為隨機數(shù)或者改為動態(tài)優(yōu)先數(shù),重新調(diào)試該程序;3、將p1先執(zhí)行改為p2或者p3先執(zhí)行,并與p1先執(zhí)行時的結(jié)果進行比較;4、寫好書面實驗報告,于下次實驗課時提交實驗報告。五、示例1.數(shù)據(jù)結(jié)構(gòu):(1)進程(jnchng)控制塊PCBstructint id;char status;int priority;int waiter1;(2)信號量structint value;int waiter2;sem2(3)現(xiàn)場(xinchng)
24、保護棧stackchar stack114每個進程(jnchng)都有一個大小為10個字的現(xiàn)場保護棧,用來保護被中斷時的斷點地址等信息。(4)全局變量int i;用以模擬一個通用寄存器char addr;用以模擬程序計數(shù)器int m1,m2;為系統(tǒng)設(shè)置的公用數(shù)據(jù)被三個進程共享使用。六、程序框圖:略七、程序說明:本程序是用C語言編寫,模擬三個進程的運行情況,過程在運行中要調(diào)用P操作申請信號量,如果該過程得到其申請的信號量,就繼續(xù)運行,否則P操作阻塞該申請過程的運行,并將過程置為所申請信號量的等待者,如果已有其它過程在等待同一信號量則將該申請過程排在所有等待進程之后。過程運行中除了調(diào)用(dioyn
25、g)P操作申請信號量外,還要調(diào)用V操作釋放信號量,V操作在釋放信號量之后,還將喚醒因申請此信號量而被阻塞的過程。在程序運行的三個過程(PROCESS1,PROCESS2,PROCESS3),其中過程運行中通過P操作申請(shnqng)信號量1,過程2通過V操作釋放信號量2,然后做一次操作申請信號量2。三個過程之間存在這樣(zhyng)一種關(guān)系:過程1消耗的信號量1由過程2通過V操作產(chǎn)生,而過程3即釋放信號量2也消耗信號量2。三個過程的運行通過進程調(diào)度模塊同意安排,調(diào)度模塊通過FIND()函數(shù)找到第一個就緒過程,如果當前沒有過程已在運行,就直接運行此過程,如果有,則比較兩者的優(yōu)先數(shù),然后運行優(yōu)先
26、權(quán)高者。七、源程序:#include int m1;int m2;structint id;int waiter1;int priority;char status;pcb4;structint value;int waiter2;sem3;char stack114;int i,ep;char addr;void init();int find();int w2();int process1();int process2();int process3();int p(int,int ,char);int v(int,int ,char);main()init();printf(系統(tǒng)程序(ch
27、ngx)開始執(zhí)行n);for(;)if(find()!=0) w2();else break;printf(系統(tǒng)(xtng)程序結(jié)束n);void init()int j,k;pcb0.status=w;pcb0.priority=4;for(j=1;j=3;j+)pcbj.id=j;pcbj.status=r;pcbj.waiter1=0;pcbj.priority=j;for(j=1;j=2;j+)semj.value=1;semj.waiter2=0;i=0;ep=0;addr=0;m1=0;m2=0;for(j=1;j=10;j+)for(k=1;k=3;k+)stackjk=0;in
28、t find()int j;for(j=1;j=3;j+)if(pcbj.status=r) return(j);return(0);int w2()int pd;pd=find();if(pd=0) return(0);else if(ep=0)pcbpd.status=e;ep=pd;printf(進程(jnchng)%d正在執(zhí)行n,ep);else if(pcbpd.priority4)printf(進程(jnchng)3在信號量sem2上調(diào)用P操作n);if(p(2,3,n)=0) return(0);n:m2=i;printf(進程3在sem2信號量上調(diào)用(dioyng)V操作m=%
29、dn,m2);if(v(2,3,m)=0) return(0);elsem:i+=1;goto a;int p(int se,int p,char ad)int w;semse.value-;if(semse.value=0) return(1);printf(阻塞(zs)當前進程%dn,p);pcbp.status=w;ep=0;pcbp.waiter1=0;w=semse.waiter2;if(w=0) semse.waiter2=p;elsewhile(pcbw.waiter1!=0) w=pcbw.waiter1;pcbw.waiter1=p;stack1p=i;stack2p=ad;
30、return(0);int v(int se,int p,char ad)int w;semse.value+;if(semse.value0) return(1);w=semse.waiter2;semse.waiter2=pcbw.waiter1;pcbw.status=r;printf(喚醒(hunxng)進程%dn,w);stack1p=i;stack2p=ad;return(0);實驗(shyn)四 虛擬存儲器管理一、實驗(shyn)目的 1、為了更好的配合(pih)操作系統(tǒng)有關(guān)虛擬存儲器管理章節(jié)的教學(xué)。 2、加深和鞏固學(xué)生對于請求頁式存儲管理的了解和掌握。3、提高學(xué)生的上機和編程過
31、程中處理具體問題的能力。二、實驗內(nèi)容請求頁式存儲管理是一種常用的虛擬存儲管理技術(shù)。本實驗的目的是通過請求頁式存儲管理中頁面置換算法模擬設(shè)計,了解虛擬存儲技術(shù)的特點,掌握請求頁式存儲管理的頁面置換算法。 1通過隨機數(shù)產(chǎn)生一個指令序列,共320條指令。指令的地址按下述原則生成:50%的指令是順序執(zhí)行的。25%的指令是均勻分布在前地址部分。25%的指令是均勻分布在后地址部分。 具體的實施方法是:在0,319指令地址之間隨機選取一起點;順序執(zhí)行一條指令,即執(zhí)行地址為m+1的指令;在前地址0,m+1中隨機選取一條指令并執(zhí)行,該指令的地址為m;順序執(zhí)行一條指令,其地址為m;在后地址m+2,319中隨機選取
32、一條指令并執(zhí)行;重復(fù)上述步驟ae,直到執(zhí)行320次指令。2將指令序列變換成為頁地址流設(shè):a.頁面大小為1K;b.用戶內(nèi)存容量為4到32頁;c.用戶虛存容量為32K。在用戶虛存中,按每K存放10條指令排列虛存地址,即320條指令在虛存中的存放方式為:第0條第9條指令為第0頁,對應(yīng)虛存地址為0,9;第10條第19條指令(zhlng)為第1頁,對應(yīng)虛存地址為10,19 . .第310條第319條指令為第31頁,對應(yīng)(duyng)虛存地址為310,319。按以上方式,用戶指令(zhlng)可組成32頁。3、輸出下述各種算法在不同內(nèi)存容量下的命中率。a.先進先出的算法;b.最近最少訪問算法;c.最近最不
33、經(jīng)常使用算法。其中: 命中率=1-頁面失效次數(shù)/頁地址流長度 頁地址流長度為320,頁面失效次數(shù)為每次訪問相同指令時,該指令所對應(yīng)的頁不在內(nèi)存的次數(shù)。三、實驗要求 實驗課時4學(xué)時。要求畫出利用各種算法置換時的置換圖,并可以分析說明。編程可分為幾個部分完成:指令的分頁,算法的選擇,算法的實現(xiàn),命中率的輸出。編寫程序前可先閱讀Linux源代碼頁面換入: static int do_swap_page(struct mm_struct * mm,struct vm_area_struct * vma,unsigned long address,pte_t * page_table,swp_entry
34、_t entry,int write_access)struct page *page = lookup_swap_cache(entry);pte-t pte;if (!pgae)lock_kernel( );swapin_readahead(entry);page = read_swap_cache(entry);unlock_kernel( );if (!page)return -1;flush_page_to_ram(page);flush_icache_page(vma,page);mm-rss+;pte = mk_pte(page,vma-vm_page_prot);/*Freez
35、e the shared ness of the page,ie page_count + swap_count.*Must lock page before transferring our swap count to already*obtained apge count.*/lock_page(page);swap_free(entry);if (write_access & !is_page_shared(page)pte = pte_mkwrite(pte_mkdirty(pte);UnlockPage(page);set_pte(page_table,pte);/*No need
36、to invalidate - it was non-present before */update_mmu_cache(vma,address,pte);return 1;/*Minor fault */四、源程序指導(dǎo)(zhdo)#include #include #include int i,M,j,k,s,h,t;char r;float int_count,page_count,v;float vc29;int l,m,n,o,p;int address320;int page3210,pageNo32,page_Index200,page_IndexNo200,page_change
37、200;pagechange() for(i=0;i32;i+) for(j=0;j1) m=l+1; else goto Loop1; Loop2: x=random(319); if(xo) p=y; else goto Loop3;fifo() for(s=4;s=32;s+) page_change0=page_IndexNo0; int_count=1; page_count=1; for(h=1;h5*M;h+) if(page_IndexNoh!=page_IndexNoh-1)page_count+=1; for(t=0;ts;t+) if(page_IndexNoh=page
38、_changet) goto Loop8;else if(page_IndexNoh!=page_changet & page_changet=999) page_changet=page_IndexNoh; int_count+; goto Loop8; for(k=0;ks;k+) page_changek=page_changek+1; page_changes-1=page_IndexNoh; int_count+=1; Loop8: ; v=int_count/page_count; vcs-4=1-v; printf(Vc for page %d: vc%d=%.3f $ ,s,s
39、-4,vcs-4); for(i=0;i200;i+)page_changei=999; lru() int q,temp; for(s=4;s=32;s+) page_change0=page_IndexNo0; page_count=1; int_count=1; for(h=1;h5*M;h+) if(page_IndexNoh!=page_IndexNoh-1)page_count+=1; for(t=0;ts;t+) if(page_IndexNoh!=page_changet & page_changet=999) page_changet=page_IndexNoh; int_c
40、ount+; goto Loop9;else if(page_IndexNoh=page_changet) for(q=t;qs;q+) if(page_changeq+1!=999) temp=page_changeq; page_changeq=page_changeq+1; page_changeq+1=temp; goto Loop9; for(k=0;ks;k+)page_changek=page_changek+1; page_changes-1=page_IndexNoh; int_count+=1; Loop9:; v=int_count/page_count; vcs-4=1
41、-v; printf(The vc for the page %d: vc%d=%.3f $ ,s,s-4,vcs-4); for(i=0;i200;i+)page_changei=999; opt() int i,count32,max,j; for(j=0;j32;j+) countj=0; for(s=4;s=32;s+) page_change0=page_IndexNo0; page_count=1; int_count=1; for(h=1;h5*M;h+) if(page_IndexNoh!=page_IndexNoh-1)page_count+=1; for(t=0;ts;t+
42、) if(page_IndexNoh=page_changet) goto Loop10;else if(page_IndexNoh!=page_changet & page_changet=999) page_changet=page_IndexNoh; int_count+; goto Loop10; for(t=0;ts;t+) for(i=h;i5*M;i+) if(page_changet=page_IndexNoi) countt=i; goto Loop11; page_changet=page_IndexNoh;int_count+=1;goto Loop10; Loop11:
43、; max=0; for(t=0;tmax) max=countt; for(t=0;ts;t+) if(countt=max) page_changet=page_IndexNoh; int_count+=1; Loop10:; v=int_count/page_count; vcs-4=1-v; printf(The vc for page %d: vc%d=%.3f $ ,s,s-4,vcs-4); for(i=0;i200;i+)page_changei=999; main() char c;Loop4: clrscr(); for(i=0;i320;i+) addressi=rand
44、(); for(i=0;i200;i+) page_changei=999; printf(Put The Value Of The M: ); scanf(%d,&M); pagechange(); for(j=0;jM;j+) Ram_Make(); page_Index5*j+0=l;page_IndexNo5*j+0=l/10; page_Index5*j+1=m;page_IndexNo5*j+1=m/10; page_Index5*j+2=n;page_IndexNo5*j+2=n/10; page_Index5*j+3=o;page_IndexNo5*j+3=o/10; page
45、_Index5*j+4=p;page_IndexNo5*j+4=p/10; for(k=0;k5*M;k+) printf(page_Index%d=%d,page_IndexNo%d=%dn,k,page_Indexk,k,page_IndexNok); printf(n); Loop5: printf(select the method for page_exchange:n); printf(1.)FIFOn2.)LRUn3.)OPTn); printf(Put The select of The method: ); scanf(%s,&r); switch(r) case 1: fi
46、fo(); break;case 2: lru(); break;case 3: opt(); break;default: printf(n); printf(Put the value between 1 to 3 !n); goto Loop5; Loop6: printf(n); printf(Do You Want to do againy/n:); scanf(%s,&c); if(c=y) goto Loop4; else if(c=n) exit; else printf(Select for y and n!n); goto Loop6; 實驗(shyn)五 Windows
47、XP 虛擬內(nèi)存管理(gunl)一 實驗?zāi)康?md)1) 了解存儲器管理以及虛擬存儲器管理的基本原理2)了解和學(xué)習(xí)Windows系統(tǒng)管理工具中關(guān)于內(nèi)存管理的設(shè)置和使用;二 實驗環(huán)境需要準備一臺運行Windows XP操作系統(tǒng)的計算機。三 背景知識虛擬存儲器技術(shù)是當代計算機中廣泛采用的內(nèi)存管理方案,在Windows XP中合理的進行虛擬內(nèi)存的設(shè)置,可以更有效的提高系統(tǒng)的工作效率。利用系統(tǒng)自帶的系統(tǒng)監(jiān)視器可以查看虛擬內(nèi)存的使用情況,根據(jù)使用情況可以靈活的進行虛擬內(nèi)存的管理。四 實驗內(nèi)容與步驟啟動并進入Windows環(huán)境,單擊Ctrl + Alt + Del鍵,或者右鍵單擊任務(wù)欄,在快捷菜單中單擊“任
48、務(wù)管理器”命令,打開“任務(wù)管理器”窗口。步驟1:當前機器中由你打開,正在運行的應(yīng)用程序有:1)實驗五_Windows_XP_虛擬內(nèi)存管理-Microsoft Word 步驟2:單擊“進程”選項卡,一共顯示了33個進程。請試著區(qū)分一下,其中:系統(tǒng) (SYSTEM) 進程有19個,填入表2-1中。表2-1 實驗記錄映像名稱用戶名CPU使用率內(nèi)存使用進程實現(xiàn)的功能Svchost.exeSYSTEM004416KNT Kernel &SystemService.exeSYSTEM003272KWindows會話管理器sqlservr.exeSYSTEM009580KClient Server Runt
49、ime ProcessLMS.exeSYSTEM002912K服務(wù)和控制器應(yīng)用程序MDM.EXESYSTEM003424KLocal Security Authority ProcessInetinfo.exeSYSTEM009780K本地會話管理器服務(wù)Spoolsv.exeSYSTEM005612KWindows服務(wù)主進程ati2evxx.exeSYSTEM004024K360主動防御服務(wù)模塊Svchost.exeSYSTEM0024912KWindows登錄應(yīng)用程序Svchost.exeSYSTEM005084KWindows服務(wù)主進程service.exeSYSTEM003476K服務(wù)和
50、控制器應(yīng)用程序lsass.exeSYSTEM001736KLocal Security Authority ProcessServices.exeSYSTEM005904K服務(wù)和控制器應(yīng)用程序Winlogon.exeSYSTEM001820KWindows登錄應(yīng)用程序Csrss.exeSYSTEM009492KClient Server Runtime Processlsm.exeSYSTEM001156K本地會話管理器服務(wù)Smss.exeSYSTEM00408KWindows會話管理器SystemSYSTEM002196KNT Kernel & SystemSystem Idle Proce
51、ssSYSTEM9816K處理器空閑時間百分比服務(wù)(fw) (SERVICE) 進程(jnchng)有4個,填入表2-2中。表2-2 實驗(shyn)記錄映像名稱用戶名CPU使用率內(nèi)存使用進程實現(xiàn)的功能Svchost.exeLOCAL SERVICE004212KWindows服務(wù)主進程alg.exeLOCAL SERVICE003808K處理微軟Windows網(wǎng)絡(luò)連接共享和網(wǎng)絡(luò)連接防火墻Svchost.exeNETWORK SERVICE003848KWindows服務(wù)主進程Svchost.exeNETWORK SERVICE004660KWindows服務(wù)主進程用戶進程有9個,填入表2-3
52、中。表2-3 實驗記錄映像名稱用戶名CPU使用率內(nèi)存使用進程實現(xiàn)的功能Taskmgr.exeAdministrator002596K任務(wù)管理器TXPplatform.exeAdministrator00620KTXP platformSafecenter.exeAdministrator0012728K安全中心sogouflash.exeAdministrator0010976K搜狗拼音輸入法-Flash皮膚引擎Sqlmangr.exeAdministrator005548K構(gòu)建和管理用于業(yè)務(wù)的高可用和高性能的數(shù)據(jù)應(yīng)用程序Ctfmon.exeAdministrator003512K供語音識別、
53、手寫識別、鍵盤、翻譯和其它用戶輸入技術(shù)的支持RTHDCPL.EXEAdministrator006268K聲卡特性設(shè)置軟件相關(guān)程序Explorer.exeAdministrator0034760KWindows 資源管理器Wscntfy.exeAdministrator002544KWindows安全相關(guān)策略WINWORD.EXEAdministrator0028844KMicrosoft Office Word步驟(bzhu)3:查看(chkn)本機的物理內(nèi)存容量為 2096304K ,點擊任務(wù)管理器中性能標簽,再查看(chkn)一下,物理內(nèi)存可用數(shù),核心內(nèi)存總數(shù) 64072K ,核心內(nèi)存為
54、操作系統(tǒng)所占的內(nèi)存,可將以上表格中所填寫的各進程所占內(nèi)存數(shù)與步驟3中填寫的數(shù)字做下比較。步驟4:用鼠標右鍵點擊“我的電腦”,選擇“屬性”,彈出系統(tǒng)屬性窗口,選擇“高級”標簽,點擊“性能”下面的“設(shè)置”按鈕,再選擇高級標簽,查看本機的虛擬內(nèi)存大小為 2046MB ,點擊更改按鈕,本系統(tǒng)所用的虛擬內(nèi)存設(shè)置在 C 分區(qū),初始大小 2046MB ,最大值 4092 MB,當前已分配 2046MB ,頁面大小 2046-4092MB 。步驟5:請在Windows2000(XP)目錄下查找一個名為 HYPERLINK /view/724336.htm t _blank pagefile.sys的系統(tǒng)文件(
55、Windows98下為Win386.swp),它的大小經(jīng)常自己發(fā)生變動,小的時候可能只有幾十兆,大的時候則有數(shù)百兆,pagefile.sys是Windows下的一個虛擬內(nèi)存,請觀察一下目前該文件大小為 2046M 。 步驟6:觀察虛擬內(nèi)存的使用情況,并進行重新設(shè)置 1)在控制面板中的管理工具中打開性能監(jiān)視器,展開左側(cè)的性能日志和警報,并點擊選擇記數(shù)器日志,在右側(cè)的面板中空白處點擊鼠標右鍵,選擇新建日志設(shè)置,并命名為Pagefile,然后回車確認。 2)在常規(guī)選項卡下,點擊添加記數(shù)器按鈕,在新彈出的窗口的性能對象下拉菜單中選擇Paging File,并選擇“從列表選擇記數(shù)器”,然后點擊% Usa
56、ge Peak,在范例中選擇“_Total”,并接著點擊“添加”按鈕。 3)然后關(guān)閉這個窗口,并點擊圖三中的“確定”按鈕。點擊“是”創(chuàng)建日志文件。接著打開“日志文件”選項卡,在日志文件類型下拉菜單中選則“文本文件(逗號分隔)”,然后記住“例如”框中顯示的日志文件的路徑。 C:PerfLogsPagefile_000002.csv4)這樣,點擊確定后這個記數(shù)器已經(jīng)開始運行了,你可以在電腦上進行你的日常操作,并盡可能多的打開和關(guān)閉各種經(jīng)常使用的應(yīng)用程序和游戲。經(jīng)過一段時間的使用,基本上記數(shù)器已經(jīng)可以對你的使用情況做出一個完整的評估。 5)停止這個記數(shù)器的運行,同樣是在記數(shù)器日志窗口中,選中我們新建
57、的Page File記數(shù)器,然后右鍵點擊(din j),并且選擇停止。用記事本打開日志文件,并將日志(rzh)文件的內(nèi)容復(fù)制在下面 日志(rzh)文件:(PDH-CSV 4.0) ()(-480),c08Paging File(_Total)% Usage Peak05/07/2012 20:06:54.046,5.626641923264907405/07/2012 20:07:09.046,5.6266419232649074 注意:在日志中的數(shù)值并不是分頁文件的使用量,而是使用率。也就是說,根據(jù)日志文件的顯示,該系統(tǒng)一般情況下的分頁文件只使用了25左右,而系統(tǒng)當前設(shè)置的分頁文件足有2GB
58、,那么為了節(jié)省硬盤空間,完全可以把分頁文件最大值縮小為512MB大小。而對于最小值,可以先根據(jù)日志中的占用率求出平均占用率,然后再與最大值相乘,就可以得到了。6) 請根據(jù)實驗數(shù)據(jù),重新設(shè)置虛擬內(nèi)存的大小,并嘗試將虛擬內(nèi)存設(shè)置在其他分區(qū),觀察一下 HYPERLINK /view/724336.htm t _blank pagefile.sys文件有什么變化 HYPERLINK /view/724336.htm t _blank pagefile.sys文件的大小會發(fā)生變化,在每個盤里都會生成一個 HYPERLINK /view/724336.htm t _blank pagefile.sys文件
59、。步驟7:注意觀察性能監(jiān)視器,請自己調(diào)查一下監(jiān)視器中三條不同顏色線條分別代表什么含義,性能監(jiān)視器除了可以查看這些性能以外,還可以通過設(shè)置進行哪些性能監(jiān)視,舉例說明一下。在Windows XP中,系統(tǒng)監(jiān)視器默認會裝入三個性能計數(shù)器:“Pages/sec”(內(nèi)存分頁/秒)、“Avg. Disk Queue Length”(磁盤訪問序列的平均值)和“% Processor Time”(處理器執(zhí)行有效線程時間的百分比)。它們分別以黃、藍、綠三種顏色的線條來表示。在窗口右邊的圖表中可以看到實時的計數(shù)器曲線圖表(單擊工具欄中的按鈕切換成直方圖或者報表顯示),圖表中的紅色豎線在不斷向右移動,它表示圖表的更新
60、過程。a黃色線:“Pages/sec”(內(nèi)存分頁/秒):主要用來表示平均每秒從虛擬內(nèi)存中進行讀取和寫入的內(nèi)存分頁數(shù)。應(yīng)用程序運行時,并沒有把全部內(nèi)容都加載到內(nèi)存中,而是當內(nèi)存中沒有所需信息時才會到硬盤中調(diào)用。調(diào)用的內(nèi)存分頁越多、越頻繁,系統(tǒng)性能就越差。b.藍色線:“Avg. Disk Queue Length”(磁盤訪問序列的平均值):這個計數(shù)器的功能實際上用于多個物理磁盤共存的時候,此時磁盤性能會超過單個硬盤的性能,如果你安裝有多塊硬盤,那么這個計數(shù)器有時會顯示出100%(甚至更高)的狀態(tài)。c.綠色線:“%Processor Time”(處理器執(zhí)行有效線程時間的百分比):它反映的是CPU實際
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2031年中國蔬菜大棚管行業(yè)投資前景及策略咨詢研究報告
- 2025年濕膜暗裝式加濕器項目可行性研究報告
- 2025年雜物盒組件項目可行性研究報告
- 2025至2031年中國復(fù)合緊襯抗負壓管道行業(yè)投資前景及策略咨詢研究報告
- 延安2024年陜西延安市縣以下醫(yī)療衛(wèi)生機構(gòu)定向招聘大學(xué)生鄉(xiāng)村醫(yī)生補錄27人筆試歷年參考題庫附帶答案詳解
- 2025年冷軋鋼材料項目可行性研究報告
- 2025年不干膠條碼標簽紙項目可行性研究報告
- 2025至2030年高光外墻水性漆項目投資價值分析報告
- 2025至2030年中國銅包鋁鎂線數(shù)據(jù)監(jiān)測研究報告
- 2025至2030年中國酒店財務(wù)管理系統(tǒng)數(shù)據(jù)監(jiān)測研究報告
- 2024年極兔速遞有限公司招聘筆試參考題庫附帶答案詳解
- 中醫(yī)中藥在罕見病中的應(yīng)用
- 2024-2030年中國無人機光電吊艙行業(yè)市場深度研究及投資規(guī)劃建議報告
- 征兵工作試題
- TCALC 003-2023 手術(shù)室患者人文關(guān)懷管理規(guī)范
- 2021新安全生產(chǎn)法解讀
- 腦卒中后吞咽障礙患者進食護理-2023中華護理學(xué)會團體標準
- 半生熟紙制作工藝
- 湖北省普通高中2022-2023學(xué)年高一下學(xué)期學(xué)業(yè)水平合格性考試模擬化學(xué)(一)含解析
- 銀行案件防控培訓(xùn)課件
- 裝配式混凝土結(jié)構(gòu)施工技術(shù)講課課件
評論
0/150
提交評論