freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

操作系統(tǒng)實驗報告附思考題-文庫吧資料

2025-03-31 02:42本頁面
  

【正文】 表和零鏈表不斷減少,甚至為空。5 在系統(tǒng)進程中分配虛擬頁和釋放虛擬頁調(diào)試釋放虛擬頁的過程:BaseAddress 由初始化的變成了和 RegionSize由初始化的變成了。4 閱讀控制臺命令“vm”相關(guān)的源代碼,并查看其執(zhí)行的結(jié)果輸入命令“ A: \”后按回車。通過查看進程邏輯地址空間的使用情況,并練習分配和回收虛擬內(nèi)存, 從而掌握進程邏輯地址空間的管理方法。3. EOS 內(nèi)核時間片大小取 60ms,在線程比較多時,就可以觀察出線程輪流執(zhí)行的情況,但是在 Windows、Linux 等操作系統(tǒng)啟動后,正常情況下都有上百個線程在并發(fā)執(zhí)行,為什么覺察不到它們被輪流執(zhí)行,并且每個程序都運行的很順利呢?答:因為時間片選取合適,線程輪流運行,體現(xiàn)了其虛擬性。答:(1)因為其他優(yōu)先隊列的線程等待時間不能過長。使用開中斷和關(guān)中斷進程同步不會改變線程狀態(tài),可以保證那些沒有獲得處理器的資源都在就緒隊列中。答:EOS會設(shè)置CPU停止響應(yīng)外部設(shè)備產(chǎn)生的硬中斷,也就不會在由硬中斷觸發(fā)線程調(diào)度。三、綜合實驗總結(jié)或結(jié)論1. 結(jié)合線程調(diào)度執(zhí)行的時機,說明在 ThreadFunction 函數(shù)中,為什么可以使用“關(guān)中斷”和“開中斷”方法來保護控制臺這種臨界資源。}{if(BIT_TEST(PspReadyBitmap,TICKS_OF_TIME_SLICE。 PspCurrentThreadRemainderTicks{==if PspCurrentThreadRemainderTicks。Running==PspCurrentThreadState)if(NULL!=PspCurrentThreadamp。){VOIDPspRoundRobin(顯示0x18=24繼續(xù)調(diào)試優(yōu)先級24 的線程已經(jīng)進入了“運行”狀態(tài)。PspReadyListHeads[24]) ”,其值為 1,說明優(yōu)先級為 24 的就緒隊列中只有一個就緒線程。在“監(jiān)視”窗口中查看就緒位圖的值為 1000000000000000100000001,說明此時在優(yōu)先級為 24的 就 緒 隊 列 中 存 在 就 緒 線 程 。查看變量 HighestPriority 的值為 8。二、實驗正文1 準備實驗2 閱讀控制臺命令“rr”相關(guān)的源代碼3 調(diào)試線程調(diào)度程序 調(diào)試當前線程不被搶先的情況查看 ThreadFunction 函數(shù)中變量 pThreadParameterY 的值應(yīng)該為 0,說明正在調(diào)試的是第 0個新建的線程。實驗 6 時間片輪轉(zhuǎn)調(diào)度 綜合實驗的目的與要求調(diào)試 EOS 的線程調(diào)度程序,熟悉基于優(yōu)先級的搶先式調(diào)度。 2. 根據(jù)本實驗 節(jié)中設(shè)置斷點和調(diào)試的方法,自己設(shè)計一個類似的調(diào)試方案來驗證消費者線程在消費 24 號產(chǎn)品時會被阻塞,直到生產(chǎn)者線程生產(chǎn)了 24 號產(chǎn)品后,消費者線程才被喚醒并繼續(xù)執(zhí)行的過程。測試結(jié)果:根據(jù)文檔中的測試方法可看到結(jié)果中有兩個消費者三、綜合實驗總結(jié)或結(jié)論1. 思考在 ps/ 文件內(nèi)的 PsWaitForSemaphore 和 PsReleaseSemaphore 函數(shù)中,為什么要使用原子操作?答:EOS 內(nèi)核中維護了大量內(nèi)核數(shù)據(jù),正是這些數(shù)據(jù)描述了EOS操作系統(tǒng)的狀態(tài)如果有一組相互關(guān)聯(lián)的內(nèi)核數(shù)據(jù)共同描述了這個操作系統(tǒng)的某個狀態(tài),那么在修改這樣一組內(nèi)核數(shù)據(jù)時就必須保證一致性。returnKeEnableInterrupts(IntState)。=}ReleaseCount。PspThreadSchedule()。STATUS_SUCCESS)。(ReleaseCount)){PspWakeThread(amp。SemaphoreWaitListHead))amp。(2)修改PsReleaseSemaphore函數(shù):whileflag。} KeEnableInterrupts(IntState)。Milliseconds)。 else{ flag=PspWait(amp。0){(SemaphoreCount查看 PsReleaseSemaphore 函數(shù)中 Empty 信號量計數(shù)( SemaphoreCount)的值為1,和生產(chǎn)者線程被阻塞時的值是一致的。 等待信號量(阻塞)在“調(diào)用堆棧”窗口中雙擊 Producer 函數(shù)所在的堆棧幀,綠色箭頭指向等待 Empty 信號量的代碼行,查看 Producer 函數(shù)中變量 i 的值為 14,表示生產(chǎn)者線程正在嘗試生產(chǎn) 14 號產(chǎn)品。 Empty的計數(shù)減少了 1(由 10 變?yōu)榱?9) 釋放信號量(不喚醒)完成 PsReleaseSemaphore 函數(shù)中的所有操作。 實驗正文1 準備實驗2 使用 EOS 的信號量解決生產(chǎn)者-消費者問題3 調(diào)試 EOS 信號量的工作過程 創(chuàng)建信號量PsInitializeSemaphore 函數(shù)中用來初始化信號量結(jié)構(gòu)體成員的值,應(yīng)該和傳入 CreateSemaphore 函數(shù)的參數(shù)值是一致的。調(diào)試跟蹤 EOS 信號量的工作過程,理解進程同步的原理。//關(guān)中斷 KeEnableInterrupts(IntState)。 4. 請讀者找出這些轉(zhuǎn)換過程的原語操作(關(guān)中斷和開中斷) 是在哪些代碼中完成的。3. 總結(jié)一下在圖 53 中顯示的轉(zhuǎn)換過程,哪些需要使用線程控制塊中的上下文,哪些不需要使用, 并說明原因。答:有一個優(yōu)先級為0的空閑線程處于就緒狀態(tài),8個優(yōu)先級為24的控制臺線程處于阻塞狀態(tài),1個優(yōu)先級的24的控制臺派遣線程處于阻塞狀態(tài) 。 線程由運行狀態(tài)進入就緒狀態(tài) 線程由就緒狀態(tài)進入運行狀態(tài) 線程由運行狀態(tài)進入阻塞狀態(tài)3 為線程增加掛起狀態(tài)三、綜合實驗總結(jié)或結(jié)論1. 思考一下,在本實驗中,當 loop 線程處于運行狀態(tài)時, EOS 中還有哪些線程,它們分別處于什么狀態(tài)。按 F10 單步調(diào)試直到此函數(shù)的最后。在“調(diào)用堆棧”窗口中雙擊 PspUnwaitThread 函數(shù)對應(yīng)的堆棧項, 按F10調(diào)試,此時 State 域的值為 0( Zero), 雙向鏈表項 StateListEntry 的 Next 和 Prev 指針的值都為 0, 說明這個線程已經(jīng)處于游離狀態(tài)。通過為線程增加掛起狀態(tài),加深對線程狀態(tài)的理解。這三個函數(shù)知道自己從哪里開始執(zhí)行,執(zhí)行哪些指令,因此不能交換它們的順序。能夠交換這些函數(shù)被調(diào)用的順序嗎?答:PspCreateProcessEnvironment CloseHandle()。 CloseHandle()。…… CloseHandle()。 printf(\nThe process 10 exit with %d.\n, ulExitCode)?!? GetExitCodeProcess(, amp。ulExitCode)。ulExitCode)?!? WaitForSingleObject(, INFINITE)。 WaitForSingleObject(, INFINITE)。StartupInfo, amp。amp。StartupInfo, amp。amp。StartupInfo, amp。amp。StartupInfo, amp。6 練習通過編程的方式創(chuàng)建應(yīng)用程序的多個進程多個進程并發(fā)執(zhí)行的結(jié)果:有結(jié)果顯示可知有兩個進程在執(zhí)行三、綜合實驗總結(jié)或結(jié)論1. 在源代碼文件 提供的源代碼基礎(chǔ)上進行修改,要求使用 同時創(chuàng)建 10 個進程。查看 main 函數(shù)的指令所在的虛擬地址都是小于 0x80000000,說明應(yīng)用程序( )處于低 2G 的虛擬地址空間中。調(diào)試跟蹤 CreateProcess 函數(shù)的執(zhí)行過程,了解進程的創(chuàng)建過程,理解進程是資源分配的單位。限制: 1c00k。第一個可用用戶區(qū)是低地址區(qū),且空間大小比較小,適合容納小文件。 0x1000 處呢?這樣做有什么好處?這樣做會對 文件的大小有哪些限制。注:“屬性”對話框中看。 文件的大小,自己設(shè)計一個查看內(nèi)存的調(diào)試命令,轉(zhuǎn)換為十六進制的61E,所以程序最后八個字節(jié)在物理內(nèi)存的0x1616到0x161D的位置,所以調(diào)試命令為xp/8b 0x1616。,驗證上位內(nèi)存的高地址端已經(jīng)被系統(tǒng)占用。 自己設(shè)計兩個查看內(nèi)存的調(diào)試命令,驗證這兩個
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1