安徽工業(yè)大學(xué)操作系統(tǒng)實驗報告_第1頁
安徽工業(yè)大學(xué)操作系統(tǒng)實驗報告_第2頁
安徽工業(yè)大學(xué)操作系統(tǒng)實驗報告_第3頁
安徽工業(yè)大學(xué)操作系統(tǒng)實驗報告_第4頁
安徽工業(yè)大學(xué)操作系統(tǒng)實驗報告_第5頁
已閱讀5頁,還剩19頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、操作系統(tǒng)教程 試驗報告書 專業(yè)班級 物 141 班 學(xué) 號 149074353 姓 名 程裕博 指導(dǎo)老師 郭玉華 安徽工業(yè)高校運(yùn)算機(jī) 精品資料 第 1 頁,共 24 頁試驗一 WINDOWS 進(jìn)程初識 1, 試驗?zāi)康?(1) 學(xué)會使用 VC 編寫基本的 Win32 Consol Application (把握 (2) 臺應(yīng)用程序 ; (3) 把握 WINDOWS API 的使用方法; (4) 編寫測試程序,懂得用戶態(tài)運(yùn)行和核心態(tài)運(yùn)行; 2, 試驗內(nèi)容和步驟 ( 1)編寫基本的 Win32 Consol Application 步驟 1:登錄進(jìn)入 Windows ,啟動 ; 步驟 2:在“FIL

2、E ”菜單中單擊“NEW ”子菜單,在“projects”選項卡中選擇“Win32Consol Application ”,然后在“Project name” 處輸入工程名,在“Location” 處 輸入工程目錄;創(chuàng)建一個新的把握臺應(yīng)用程序工程; 步驟 3:在“FILE ”菜單中單擊“NEW ”子菜單,在“Files”選項卡中選擇“C+ Source File ”, 然后在“File ”處輸入 C/C+ 源程序的文件名; 步驟 4:將清單 1-1 所示的程序清單復(fù)制到新創(chuàng)建的 C/C+ 源程序中;編譯 成可執(zhí)行文件; 步驟 5:在“開頭”菜單中單擊“程序-“”附件-”“命令提示符”命令,進(jìn)入

3、 Windows“命令提示符”窗口,然后進(jìn)入工程目錄中的 程序: 課程os 課os 試驗 程序debug 子目錄, 執(zhí)行編譯好的可執(zhí)行 運(yùn)行結(jié)果 假如運(yùn)行不成功,就可能的緣由是什么? : 圖 : 運(yùn) 行 成 功 , 截 ( 2)運(yùn)算進(jìn)程在核心態(tài)運(yùn)行和用戶態(tài)運(yùn)行的時間 步驟 1:依據(jù)(1)中的步驟創(chuàng)建一個新的“Win32 Consol Application ”工程, 然后將清單 1-2 中的程序拷貝過來,編譯成可執(zhí)行文件; 步驟 2: 在創(chuàng)建一個新的“Win32 Consol Application ”工程,程序的參考程 序如清單 1-3 所示,編譯成可執(zhí)行文件并執(zhí)行; 精品資料 第 2 頁,

4、共 24 頁步驟 3:在“命令提示符”窗口中運(yùn)行步驟 1 中生成的可執(zhí)行文件,測試步 驟 2 中可執(zhí)行文件在核心態(tài)運(yùn)行和用戶態(tài)運(yùn)行的時間; 課程os 課os 試驗 程序os12debugtime 步驟 4:運(yùn)行結(jié)果 假如運(yùn)行不成功,就可能的緣由是什么? : process ID: 3716,EXE file:3.exe,%d in Kernel mode: 60 步驟 5:分別屏蔽 While 循環(huán)中的兩個 for 循環(huán),或調(diào)整兩個 for 循環(huán)的次 數(shù),寫出運(yùn)行結(jié)果; 屏蔽 i 循環(huán): process ID: 1412,EXE file:3.exe,%d in Kernel mode: 62

5、 屏蔽 j 循環(huán): process ID: 1816,EXE file:3.exe,%d in Kernel mode: 34 調(diào)整循環(huán)變量 i 的循環(huán)次數(shù): process ID: 2616,EXE file:3.exe,%d in Kernel mode: 64 調(diào)整循環(huán)變量 j 的循環(huán)次數(shù): process ID: 1868,EXE file:3.exe,%d in Kernel mode: 50 3, 試驗結(jié)論 對 Win32 Consol Application 有進(jìn)一步的熟識,WIN32 API 也就是 Windows 32 平臺的應(yīng)用程序編程接口;用戶態(tài)運(yùn)行和核心態(tài)運(yùn)行,核心態(tài)就

6、是一個是直接 的代碼運(yùn)行,即 win32consol Application 下代碼運(yùn)行;而用戶態(tài)是在 DOS 下運(yùn) 行的,對編譯好的程序進(jìn)行的運(yùn)行,核心態(tài)速度較快,沒有太多的約束,而用戶 態(tài)的運(yùn)行需要時間較長,由于有相應(yīng)的約束; 精品資料 第 3 頁,共 24 頁試驗二 進(jìn)程治理 1,試驗?zāi)康?1 通過創(chuàng)建進(jìn)程, 觀看正在運(yùn)行的進(jìn)程和終止進(jìn)程的程序設(shè)計和調(diào)試操作, 進(jìn)一步熟識操作系統(tǒng)的進(jìn)程概念,懂得 Windows進(jìn)程的“一生;” 2 通過閱讀和分析試驗程序,學(xué)習(xí)創(chuàng)建進(jìn)程,觀看進(jìn)程,終止進(jìn)程以及父 子進(jìn)程同步的基本程序設(shè)計方法; 2,試驗內(nèi)容和步驟 ( 1). 創(chuàng)建進(jìn)程 本試驗顯示了創(chuàng)建子進(jìn)

7、程的基本框架; 該程序只是再一次地啟動自身, 顯示 它的系統(tǒng)進(jìn)程 ID 和它在進(jìn)程列表中的位置; 步驟 1:創(chuàng)建一個“Win32 的程序,編譯成可執(zhí)行文件; Consol Application ”工程,然后拷貝清單 2-1 中 步驟 2:在“命令提示符”窗口運(yùn)行步驟 1 中生成的可執(zhí)行文件;運(yùn)行結(jié) 果: 范例: 課程os 課os 試驗 程序 os11debugos21 假設(shè)編譯生成的可執(zhí)行文件是 os21.exe ProcessID:3012, Clone ID:0 Process ID:2748, Clone ID:1 Process ID:4044, Clone ID:2 Process

8、 ID:2896, Clone ID:3 Process ID:1588, Clone ID:4 Process ID:2144, Clone ID:5 按下 ctrl+alt+del ,調(diào)用 windows 的任務(wù)治理器,記錄進(jìn)程相關(guān)的行為屬性: 步驟 3:在“命令提示符”窗口加入?yún)?shù)重新運(yùn)行生成的可執(zhí)行文件;運(yùn)行結(jié) 精品資料 第 4 頁,共 24 頁果: 范例: 課程os 課os 試驗 程序 os11debugos21 3 假設(shè)編譯生成的可執(zhí)行文件是 os21.exe Process ID:3112, Clone ID:3 Process ID:1380, Clone ID:4 Proce

9、ss ID:3576, Clone ID:5 按下 ctrl+alt+del ,調(diào)用 windows 的任務(wù)治理器,記錄進(jìn)程相關(guān)的行為屬性: 步驟 4:修改清單 2-1 中的程序,將 nClone 的定義和初始化方法按程序注 釋中的修改方法進(jìn)行修改,編譯成可執(zhí)行文件(執(zhí)行前請先儲存已經(jīng)完成的工 作);再按步驟 2 中的方式運(yùn)行,看看結(jié)果會有什么不一樣;運(yùn)行結(jié)果: Process ID:3112, Clone ID:3 Process ID:1380, Clone ID:4 Process ID:3576, Clone ID:5 從中你可以得出什么結(jié)論: nClone 的作用:把握 ID 的起始

10、值,并把握其輸出窗口的數(shù)量; _變量的定義和初始化方法 (位置)對程序的執(zhí)行結(jié)果有影響嗎?為什么?有影響, 變量的定義影響了程序的結(jié)果數(shù)目,仍影響了 ID 的其實位置,由于變量的初始 化使程序的循環(huán)次數(shù)發(fā)生轉(zhuǎn)變, 直接轉(zhuǎn)變了結(jié)果, 所以結(jié)果由變量的不同而不同; (2). 父子進(jìn)程的簡潔通信及終止進(jìn)程 步驟 1: 創(chuàng)建一個“Win32 的程序,編譯成可執(zhí)行文件; Consol Application ”工程,然后拷貝清單 2-2 中 步驟 2:在 VC 的工具欄單擊“Execute Program”執(zhí)行程序 按鈕,或者按 精品資料 第 5 頁,共 24 頁Ctrl + F5 鍵,或者在“命令提示

11、符”窗口運(yùn)行步驟 1 中生成的可執(zhí)行文件;運(yùn)行 結(jié) 果: 范例: 課程os 課os 試驗 程序 os11debugos22 假設(shè)編譯生成的可執(zhí)行文件是 os22.exe 步驟 3:按源程序中注釋中的提示,修改源程序 先儲存已經(jīng)完成的工作) ;運(yùn)行結(jié)果: 死循環(huán) 2-2 ,編譯執(zhí)行(執(zhí)行前請 在程序中加入跟蹤語句,或調(diào)試運(yùn)行程序,同時參考 MSDN 中的幫忙文件 CreateProcess 的使用方法,懂得父子進(jìn)程如何傳遞參數(shù);給出程序執(zhí)行過程 的大致描述: 產(chǎn)生的應(yīng)用程序的名稱 本 EXE 文件 , 告知其行為像一個子進(jìn)程的標(biāo)志,不繼 承句柄,使用新的把握臺,新的環(huán)境,啟動信息,返回的進(jìn)程信息

12、; 步驟 4:填空 CreateProcess 函數(shù)有8 個核心參數(shù)?本試驗程序中設(shè)置的各個參數(shù)的值 是: a. szFilename ; b. szCmdLine, ; c. NULL ; d. NULL ; e. FALSE ; 精品資料 第 6 頁,共 24 頁f. CREATE_NEW_CONSOLE ; g. NULL ; h. NULL ; 步驟 5:按源程序中注釋中的提示,修改源程序 2-2 ,編譯執(zhí)行;運(yùn)行結(jié)果: 步 驟 6 : 參 考 MSDN 中 的 幫 助 文 件 CreateMutex , OpenMutex , ReleaseMutex 和 WaitForSingle

13、Object 的使用方法,懂得父子進(jìn)程如何利用 互斥體進(jìn)行同步的;給出父子進(jìn)程同步過程的一個大致描述: 第一,進(jìn)程創(chuàng)建一個互斥體, 打開互斥體, 如遇到互斥, 就進(jìn)行處理, 處理完后, 釋放互斥體,下面便是進(jìn)程等待下一個要處理的項目; 3, 試驗結(jié)論 每個進(jìn)程都從調(diào)用 CreateProcess API 函數(shù)開頭,該函數(shù)的任務(wù)是在對象治理 器 子 系 統(tǒng) 內(nèi) 初 始 化 進(jìn) 程 對 象 ; 每 一 進(jìn) 程 都 以 調(diào) 用 ExitProcess 或 TerminateProcess API 函數(shù)終止;通常應(yīng)用程序的框架負(fù)責(zé)調(diào)用 ExitProcess 函數(shù);進(jìn)程都是有始有終,其中有中斷,仍有處

14、理進(jìn)程間互斥的函數(shù),已達(dá)到進(jìn) 程的完成后自然終止; 試驗三 進(jìn)程同步的經(jīng)典算法 1,試驗?zāi)康?1 回憶系統(tǒng)進(jìn)程,線程的有關(guān)概念,加深對 Windows 2022 線程的懂得; 2 明白互斥體對象,通過對生產(chǎn)者消費(fèi)者等進(jìn)程間同步與互斥經(jīng)典算法的 精品資料 第 7 頁,共 24 頁實現(xiàn),加深對 P,V 原語以及利用 P,V 原語進(jìn)行進(jìn)程間同步與互斥操作的懂得; 2,試驗內(nèi)容和步驟 ( 1). 生產(chǎn)者消費(fèi)者問題 步驟 1:創(chuàng)建一個“Win32 的程序,編譯成可執(zhí)行文件; Consol Application ”工程,然后拷貝清單 3-1 中 步驟 2:在“命令提示符”窗口運(yùn)行步驟 1 中生成的可執(zhí)行

15、文件;運(yùn)行結(jié) 果: 范例: 課程os 課os 試驗 程序 os11debugos31 假設(shè)編譯生成的可執(zhí)行文件是 os31.exe 步驟 3:仔細(xì)閱讀源程序,找出創(chuàng)建線程的 WINDOWS API 函數(shù),回答下 列問題: 線程的第一個執(zhí)行函數(shù)是什么 (從哪里開頭執(zhí)行) ?它位于創(chuàng)建線程的 API 函數(shù)的第幾個參數(shù)中? 第一個執(zhí)行函數(shù)是: DWORD Produce; WINAPI ProducerLPVOID lpPara 它位于創(chuàng)建線程的 API 函數(shù)的第 3 個參數(shù)中; 步驟 4:修改清單 3-1 中的程序,調(diào)整生產(chǎn)者線程和消費(fèi)者線程的個數(shù),使 得消費(fèi)者數(shù)目大與生產(chǎn)者,看看結(jié)果有何不同;運(yùn)

16、行結(jié)果: 精品資料 第 8 頁,共 24 頁從中你可以得出什么結(jié)論: 生產(chǎn)速度快,生產(chǎn)者經(jīng)常等待消費(fèi)者;反之,消費(fèi)者經(jīng)常等待; 步驟 5 :修改清單 3-1 中的程序,按程序注釋中的說明修改信號量 EmptySemaphore 的初始化方法,看看結(jié)果有何不同;運(yùn)行結(jié)果: 步驟 6:依據(jù)步驟 4 的結(jié)果,并查看 MSDN ,回答以下問題 1) CreateMutex 中有幾個參數(shù),各代表什么含義; 答:有三個參數(shù) . 1. LPSECURITY_ATTRIBUTES lpMutexAttributes 2. BOOL bInitialOwner 代表布爾 bInitialOwner 代表安全屬性

17、的指針 3. LPCTSTR lpName 代表 LPCTSTR 類型 lpName 2)CreateSemaphore 幾個參數(shù)中; 中有幾個參數(shù),各代表什么含義,信號量的初值在第 精品資料 第 9 頁,共 24 頁四個 : lpSemaphoreAttributes SECURITY_ATTRIBUTES ,指定一個 SECURI TY_ATTRIBUTES 結(jié)構(gòu),或傳遞零值 表示接受不答應(yīng)繼承的默認(rèn)描述符; 該參數(shù)定義了信號機(jī)的安全特性 ;lInitialCount Long ,設(shè)置信號機(jī)的初始計數(shù); 可設(shè)置零到 lMaximumCount 之間的一個值 ;lMaximumCount L

18、ong ,設(shè)置信號 機(jī)的最大計數(shù) ;lpName String ,指定信號機(jī)對象的名稱; 3)程序中 P,V 原語所對應(yīng)的實際 語句; Windows API 函數(shù)是什么,寫出這幾條 HANDLE Mutex; HANDLE FullSemaphore; HANDLE EmptySemaphore; DWORD WINAPI ProducerLPVOID; DWORD WINAPI ConsumerLPVOID; 4)CreateMutex 能用 CreateSemaphore 替代嗎?嘗試修改程序 3-1 ,將信號量 Mutex 完全用 CreateSemaphore 及相關(guān)函數(shù)實現(xiàn);寫出要

19、修改的語句: 可以 Mutex=CreateSemaphoreNULL,false,false,NULL; (2). 讀者寫者問題 依據(jù)試驗( 1)中所熟識的 P,V 原語對應(yīng)的實際 Windows API 函數(shù),并參 考教材中讀者,寫者問題的算法原理,嘗試?yán)?讀者寫者問題(讀者優(yōu)先) ; 3, 試驗結(jié)論 Windows API 函數(shù)實現(xiàn)第一類 將信號量看作生產(chǎn)或消費(fèi)的一個對象,對信號量的生成和銷毀操作如同 P 操作和 V 操作一樣,生成者消費(fèi)者問題模擬的就是對信號量的生成和銷毀,其 中牽涉了信號量的同步,這也是該問題為何稱為同步的經(jīng)典問題的緣由; 精品資料 第 10 頁,共 24 頁試驗四

20、 儲備治理 1, 試驗?zāi)康?( 1) 通過對 Windows2022“任務(wù)治理器,”“運(yùn)算機(jī)治理,”“我的電腦”屬性“,系統(tǒng) 信息”,“系統(tǒng)監(jiān)視器”等程序的應(yīng)用,學(xué)習(xí)如何觀看和調(diào)整 Windows的內(nèi)存 性能,加深對操作系統(tǒng)儲備治理,虛擬儲備治理等理論學(xué)問的懂得; ( 2) 明白 Windows 2022 的內(nèi)存結(jié)構(gòu)和虛擬內(nèi)存的治理, 懂得進(jìn)程的虛擬內(nèi)存 空間和物理內(nèi)存的映射關(guān)系; 2, 試驗內(nèi)容和步驟 (1)觀看和調(diào)整 Windows 2022/XP 的內(nèi)存性能; 步驟 1:閱讀“背景學(xué)問,”請回答: 1 什么是“分頁過程”? 分頁就是將信息從主內(nèi)存移動到磁盤進(jìn)行臨時儲備的過程 2 什么是“

21、內(nèi)存共享”? 應(yīng)用程序經(jīng)常需要彼此通信和共享信息; _3 什么是“未分頁合并內(nèi)存”和“分頁合并內(nèi)存”? Windows 2022 中,未分頁合并內(nèi)存的最大限制是多少? 分頁合并內(nèi)存是儲備遲早需要的可分頁代碼或數(shù)據(jù)的內(nèi)存部分; 未分頁合并內(nèi)存包含必需駐留在內(nèi)存中的占用代碼或數(shù)據(jù); 4 Windows 2022 分頁文件默認(rèn)設(shè)置的最小容量和最大容量是多少? Windows 2022 使用內(nèi)存數(shù)量的 倍作為分頁文件的最小容量,這個最小 容量的兩倍作為最大容量; 精品資料 第 11 頁,共 24 頁步驟 2:登錄進(jìn)入 Windows 2022 Professional ; 步驟 3:查看包含多個實例的

22、應(yīng)用程序的內(nèi)存需求; 1 啟動想要監(jiān)視的應(yīng)用程序,例如 Word ; 2 右鍵單擊任務(wù)欄以啟動“任務(wù)治理器”; 3 在“Windows 任務(wù)治理器”對話框中選定“進(jìn)程”選項卡; 向 4 下滾動在系統(tǒng)上運(yùn)行的進(jìn)程列表,查找想要監(jiān)視的應(yīng)用程序; 請在表 4-3 中記錄: 映像名稱 PID 表 4-3 試驗記錄 內(nèi)存使用 CPU CPU 時間 WINWORD 368 00 0:00:38 “內(nèi)存使用”列顯示了該應(yīng)用程序的一個實例正在使用的內(nèi)存數(shù)量; 5 啟動應(yīng)用程序的另一個實例并觀看它的內(nèi)存需求; 請描述使用其次個 實例占用的內(nèi)存與使用第一個實例時的內(nèi)存對比情形: 印像名稱: pid:1652 cp

23、u:0:00:26 內(nèi)存使用: 29 , 028 步驟 4:未分頁合并內(nèi)存; 估算未分頁合并內(nèi)存大小的最簡潔方法是使用“任務(wù)治理器” ;未分頁合并內(nèi)存 的估量值顯示在“任務(wù)治理器”的“性能”選項卡的“核心內(nèi)存”部分; 總數(shù) K :分頁數(shù):82076 34900 未分頁 K :47176 仍可以使用“任務(wù)治理器”查看一個獨(dú)立進(jìn)程正在使用的未分頁合并內(nèi)存數(shù)量 和分頁合并內(nèi)存數(shù)量;操作步驟如下: 1 單擊“Windows 任務(wù)治理器”的“進(jìn)程”選項卡然,后從“查看”菜單中選擇“選 擇列”命令,顯示“進(jìn)程”選項卡的可查看選項; 2 在“選擇列”對話框中,選定“頁面緩沖池”選項和“非頁面緩沖池”選項旁邊

24、 精品資料 第 12 頁,共 24 頁的復(fù)選框,然后單擊“確定”按鈕; 返回 Windows 2022 “任務(wù)治理器”的“進(jìn)程”選項卡時將,看到其中增加顯示了 各個進(jìn)程占用的分頁合并內(nèi)存數(shù)量和未分頁合并內(nèi)存數(shù)量; 仍以剛才打開觀看的應(yīng)用程序 例如 Word 為例,請在表 4-4 中記錄: 表 4-4 試驗記錄 非頁面緩沖 映像名稱 PID 內(nèi)存使用 頁面緩沖池 池 WINWORD 368 530 16 從性能的角度來看,未分頁合并內(nèi)存越多,可以加載到這個空間的數(shù)據(jù)就越 多;擁有的物理內(nèi)存越多, 未分頁合并內(nèi)存就越多; 但未分頁合并內(nèi)存被限制為 256MB ,因此添加超出這個限制的內(nèi)存對未分頁合

25、并內(nèi)存沒有影響; 步驟 5:提高分頁性能; 在 Windows 2022 的安裝過程中, 將使用連續(xù)的磁盤空間自動創(chuàng)建分頁文件 pagefile.sys ;用戶可以事先監(jiān)視變化的內(nèi)存需求并正確配置分頁文件,使得 當(dāng)系統(tǒng)必需借助于分頁時的性能達(dá)到最高; 雖然分頁文件一般都放在系統(tǒng)分區(qū)的根目錄下面, 但這并不總是該文件的最 佳位置; 要想從分頁獲得正確性能, 應(yīng)當(dāng)?shù)谝粰z查系統(tǒng)的磁盤子系統(tǒng)的配置, 以 明白它是否有多個物理硬盤驅(qū)動器; 1在“開頭”菜單中單擊“設(shè)置”“把握面板”命令,雙擊“治理工具”圖標(biāo),再 雙擊“運(yùn)算機(jī)治理”圖標(biāo); 2 在“運(yùn)算機(jī)治理”窗口的左格選擇“磁盤治理”治理單元來查看系統(tǒng)的

26、磁盤配 置; 假如系統(tǒng)只有一個硬盤,那么建議應(yīng)當(dāng)盡可能為系統(tǒng)配置額外的驅(qū)動器;這 是由于: Windows 2022 最多可以支持在多個驅(qū)動器上分布的 16 個獨(dú)立的分頁 文件;為系統(tǒng)配置多個分頁文件可以實現(xiàn)對不同磁盤 大大提高 I/O 請求的分頁文件性能; 請在表 4-5 中記錄: 表 4-5 試驗記錄 I/O 請求的并行處理,這將 卷 布局 類型 文件系統(tǒng) 容量 狀態(tài) 精品資料 第 13 頁,共 24 頁C: 磁 盤 分 基本 FAT32 305MB 狀 態(tài) 良 好 系 區(qū) 統(tǒng) D: 磁 盤 分 基本 FAT32 狀態(tài)良好(頁 LENEVO_PART 區(qū) 基本 FAT32 面文件) 磁 盤

27、 分 狀 態(tài) 良 好 區(qū) (EISA 配置) 步驟 6:運(yùn)算分頁文件的大??; 要想更換分頁文件的位置或大小配置參數(shù),可按以下步驟進(jìn)行: 1 右鍵單擊桌面上的“我的電腦”圖標(biāo)并選定“屬性;” 2 在“高級”選項卡上單擊“性能選項”按鈕; 單擊對 3 話框中的“虛擬內(nèi)存”區(qū)域中的“更換”按鈕; 請記錄: 所選驅(qū)動器 C: 的頁面文件大?。?驅(qū)動器: _C: WINXP_ 可用空間: 23298MB 初始大小 MB : 1524 最大值 MB : 3048 所選驅(qū)動器 D: 的頁面文件大小: 假如有的話 驅(qū)動器: D: SOFTTWARE 可用空間: 12925 MB 全部驅(qū)動器頁面文件大小的總數(shù):

28、 答應(yīng)的最小值: 2MB 舉薦: 1522 MB 當(dāng)前已支配: 1524MB 精品資料 第 14 頁,共 24 頁4 要想將另一個分頁文件添加到現(xiàn)有配置, 在“虛擬內(nèi)存”對話框中選定一個 仍沒有分頁文件的驅(qū)動器,然后指定分頁文件的初始值和最大值 以兆字節(jié)表 示 ,單擊“設(shè)置,”然后單擊“確定;”5 要想更換現(xiàn)有分頁文件的最大值和最小值,可選定分頁文件所在的驅(qū)動 器;然后指定分頁文件的初始值和最大值,單擊“設(shè)置”按鈕,然后單擊“確定”按 鈕; 6 在“性能選項”對話框中單擊“確定”按鈕; 7 單擊“確定”按鈕以關(guān)閉“系統(tǒng)特性”對話框; 步驟 7: 使用任務(wù)治理器; 可以使用“任務(wù)治理器”來簡潔地

29、檢查分頁文件是否配置了正確容量;這樣可 以實時供應(yīng)系統(tǒng)正在使用分頁文件的方式以及其他重要系統(tǒng)信息的精確描述; 通過右鍵單擊任務(wù)欄運(yùn)行“任務(wù)治理器”,選定“性能”選項卡查看實時的系統(tǒng)統(tǒng) 計數(shù)據(jù);與分頁文件大小最有關(guān)的信息位于“認(rèn)可用量”區(qū)域;這一區(qū)域顯示了認(rèn) 可“峰值”是否達(dá)到或超過了認(rèn)可“限制,”以及它是否超過了系統(tǒng)上的物理內(nèi)存數(shù) 量;認(rèn)可“峰值”是指系統(tǒng)迄今為止向進(jìn)程支配的最大物理內(nèi)存和虛擬內(nèi)存數(shù)量; 請記錄: 物理內(nèi)存 K 總數(shù): 1039724 可用數(shù): 517644 系統(tǒng)緩存: 501940 認(rèn)可用量 K 總數(shù): 859572 限制: 2500780 峰值: 1238956 當(dāng)系統(tǒng)遇到

30、分頁活動增加的情形時,提交的內(nèi)存數(shù)量 “認(rèn)可總數(shù)” 就會增 加;一旦它達(dá)到了“認(rèn)可限制”值,系統(tǒng)就需要擴(kuò)展分頁文件;“認(rèn)可限制”值指出在 不必擴(kuò)展分頁文件的情形下可以向內(nèi)存提交的虛擬內(nèi)存數(shù)量; 由于目標(biāo)是防止擴(kuò) 展分頁文件,所以必需保持“認(rèn)可總數(shù)”和“認(rèn)可限制”值相差較大;假如這兩個值 接近了,那么系統(tǒng)必需動態(tài)增加分頁文件的大??; 精品資料 第 15 頁,共 24 頁“任務(wù)治理器”的“認(rèn)可用量”區(qū)域顯示的信息仍說明白系統(tǒng)的主內(nèi)存是否足以 中意系統(tǒng)執(zhí)行的任務(wù);假如認(rèn)可“總數(shù)”值經(jīng)常超過系統(tǒng)中的內(nèi)存數(shù)量,那么系統(tǒng) 的物理內(nèi)存可能不足; ( 2)明白和檢測進(jìn)程的虛擬內(nèi)存空間; 步驟 1: 創(chuàng)建一個“

31、Win32 的程序,編譯成可執(zhí)行文件; Consol Application ”工程,然后拷貝清單 4-1 中 步驟 2:在 VC 的工具欄單擊“Execute Program”執(zhí)行程序 按鈕,或者按 Ctrl + F5 鍵,或者在“命令提示符”窗口運(yùn)行步驟 1 中生成的可執(zhí)行文件; 范例: 課程os 課os 試驗 程序 os11debugos41 假設(shè)編譯生成的可執(zhí)行文件是 os41.exe 步驟 3: 依據(jù)運(yùn)行結(jié)果,回答以下問題 虛擬內(nèi)存每頁容量為: 最小應(yīng)用地址: 0 x00010000 最大應(yīng)用地址: 0 x7ffeffff_ 當(dāng)前可供應(yīng)用程序使用的內(nèi)存空間為: 當(dāng)前運(yùn)算機(jī)的實際內(nèi)存大

32、小為: 理論上每個 Windows 應(yīng)用程序可以獨(dú)占的最大儲備空間是: 提示: 可供應(yīng)用程序使用的內(nèi)存空間實際上已經(jīng)減去了開頭與結(jié)尾 兩個 64KB 的愛惜區(qū);虛擬內(nèi)存空間中的 64KB 愛惜區(qū)是防止編程錯誤 的一種 Windows 方式;任何對內(nèi)存中這一區(qū)域的拜望 讀,寫,執(zhí)行 都 將引發(fā)一個錯誤陷阱,從而導(dǎo)致錯誤并終止程序的執(zhí)行; 按 committed , reserved ,free 等三種虛擬地址空間分別記錄試驗數(shù)據(jù);其 中“描述”是指對該組數(shù)據(jù)的簡潔描述,例如,對以下一組數(shù)據(jù): 00010000 00012022 Committed, READWRITE, Private 可描述為

33、:具有 READWRITE 權(quán)限的已調(diào)配私有內(nèi)存區(qū); 將系統(tǒng)當(dāng)前的自由區(qū) free 虛擬地址空間填入表 4-6 中; 精品資料 第 16 頁,共 24 頁表 4-6 試驗記錄 虛擬 地址 地址 大小 拜望權(quán)限 描述 空間 類型 00012022-00020220 free NOACCESS KB 00021000-00030000 KB free NOACCESS 00133000-00140000 KB free NOACCESS 00276000-00280000 free NOACCESS KB 002c1000-002d0000 free NOACCESS KB 00311000-00

34、320220 free NOACCESS KB 00326000-00330000 free NOACCESS KB 00371000-00380000 free NOACCESS KB 00391000-003a0000 free NOACCESS 精品資料 第 17 頁,共 24 頁KB 003a1000-003b0000 free NOACCESS KB 003c3000-003d0000 free NOACCESS KB 128 003KB free NOACCESS 00485000-00490000 free NOACCESS KB 00558000-

35、00560000 free NOACCESS KB 00663000-00670000 free NOACCESS KB 00970000-62c20220 free NOACCESS GB 275 62c29000-73fa0000 free NOACCESS MB 7400free NOACCESS MB 7631d000-77be0000 MB free NOACCESS 77c38000-77d10000 864 free NOACCESS 精品資料 第 18 頁,共 24 頁KB 77e49000-77e50000 KB free NOACCESS 77e

36、e2022-77ef0000 free NOACCESS KB 77f39000-77f40000 KB free NOACCESS 77fb6000-77fc0000 free NOACCESS KB 77fd1000-7c800000 free NOACCESS MB 提示: 詳細(xì)記錄試驗數(shù)據(jù)在試驗活動中是必要的,但想想是否可以 簡化記錄的方法? 將系統(tǒng)當(dāng)前的已調(diào)配區(qū) committed 虛擬地址空間填入表 4-7 中; 表 4-7 試驗記錄 虛擬地址 地址 大小 拜望權(quán)限 描述 空間類型 00010000-00012022 committed READWRITE, Private KB

37、00020220-00021000 committed READWRITE, Private KB 精品資料 第 19 頁,共 24 頁GUARD, 0012c000-0012d000 KB committed READWRITE, Private 0012committed READWRITE, Private KB 00140000-00145000 committed READWRITE, Private KB 00240000-00246000 committed READWRITE, Private KB 00250000-00253000 KB comm

38、itted READWRITE, Mapped 00260000-00276000 KB committed READONLY, Mapped 00280000-002c1000 260 committed READONLY, Mapped KB 002260 committed READONLY, Mapped KB 00320220-00326000 committed READONLY, Mapped KB 00330000-00371000 260 committed READONLY, Mapped KB 00380000-00388000 commit

39、ted READWRITE, Private KB 精品資料 第 20 頁,共 24 頁00390000-00391000 committed READWRITE, Private KB 003a0000-003a1000 committed READWRITE, Private KB 003b0000-003b4000 committed READWRITE, Private KB 003c0000-003c3000 committed READONLY, Mapped KB 003d0000-003d3000 KB committed READWRITE, Private Image, Module: 00400000-00401000 KB committed READONLY, Image 00401000-00470000 444 committed EXECUTE_RE

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論