作業系統的記憶體分配問題

2021-07-03 09:04:56 字數 651 閱讀 2253

記憶體即我們平時說的電腦記憶體(4g、8g等),非硬碟容量,那是外存。

記憶體是存放cpu運算資料的地方。

這裡就得扯到裝系統的乙個十分常見問題了,即系統是安裝32位的還是64位的。根據以往裝系統的經驗,4g以下通常是安裝32位的作業系統,以上就安裝64位的。但這是為什麼?

下面給出我最近自己的理解。

因為作業系統是能對記憶體直接進行調配管理的,因此就需要給計算機記憶體進行編號,32位的作業系統它的記憶體編號只有32位,而每一位在計算機中都是可以用0、1表示,那麼2^32byte=2^2*2^10*2^10*2^10byte=4g,即最大只能使用4g,64位作業系統同理。

而對於記憶體分配,作業系統是一般是按如下分配的:

其中中間綠色部分是自由分配空間。

從上圖也能推斷出為何明明是4g記憶體,安裝完系統檢視屬性卻發現還有一部分不能使用,是不是浪費了的疑問,其實就是為系統核心留的。

像這種記憶體規劃——使用者記憶體隔離,不容易造成系統經常宕機、崩潰等。

其實我自己不能理解的是為什麼 1byte = 8bits??以後在學習到作業系統這門課後應該就會知道了吧。

作業系統 記憶體分配

1.系統要用什麼樣的資料結構記錄記憶體的使用情況。2.當多個記憶體分割槽滿足要求時,應該選擇哪個分割槽進行分配。3.如何進行分割槽的分配與 操作。程序中的塊稱為頁 page 記憶體中的塊稱為頁框 page frame 外存也可以同樣的單位進行劃分,稱為塊。頁表,為了便於在記憶體中找到程序的每個頁面所...

作業系統記憶體分配

作業系統的記憶體一部分給系統核心,一部分給使用者核心,對windows來說,32位4g時,低位2g給使用者,高位2g給系統,64位256t時,高位的248t給系統,低位8t給使用者。linux則是32位4g時,低位3g給使用者,高位1g給系統,64位256t時,高位的128t給系統,低位128t給使...

作業系統中的記憶體分配

一 程式執行平台 不同的平台上對不同資料型別分配的位元組數是不同的。個人對平台的理解是cpu os compiler,是因為 1 64位機器也可以裝32位系統 x64裝xp 2 32位機器上可以有16 32位的編譯器 xp上有tc是16位的,其他常見的是32位的 3 即使是32位的編譯器也可以弄出6...