操作系統(tǒng)的啟動實驗報告(共14頁).doc
《操作系統(tǒng)的啟動實驗報告(共14頁).doc》由會員分享,可在線閱讀,更多相關(guān)《操作系統(tǒng)的啟動實驗報告(共14頁).doc(14頁珍藏版)》請在匯文網(wǎng)上搜索。
1、精選優(yōu)質(zhì)文檔-傾情為你奉上操作系統(tǒng)實 驗 報 告課程名稱操作系統(tǒng)實驗實驗項目名稱操作系統(tǒng)的啟動學(xué)號班級姓名專業(yè)計算機科學(xué)與技術(shù)學(xué)生所在學(xué)院計算機科學(xué)與技術(shù)學(xué)院指導(dǎo)教師實驗室名稱地點計算機基礎(chǔ)第七實驗室 21B475 哈爾濱工程大學(xué)計算機科學(xué)與技術(shù)學(xué)院一、實驗概述1. 實驗名稱操作系統(tǒng)的啟動2. 實驗?zāi)康母櫿{(diào)試 EOS 在 PC 機上從加電復(fù)位到成功啟動的全過程,了解操作系統(tǒng)的啟動過程。 查看EOS啟動后的狀態(tài)和行為,理解操作系統(tǒng)啟動后的工作方式。3. 實驗類型驗證性實驗4. 實驗內(nèi)容調(diào)試EOS操作系統(tǒng)的啟動過程包括:(1).使用Bochs做為遠(yuǎn)程目標(biāo)機;(2).調(diào)試BIOS程序;(3).調(diào)試
2、軟盤引導(dǎo)扇區(qū)程序;(4).調(diào)試加載程序;(5).調(diào)試內(nèi)核;(6).查看EOS啟動后的狀態(tài)和行為 二、實驗環(huán)境EOS操作系統(tǒng)和配套的IDE集成開發(fā)環(huán)境。三、實驗過程1.設(shè)計思路和流程圖CPU從默認(rèn)位置執(zhí)行BIOS的開機自檢和初始化程序,之后 BIOS 將軟盤引導(dǎo)扇區(qū)加載到 0x7C00 并執(zhí)行。 軟盤引導(dǎo)扇區(qū)中的Boot程序開始執(zhí)行,將軟盤根目錄中的Loader程序文件Loader.bin加載到0x1000并執(zhí)行Loader 程序開始執(zhí)行,先加載Kernel.dll,然后啟動保護(hù)模式和分頁機制,最后跳到Kernel.dll的入口點執(zhí)行Kernel.dll開始執(zhí)行,初始化EOS內(nèi)核,EOS啟動完畢
3、圖2-1.EOS操作系統(tǒng)的啟動過程流程圖2.算法實現(xiàn):驗證性試驗,無算法。3.需要解決的問題及解答(試驗指導(dǎo))(1).為什么EOS操作系統(tǒng)從軟盤啟動時要使用boot.bin和loader.bin兩個程序?使用一個可以嗎?它們各自的主要功能是什么?如果將loader.bin的功能移動到boot.bin文件中,則boot.bin文件的大小是否仍然能保持小于512字節(jié)?答:boot文件夾包含了兩個匯編文件boot.asm和loader.asm。這兩個文件生成的二進(jìn)制文件boot.bin和loader.bin會被寫入軟盤鏡像文件。操作系統(tǒng)啟動時boot.bin和loader.bin引導(dǎo)軟盤加載程序,二
4、者缺一不可。使用Boot.bin的主要功能是引導(dǎo)軟盤;loader.bin的主要功能是加載程序。如果把loader.bin功能移動到boot.bin程序中,必然導(dǎo)致程序規(guī)模擴(kuò)大,可能使其大于512字節(jié)。(2).軟盤引導(dǎo)扇區(qū)加載完畢后內(nèi)存中有兩個用戶可用的區(qū)域,為什么軟盤引導(dǎo)扇區(qū)程序選擇將loader.bin加載到第一個可用區(qū)域的0x1000處呢?這樣做有什么好處?這樣做會對loader.bin文件的大小有哪些限制。答:首先用戶只用兩個可用區(qū)域,加載位置非此即彼。第一個可用用戶區(qū)是低地址區(qū),且空間大小比較小,適合容納小文件,所以我們選擇將占用空間小的loder.bin加載到第一用戶區(qū)。優(yōu)點:由低
5、地址開始,便于檢索查找。小文件占用小空間,節(jié)約資源。限制:loader.bin文件必須小于1c00k.(3).練習(xí)使用Bochs單步調(diào)試BIOS程序、軟盤引導(dǎo)扇區(qū)程序和loader程序,加深對操作系統(tǒng)啟動過程的理解。(4). 仔細(xì)比較實驗指導(dǎo)10-5圖和圖10-6,嘗試說明哪個是應(yīng)用程序的進(jìn)程,它和系統(tǒng)進(jìn)程有什么區(qū)別,哪個是應(yīng)用程序的主線程,它和系統(tǒng)線程有什么區(qū)別。答:圖10-6是應(yīng)用程序的進(jìn)程,在進(jìn)程列表中只有一個ID為1的系統(tǒng)進(jìn)程,其優(yōu)先級為24,包含有10個線程,其中的ID為2的線程是該進(jìn)程的主線程,系統(tǒng)進(jìn)程沒有映像名稱。在線程列表中有10個線程,它們都是系統(tǒng)線程。區(qū)別:主線程的優(yōu)先級別
6、高。 存放在物理內(nèi)存的低端。4.主要數(shù)據(jù)結(jié)構(gòu)、實現(xiàn)代碼及其說明:驗證性實驗,無此項目。5.源程序并附上注釋:驗證性實驗,無此項目。6.程序運行時的初值和運行結(jié)果,實驗過程1. 調(diào)試BIOS程序(1). 在Console窗口中輸入調(diào)試命令sreg后按回車,顯示當(dāng)前CPU中各個段寄存器的值,如圖2-1。其中CS寄存器信息行中的“s=0xf000”表示CS寄存器的值為0xf000. (2).輸入調(diào)試命令r后按回車,顯示當(dāng)前CPU中各個通用寄存器的值,如圖10-3。其中“rip: 0x:0000fff0”表示IP寄存器的值為0xfff0。 (3). 輸入調(diào)試命令xp /1024b 0x0000,查看開
7、始的1024個字節(jié)的物理內(nèi)存。在Console中輸出的這1K物理內(nèi)存的值都為0,說明BIOS中斷向量表還沒有被加載到此處。(4). 輸入調(diào)試命令xp /512b 0x7c00,查看軟盤引導(dǎo)扇區(qū)應(yīng)該被加載到的內(nèi)存位置。輸出的內(nèi)存值都為0,說明軟盤引導(dǎo)扇區(qū)還沒有被加載到此處。2. 調(diào)試軟盤引導(dǎo)扇區(qū)程序a. 輸入調(diào)試命令vb 0x0000:0x7c00,這樣就在邏輯地址0x0000:0x7c00(相當(dāng)于物理地址0x7c00)處添加了一個斷點。b. 輸入調(diào)試命令c繼續(xù)執(zhí)行,在0x7c00處的斷點中斷。中斷后會在Console窗口中輸出下一個要執(zhí)行的指令,即軟盤引導(dǎo)扇區(qū)程序的第一條指令,如下 (0) 0
- 1.請仔細(xì)閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
20 積分
下載 | 加入VIP,下載共享資源 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該PPT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計者僅對作品中獨創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 操作系統(tǒng) 啟動 實驗 報告 14