合工大操作系統(tǒng)實(shí)驗(yàn)_第1頁
合工大操作系統(tǒng)實(shí)驗(yàn)_第2頁
合工大操作系統(tǒng)實(shí)驗(yàn)_第3頁
合工大操作系統(tǒng)實(shí)驗(yàn)_第4頁
合工大操作系統(tǒng)實(shí)驗(yàn)_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、實(shí)驗(yàn)1 實(shí)驗(yàn)環(huán)境的使用一.實(shí)驗(yàn)?zāi)康?.熟悉操作系統(tǒng)集成實(shí)驗(yàn)環(huán)境OS Lab的基本使用方法。 2.練習(xí)編譯、調(diào)試EOS操作系統(tǒng)內(nèi)核以及EOS應(yīng)用程序。二.實(shí)驗(yàn)內(nèi)容1啟動(dòng)OS Lab2. 學(xué)習(xí)OS Lab的基本使用方法2.1新建Windows控制臺(tái)應(yīng)用程序項(xiàng)目 2.2生成項(xiàng)目2.3執(zhí)行項(xiàng)目2.4調(diào)試項(xiàng)目 2.4.1 使用斷點(diǎn)中斷執(zhí)行 2.4.2單步調(diào)試 2.4.3查看變量的值 2.4.4調(diào)用堆棧3. EOS內(nèi)核項(xiàng)目的生成和調(diào)試 3.1新建EOS內(nèi)核項(xiàng)目 3.2生成項(xiàng)目3.3調(diào)試項(xiàng)目3.4查看軟盤鏡像文件中的內(nèi)容3.5查看EOS SDK(Software Development Kit)文件夾4.

2、EOS應(yīng)用程序項(xiàng)目的生成和調(diào)試 4.1新建EOS應(yīng)用程序項(xiàng)目 4.2生成項(xiàng)目 4.3調(diào)試項(xiàng)目4.4查看軟盤鏡像文件中的內(nèi)容4.5修改EOS應(yīng)用程序項(xiàng)目名稱5 退出OS Lab6 保存EOS內(nèi)核項(xiàng)目三.實(shí)驗(yàn)結(jié)果本實(shí)驗(yàn)主要是熟悉EOS操作系統(tǒng)的基本操作,練習(xí)了:(1)新Windows控制臺(tái)應(yīng)用程序項(xiàng),1.“文件”菜單中選擇“新建”,然后單擊“項(xiàng)目”。2. 在“新建項(xiàng)目”對(duì)話框中,選擇項(xiàng)目模板“控制臺(tái)應(yīng)用程序 (c)”。3. 在“名稱”中輸入新項(xiàng)目使用的文件夾名稱“oslab”。4. 在“位置”中輸入新項(xiàng)目保存在磁盤上的位置“C:test”。新建完畢后, OS Lab 會(huì)自動(dòng)打開這個(gè)新建的項(xiàng)目。(2

3、)在“生成”菜單中選擇“生成項(xiàng)目”。結(jié)果如圖(3)執(zhí)行項(xiàng)目:選擇“調(diào)試”菜單中的“開始執(zhí)行”(4)調(diào)試項(xiàng)目:1. 右鍵點(diǎn)擊“項(xiàng)目管理器”窗口中的“源文件”文件夾節(jié)點(diǎn),在彈出的快捷菜單中選擇“添加”中的“添加新文件”。 2. 在彈出的“添加新文件”對(duì)話框中選擇“C 源文件”模板。 3. 在“名稱”中輸入文件名稱“func”。 4. 點(diǎn)擊“添加”按鈕,添加并自動(dòng)打開文件func.c,此時(shí)的“項(xiàng)目管理器”窗口會(huì)如圖: (5). 在 func.c 文件中添加函數(shù): int Func (int n) n = n + 1; return n; (6). 點(diǎn)擊源代碼編輯器上方的console.c標(biāo)簽,切換到

4、console.c文件。將 main 函數(shù)修改為: int main (int argc, char* argv) int Func (int n); / 聲明Func函數(shù) int n = 0; n = Func(10); printf ("Hello World!n"); return 0; 代碼修改完畢后按F7實(shí)驗(yàn)結(jié)果為輸出:Hello World!(7). 在main函數(shù)中定義變量n的代碼行 int n = 0; 上點(diǎn)擊鼠標(biāo)右鍵,在彈出的快捷菜單中選擇“插入/刪除斷點(diǎn)”,會(huì)在此行左側(cè)的空白處顯示一個(gè)紅色圓點(diǎn),表示已經(jīng)成功在此行代碼添加了一個(gè)斷點(diǎn)練習(xí)使用“逐過程”, “

5、逐語句”,“跳出”功能(8).在源代碼編輯器中變量n的名稱上點(diǎn)擊鼠標(biāo)右鍵,在彈出的快捷菜單中選擇“快速監(jiān)視”,進(jìn)行單步測(cè)試,觀察n結(jié)果依次為0,11(9)調(diào)用堆棧,選擇“調(diào)試”菜單“窗口”中的“調(diào)用堆?!?,激活“調(diào)用堆?!贝翱?。可以看到當(dāng)前“調(diào)用堆?!贝翱谥兄挥幸粋€(gè)main函數(shù)(顯示的內(nèi)容還包括了參數(shù)值和函數(shù)地址)。 按F11(“逐語句”功能的快捷鍵)調(diào)試,直到進(jìn)入Func函數(shù) ,其中當(dāng)前正在調(diào)試的Func函數(shù)在棧頂位置,main函數(shù)在棧底位置。說明是在main函數(shù)中調(diào)用了Func函數(shù)。 (10)查看軟盤鏡像文件中的內(nèi)容,在“項(xiàng)目管理器”窗口中雙擊軟盤鏡像文件Floppy.img四.實(shí)驗(yàn)總結(jié)今

6、天第一次進(jìn)行操作系統(tǒng)這門課的實(shí)驗(yàn),學(xué)習(xí)了使用OS Lab的這個(gè)實(shí)驗(yàn)環(huán)境,進(jìn)行了新建Windows控制臺(tái)應(yīng)用程序項(xiàng)目、生成項(xiàng)目、執(zhí)行項(xiàng)目、調(diào)試項(xiàng)目以及EOS應(yīng)用程序項(xiàng)目的生成和調(diào)試;設(shè)置間斷點(diǎn),并且在它的基礎(chǔ)上進(jìn)行了單步操作;詳細(xì)觀察了通過“快速監(jiān)視“標(biāo)記的數(shù)的值的變化過程等基本操作,這也為以后實(shí)驗(yàn)的順利進(jìn)行打下了良好的基礎(chǔ)。五:備注說明在機(jī)房完成實(shí)驗(yàn)2 操作系統(tǒng)的啟動(dòng)一.實(shí)驗(yàn)?zāi)康?.跟蹤調(diào)試EOS在PC機(jī)上從加電復(fù)位到成功啟動(dòng)的全過程,了解操作系統(tǒng)的啟動(dòng)過程。 2.查看EOS啟動(dòng)后的狀態(tài)和行為,理解操作系統(tǒng)啟動(dòng)后的工作方式。 二.實(shí)驗(yàn)內(nèi)容1 準(zhǔn)備實(shí)驗(yàn)2 調(diào)試EOS操作系統(tǒng)的啟動(dòng)過程2.1 使用

7、Bochs做為遠(yuǎn)程目標(biāo)機(jī)2.2 調(diào)試BIOS程序2.3 調(diào)試軟盤引導(dǎo)扇區(qū)程序2.4 調(diào)試加載程序2.5 調(diào)試內(nèi)核2.6 EOS啟動(dòng)后的狀態(tài)和行為三.實(shí)驗(yàn)結(jié)果1.新建一個(gè)EOS Kernel項(xiàng)目。 2.使用Bochs做為遠(yuǎn)程目標(biāo)機(jī)(1)在“項(xiàng)目管理器”窗口中,右鍵點(diǎn)擊項(xiàng)目節(jié)點(diǎn),在彈出的快捷菜單中選擇“屬性”。 (2) 在彈出的“屬性頁”對(duì)話框右側(cè)的屬性列表中找到“遠(yuǎn)程目標(biāo)機(jī)”屬性,將此屬性值修改為“Bochs Debug” (3)點(diǎn)擊“確定”按鈕關(guān)閉“屬性頁”對(duì)話框。接下來就可以使用Bochs模擬器調(diào)試BIOS程序和軟盤引導(dǎo)扇區(qū)程序了。 3.按F5啟動(dòng)調(diào)試,此時(shí)會(huì)彈出兩個(gè)Bochs窗口。標(biāo)題為“

8、Bochs for windows - Display”的窗口相當(dāng)于計(jì)算機(jī)的顯示器,顯示操作系統(tǒng)的輸出。標(biāo)題為“Bochs for windows - Console”的窗口是Bochs的控制臺(tái),用來輸入調(diào)試命令,輸出各種調(diào)試信息。4.啟動(dòng)調(diào)試后,Bochs在CPU要執(zhí)行的第一條指令(即BIOS的第一條指令)處中斷。 此時(shí),Display窗口沒有顯示任何內(nèi)容,Console窗口顯示要執(zhí)行的BIOS第一條指令的相關(guān)信息,并等待用戶輸入調(diào)試命令5.然后查看CPU在沒有執(zhí)行任何指令之前主要寄存器中的數(shù)據(jù),以及內(nèi)存中的數(shù)據(jù)(1)在Console窗口中輸入調(diào)試命令sreg后按回車,顯示當(dāng)前CPU中各個(gè)段寄存器的值(2)輸入調(diào)試命令r后按回車,顯示當(dāng)前CPU中各個(gè)通用寄存器的值(3)輸入調(diào)試命令xp /1024b 0x0000,查看開始的1024個(gè)字節(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ū)還沒有被加載到此處。 6.EOS啟動(dòng)后的狀態(tài)和行為(1) 在控制臺(tái)中輸入命令“ver”后按回車。結(jié)果如圖 (2)查看EOS啟動(dòng)后的進(jìn)程和線程的信息: 在控制臺(tái)中輸入命令“pt”后按回車。輸出的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論