1. 程式人生 > >Linux內核---內存

Linux內核---內存

因此 一位 外部 物理 關閉 寫入 內存分類 主存 字長

一.內存介紹

內存又稱主存儲器(主存),是CPU能直接尋址的存儲空間,由半導體器件制成。它是與CPU進行溝通的橋梁。計算機中所有程序的運行都是在內存中進行的,因此內存的性能對計算機的影響非常大。

其作用是用於暫時存放CPU中的運算數據,以及與硬盤等外部存儲器交換的數據。只要計算機在運行中,CPU就會把需要運算的數據調到內存中進行運算,當運算完成後CPU再將結果傳送出來,內存的運行也決定了計算機的穩定運行。

內存的特性是存取速率快,內存是電腦中的主要部件,它是相對於外存而言的。我們平時使用的程序一般都是安裝在硬盤等外存上的,但僅此是不能使用其功能的。必須把它們調用內存中運行,才能真正使用其功能,我們平時輸入一端文字,或玩一個遊戲,其實都是在內存中運行。就好比在一個書房裏,存放書籍的書架和書櫃相當於電腦外存,而我們工作的辦公桌就是內存。通常我們把要永久保存的,大量的數據存儲在外存上,而把一些臨時的或少量的數據和程序放在內存上;

二.內存分類

1.只讀存儲器(ROM)

ROM表示只讀存儲器,在制造ROM的時候,信息(數據或程序)就被存入並永久保存。這些信息只能讀取,即使機器停電,這些數據也不會丟失。ROM一般用於存放計算機的基本程序和數據,如BIOS ROM。存儲時間與物理地址無關。

2.隨機存儲器(RAM)

隨機存儲器,表示可以從中讀取數據,,也可以寫入數據。當機器電源關閉時,存於其中的數據就會丟失,主要用於存儲短時間使用的程序,存儲時間與物理地址無關。

三.高速緩沖存儲器(Cache)

高速緩沖存儲器是存在於主存和CPU之間的一級存儲器,由靜態存儲芯片(SRAM)組成,容量比較小但是速度比主存高得多,接近於CPU的速度,由於I/O設備向主存請求的級別高於CPU訪存,因此出現CPU等待I/O設備訪存的現象,為了避免CPU與I/O設備爭搶訪存,主存將CPU要取的信息提前送至緩存,一旦主持與I/O設備交換時,CPU可直接從緩存中讀取數據,避免空等。

技術分享圖片

四.內存的 組成

技術分享圖片

主存儲器(內存或主存)包括存儲M,寄存器(MAR,MDR),各種邏輯部件及控制電路等。存儲體由許多存儲單元構成,每個存儲單元由多個存儲元件構成,每個存儲元件能寄存一位二進制代碼(0/1),一個存儲單元可以存儲一串二進制代碼,稱這串二進制代碼為一個存儲字,該二進制代碼長度為存儲字長。每個存儲單元有一個編號,稱為存儲單元的地址號。

主存的工作方式就是按存儲單元的地址號來實現對存儲字各位的存(寫入),取(讀出);這種存取方式稱為地址存取方式。主存中配置兩個寄存器MAR和MDR。MAR-----存儲器地址寄存器用來存放預訪問的存儲單元的地址,其位數對應存儲單元的個數(如MAR為10位,則2的10次方=1024個存儲單元);MDR-----存儲器數據寄存器,用來存放從存儲體某單元取出的代碼或準備往某存儲單元存入的代碼,其位數與存儲字長相同。

Linux內核---內存