1. 程式人生 > >物理內存,虛擬內存

物理內存,虛擬內存

但是 主板 內存地址 bsp 地址空間 容易 異常 創建 nbsp

1. 物理內存:

物理內存指的是插在計算機主板內存槽上的實際物理內存,CPU可以直接進行尋址;

物理內存的容量是固定的,但是尋址空間卻取決於cpu地址線條數,如32位機,則尋址空間為2^32=4G,

即最大支持4G的尋址空間,即使我們插入了32G容量的內存條,我們也只能擁有4G的物理內存;

2. 虛擬內存:

進程執行需要將代碼和數據放在內存中,但是物理內存是有限的,當進程比較多的時候,容易造成內存耗盡,而虛擬內存有效的解決了這個問題;

進程創建加載的時候,自身感知獲得到了一個連續的內存地址空間,而實際上內核只是分配了一個邏輯上的虛擬內存空間,並且對虛擬內存和磁盤通過mmap做映射關系,對虛擬內存和物理內存做映射關系;等到程序真正運行的時候,需要某些數據,並且不在物理內存中,才會觸發缺頁異常,進行數據拷貝;

虛擬內存空間和磁盤之間的映射使用mmap完成,說白了虛擬內存空間就是磁盤上的一塊區域;

物理內存,虛擬內存