国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 操作系統(tǒng) > 正文

lab1 part1 pc bootstrap

2024-06-28 16:02:06
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

寫在前面的話:

做這個(gè)實(shí)驗(yàn)主要是為了對(duì)操作系統(tǒng)有一個(gè)更具體的了解,并且在這個(gè)過(guò)程中鞏固一下自己的基礎(chǔ)知識(shí)。

實(shí)驗(yàn)需要:

虛擬機(jī) Ubuntu系統(tǒng) 材料網(wǎng)址為:https://pdos.csail.mit.edu/6.828/2016

虛擬機(jī)我用的是Oracle VM virtualBox 

Part 1: PC Bootstrap

The purpose of the first exercise is to introduce you to x86 assembly language and the PC bootstrap PRocess, and to get you started with QEMU and QEMU/GDB debugging. You will not have to write any code for this part of the lab, but you should go through it anyway for your own understanding and be prepared to answer the questions posed below.

part1的主要目的是介紹x86和PC bootstrap還有就是調(diào)試

這里把材料git clone以后 進(jìn)入到Lab這個(gè)目錄下需要make編譯,大概需要40分鐘左右。

成功以后 make qemu 如果出現(xiàn)

就說(shuō)明之前的編譯成功了,就可以開(kāi)始做實(shí)驗(yàn)了。

物理地址:

在最開(kāi)始的16位英特爾8088處理器的計(jì)算機(jī)中,只有1MB的物理空間,1MB以上的部分都沒(méi)有,計(jì)算機(jī)只能用LOW MEMORY那一塊地址(RAM)

VGA DIAPLAY內(nèi)存部分給一些硬件用,像是顯示屏這類的。

16-bit devices 這塊也是給一些設(shè)備用。

bios rom這塊內(nèi)存負(fù)責(zé)機(jī)器的一些基礎(chǔ)設(shè)備的初始化,比如顯卡啊內(nèi)存的初始化等。這一塊還有接下去要講的一個(gè)最重要的一個(gè)功能就是把操作系統(tǒng)的代碼從外存中(像磁盤啊軟盤都叫外存)讀到內(nèi)存中

The ROM BIOS

這部分講的是在計(jì)算機(jī)按下電源鍵的時(shí)候究竟發(fā)生了什么。

還沒(méi)有進(jìn)行調(diào)試時(shí),第一句的物理地址是f000:fff0,這塊物理地址的計(jì)算方法是早期計(jì)算機(jī)16位數(shù)據(jù)線和20位地址線之間的歷史原因,有需要的同學(xué)可以自行百度一下。算的方法是f0000+fff0,則物理地址應(yīng)該是ffff0,也就是按下電源鍵的一瞬間,跳轉(zhuǎn)到了ffff0這個(gè)地址上。

根據(jù)前面的物理地址的分布圖可以發(fā)現(xiàn),這個(gè)物理地址是在BIOS ROM區(qū)域中的。

至于為什么會(huì)直接跳轉(zhuǎn)到這個(gè)位置,這是由硬件控制的。至于為什么要跳轉(zhuǎn)到這個(gè)位置,查閱了一些資料意思就是大家的一個(gè)標(biāo)準(zhǔn),硬件都按這個(gè)標(biāo)準(zhǔn)來(lái)做,才能適用于所有不同的計(jì)算機(jī)。開(kāi)機(jī)都直接能到這個(gè)位置然后在這個(gè)位置“燒制”接下來(lái)計(jì)算機(jī)開(kāi)機(jī)需要的代碼。

這行代碼跳轉(zhuǎn)到了fe05b這個(gè)位置,還在BIOS區(qū)域內(nèi)。繼續(xù)執(zhí)行就是一些硬件初始化。

到這里第一部分就完成了


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 张家口市| 巴青县| 通化市| 牟定县| 肃北| 库伦旗| 合水县| 凌源市| 东莞市| 定远县| 鄂尔多斯市| 永城市| 临江市| 遂川县| 杂多县| 呼玛县| 衡东县| 大姚县| 石泉县| 敦煌市| 准格尔旗| 庐江县| 赣州市| 铜鼓县| 麻阳| 康定县| 内乡县| 新乐市| 天气| 郸城县| 金秀| 偃师市| 马公市| 邓州市| 宝坻区| 望都县| 朔州市| 勐海县| 临桂县| 淮滨县| 定襄县|