原文:MIT 6.828 JOS學習筆記3. Exercise 1.2

這篇博文是對Lab 中的Exercise 的解答 Lab Exercise : 使用GDB的 si 命令,去追蹤ROM BIOS幾條指令,並且試圖去猜測,它是在做什么。但是不需要把每個細節都弄清楚。 答: 在這里我們將盡可能的去分析每一條指令,由於題目中說我們只需要知道BIOS的幾條指令在做什么就夠了,所以我們也會盡可能的去分析,由於能力有限,這里面有很多問題還沒有解決,希望大家諒解。以后有機會會 ...

2015-12-26 16:10 5 5724 推薦指數:

查看詳情

MIT 6.828 JOS學習筆記5. Exercise 1.3

Lab 1 Exercise 3  設置一個斷點在地址0x7c00處,這是boot sector被加載的位置。然后讓程序繼續運行直到這個斷點。跟蹤/boot/boot.S文件的每一條指令,同時使用boot.S文件和系統為你反匯編出來的文件obj/boot/boot.asm。你也可以使用GDB的x ...

Thu Feb 25 21:00:00 CST 2016 3 5538
MIT 6.828 JOS學習筆記13 Exercise 1.10

Lab 1 Exercise 10   為了能夠更好的了解在x86上的C程序調用過程的細節,我們首先找到在obj/kern/kern.asm中test_backtrace子程序的地址, 設置斷點,並且探討一下在內核啟動后,這個程序被調用時發生了什么。對於這個循環嵌套調用的程序 ...

Thu Mar 10 22:37:00 CST 2016 2 2302
MIT 6.828 JOS學習筆記12 Exercise 1.9

Lab 1中Exercise 9的解答報告 Exercise 1.9:   判斷一下操作系統內核是從哪條指令開始初始化它的堆棧空間的,以及這個堆棧坐落在內存的哪個地方?內核是如何給它的堆棧保留一塊內存空間的?堆棧指針又是指向這塊被保留的區域的哪一端的呢? 答:   1. 首先需要判斷 ...

Thu Mar 10 22:37:00 CST 2016 0 2002
MIT 6.828 JOS學習筆記9. Exercise 1.5

Lab 1 Exercise 5   再一次追蹤一下boot loader的一開始的幾句指令,找到第一條滿足如下條件的指令處:   當我修改了boot loader的鏈接地址,這個指令就會出現錯誤。   找到這樣的指令后,把boot loader的鏈接地址修改一下,我們要在boot ...

Fri Feb 26 20:58:00 CST 2016 0 1900
MIT 6.828 JOS學習筆記11 Exercise 1.8

Exercise 1.8 我們丟棄了一小部分代碼---即當我們在printf中指定輸出"%o"格式的字符串,即八進制格式的代碼。嘗試去完成這部分程序。 解答:   在這個練習中我們首先要閱讀以下三個源文件的代碼,弄清楚他們三者之間的關系:   三個文件分別為 \kern ...

Tue Mar 08 23:54:00 CST 2016 0 2789
MIT 6.828 JOS學習筆記2. Lab 1 Part 1.2: PC bootstrap

Lab 1 Part 1: PC bootstrap   我們繼續~ PC機的物理地址空間   這一節我們將深入的探究到底PC是如何啟動的。首先我們看一下通常一個PC的物理地址空間是如何布局的: ...

Sun Dec 27 00:09:00 CST 2015 2 6226
MIT 6.828 JOS學習筆記16. Lab 2.2

Part 3 Kernel Address Space JOS把32位線性地址虛擬空間划分成兩個部分。其中用戶環境(進程運行環境)通常占據低地址的那部分,叫用戶地址空間。而操作系統內核總是占據高地址的部分,叫內核地址空間。這兩個部分的分界線是定義在memlayout.h文件中的一個宏 ULIM ...

Thu Mar 31 10:58:00 CST 2016 2 3987
MIT 6.828 JOS學習筆記10. Lab 1 Part 3: The kernel

Lab 1 Part 3: The kernel   現在我們將開始具體討論一下JOS內核了。就像boot loader一樣,內核開始的時候也是一些匯編語句,用於設置一些東西,來保證C語言的程序能夠正確的執行。 使用虛擬內存   在運行boot loader時,boot loader中的鏈接 ...

Tue Mar 08 23:53:00 CST 2016 1 3818
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM