作業系統研究1 8086處理器通電後啟動過程

2021-10-10 01:25:13 字數 936 閱讀 1249

計算的熱啟動是和處理器上的復位按鈕相連的。按下復位鍵後,8086中暫存器的狀態如圖所示。

可見除了cs暫存器,其他的都為0.我們來研究一下cs暫存器的復位後情況。

1mb往下16位元組的位置。

(3)80386:到了386年代,一切都變了,此時cpu reset後cs的只為0xf000,但是cs除了段選擇之外還有乙個隱藏的基址暫存器,這個寄存

器的值為0xffff0000,ip的值仍然為0xfff0,此時的計算演算法也不是上面的左移4位了,而是0xffff0000 + 0xfff0 = 0xfffffff0,這個位址已經是很高的位址了,是4g往下16位元組的位置。

可見,8086似乎和其他後來新生代的處理器不一樣,畢竟時代變換,我們的標準和方法也在變換著。

cs的內容和ip的內容共同構成了邏輯位址,所以我們第一條指令指向 ffff0:0000

這個記憶體位址根據上面的記憶體布局圖可見,位於rom bios的範圍內。

我們要知道,bios是斷電後不改變其中資料的,不像我們平時所說的記憶體,需要有電並且持續的進行動態重新整理才可以維持電容裡的電保持原來的電量。所以bios中的內容是提前在硬體上寫好,並且不可以隨意更改的,更改要出大問題啊。

我們的處理器跳轉到bios區,也就是ffff0這個位址,然後bios在其中已經寫好了跳轉指令,需要讓我們的處理器跑到別的地方執行,因為ffff0距離fffff這個最大記憶體位址也只有16個位元組了,根本容納不了多少指令,更何況我們計算機啟動這麼複雜的過程呢?

所以,我們心裡明白,跳轉後該執行的指令,應該也是要不受電源影響的,所以記憶體被排除。我們的作業系統應從外部輔助裝置中載入到記憶體,然後執行。這個裝置就是硬碟。

讀取硬碟是從他的主引導扇區裡的內容開始執行,所以,我們只要在主引導扇區中,寫入我們想讓處理器執行的**就可以了。

作業系統實驗一 處理器管理

作業系統實驗一 處理器管理 實驗報告 一 實驗目的 1 加深對處理機排程的作用和工作原理的理解。2 進一步認識併發執行的實質。二 實驗要求 本實驗要求用高階語言,模擬在單處理器情況下,採用多個排程演算法,對n個程序進行程序排程。語言自選。並完成實驗報告。三 實驗內容 在採用多道程式設計的系統中,往往...

作業系統實驗一 處理器管理

一 實驗目的 1 加深對處理機排程的作用和工作原理的理解。2 進一步認識併發執行的實質。二 實驗要求 本實驗要求用高階語言,模擬在單處理器情況下,採用多個排程演算法,對n個程序進行程序排程。語言自選。並完成實驗報告。三 實驗內容 在採用多道程式設計的系統中,往往有若干個程序同時處於就緒狀態。當就緒狀...

作業系統課堂筆記四 處理器排程

排程演算法 典型作業系統排程演算法 solaris 參考ps.如果沒有就緒程序,cpu會安排乙個空閒程序給cpu執行 排程的三個核心點 排程過程 間接開銷 系統角度 占用cpu的方式 i o密集型 和 cpu密集型 最短作業優先 sjf 完成時間最短的優先執行 最短剩餘時間優先 srnt 最高響應比...