作業系統真相還原筆記(第二章)

2021-09-29 05:32:53 字數 1481 閱讀 9056

1)為什麼程式要載入記憶體?

cpu 的硬體電路被設計成只能執行處於記憶體中的程式,這是硬體基因的問題,這樣做的原因,首先肯定是記憶體比較快,且容量大。

其次,作業系統可以儲存在軟盤上,也可以儲存在硬碟上,甚至 u 盤,當然還有很多儲存介質都可以。但由於各個硬體特性不同,作業系統要分別考慮每種硬體的特性才行。所以,都在記憶體中執行程式,作業系統和硬體設計都省事了,這可能也是為了方式的統一吧,否則總不能出現某種儲存介質後,作業系統和硬體就要付出額外努力去支援。

2)什麼叫載入記憶體?

(1 )程式被載入器(軟體或硬體)載入到記憶體某個區域。

(2) cpu 的 cs: ip 暫存器被指向這個程式的起始位址。

3)實模式下的1m記憶體布局

位址。0x0~ox9ffff 處是 dram (dynamic random access memory ),即動態隨機訪問記憶體,我們所裝的物理記憶體就是 dram,如 ddr、 ddr2 等 。

4)在 cpu 眼裡,為什麼我們插在主機板上的物理記憶體不是它眼裡「全部的記憶體」?

在計算機中,並不是只有咱們插在主機板上的記憶體條需要通過位址匯流排訪問,還有一些外設同樣是需要通過位址匯流排來訪問的,這類裝置還很多呢。若把全部的位址匯流排都指向物理記憶體,那其他裝置該如何訪問呢?由於這個原因,只好在位址匯流排上提前預留出來一些位址空間給這些外設用,這片連續的位址給視訊記憶體,這片連續的位址給硬碟控制器等.留夠了以後,位址匯流排上其餘的可用位址再指向 dram,也就是指插在主機板上的記憶體條、我們眼中的物理記憶體。

物理記憶體多大都沒用,主要是看地線匯流排的寬度。還要看位址匯流排的設計,是不是全部用於訪問dram。所以說,位址匯流排是決定我們訪問**、訪問什麼,以及訪問範圍的關鍵。我們平時用的機器一般是 32 位,上面的記憶體條並不是全部都用到了,按理說記憶體條大小超過 4gb 就沒意義了,超過了位址匯流排的勢力就是浪費。不過通過前面的介紹,即使記憶體條大小沒有超過位址匯流排的範圍,也不會全都能被訪問到,畢竟要預留一些位址用來訪問其他外設,所以最終還得看位址匯流排把位址指向哪塊記憶體了 。 這就是安裝了 4gb 記憶體,電腦中只顯示 3.8gb 左右的原因。

5)ubuntu下nasm的安裝

sudo apt-get install nasm

6 ) mar的製作

編寫mbr的程式mbr.s.

nasm -o mbr.bin mbr.s

通過dd工具把生成的bin檔案寫入到之前建立的虛擬磁碟

dd if=/boch/mbr.bin of=/boch/hd60m.img bs=512 count=1 conv=notrunc

執行bochs -f bochsrc.disk

第二章 作業系統

考試題型分析 選擇題 考試時間 上午試題型別 選擇題分值 6 8分 分值佔比 舉例 包餃子。前驅圖表示出了有些任務是有先後順序的,有些任務是可以並行操作的,箭頭表示約束。首次適應法 最佳適應法 最差適應法 迴圈首次適應法 邏輯位址與實體地址轉換 那麼如何根據邏輯位址求實體地址呢?我們得首先知道那一部...

作業系統 第二章 作業系統基礎操作

計算機體系結構概述 計算機記憶體和硬碟布局 開機順序 背景中斷 異常和系統呼叫相比較 中斷和異常處理機制 系統呼叫概念 系統呼叫的實現 程式呼叫與系統呼叫的不同之處開銷 2 disk 存放os 3 bios 存放i o處理系統 4 bios 載入os到記憶體中。5 post 加電自檢 尋找顯示卡和執...

第二章 作業系統歷史

標籤 空格分隔 作業系統之哲學原理 作業系統的演變就是我們對計算機硬體進行粉飾的過程 所謂狀態機作業系統實際上算不上是我們現在通常定義的作業系統,而是一種簡單的狀態轉換程式 根據特定的輸入和現在的特定狀態進行轉換 驅動這一階段作業系統的動力是個人英雄主義。這個階段沒有作業系統,硬要說有的話,就是人。...