記得我嗎我是阿q,CPU一號車間的阿q
今天,我從百忙中抽出時間,去了工廠的地址翻譯部負責這項工作的小黑滿頭大汗
看到我的到來,小黑指了指旁邊的座位,示意我坐下。
坐了很久,小黑從他的操作臺轉過身來真的很抱歉,Q,我今天工作太多了,沒時間招待你
你在忙些什么你在流汗,我問
嘿,別客氣總是發現內存頁面錯誤,要通知操作系統處理我真的很懷念過去沒有那么多破事要管,小黑嘆了口氣
我一聽就來了興趣,小黑,跟我說說你的工作地址翻譯怎么了為什么懷念過去
小黑調整了一下坐姿,喝了幾口水說:這個說來話長。
接下來,小黑開始給我講歷史故事。
8086
我們的祖先叫8086,小黑給我看了他的照片。
那是一個純粹簡單的時代,雖然工作業績不高,但是那個時代的手續很簡單,我們的祖先一出來就成了明星,可以稱得上是那個時代的頂尖流。
看到照片中的金屬針了嗎那是我們CPU處理外界的觸角,每個都有不同的功能
通過這些觸角,CPU可以處理內存,獲取指令和數據,努力工作。
當時條件比較差,能做的都做了,能分享的都分享了不,你看,祖傳CPU的地址總線引腳和數據總線引腳是共用的
祖先是16位CPU,數據總線16位,一次可以傳輸16位和地址總線共享在一起,因此命名為AD0—AD15
但是,祖先的地址總線不止16條,A16—A19還有4條!所以有20條地址線,可以尋址1MB內存!
但是祖先的寄存器都是16位的,所以只能存儲16位的地址不過他們很聰明,發明了一種叫做分段存儲管理的方法,把內存分成小塊,最大64KB為什么是64KB因為16位地址最多只能尋址這么大然后增加幾個叫段寄存器的東西指向這些塊的開頭,這樣就可以在段內以段地址+偏移量地址的方式訪問更多的內存
32位時間
后來祖先的計算能力越來越捉襟見肘,真的跟不上時代了家里年輕一代開始帶頭,80286,80386CPU相繼問世,尤其是80386,成為劃時代的存在
到了80386的時候,我們有了更多的引腳與外界交流,它就變成了32位的CPU那時候生活條件變好了,地址線和數據線再也不用共用管腳了
這時有人發現了商機,開發了一個叫操作系統的東西原來那些程序不再直接和我們的CPU打交道,而是和操作系統打交道,操作系統又會和我們打交道
虛擬內存
可是,一個大問題隨之而來這么多程序要運行,大家都擠在一個內存里,所以摩擦沖突頻繁
老祖宗在這件事上很努力,最后想出了一個好辦法,一直沿用至今。
他們提出了一個虛擬地址,所有程序使用的地址都是虛擬地址在處理內存的時候,我們內部的CPU工作人員會把它翻譯成真實的內存地址關于這件事,記憶的家伙一直被我們蒙在鼓里
這樣,每個程序可以使用從0x00000000到0xffffffff的大范圍地址空間,總共4GB當然不會真的給他們那么大的空間內存的家伙總共只有4GB,卻要根據需求申請分配分配單元是按頁進行的,32位CPU的一頁是4KB分銷管理的辛苦就交給運營系統了,中間商不能只顧利益不務正業至于我們的CPU,做好地址翻譯就好了
所以在我們的寄存器中專門增加了一個新的寄存器CR3,指向一個地址翻譯查詢字典,這個字典分為兩級目錄我們將32位地址分為三部分前兩部分分別指向兩級目錄中的條目,用于定位該地址在物理內存的哪一頁最后一部分是指向物理內存頁面的偏移量,從而完成地址的翻譯
每個進程都有不同的地址空間當切換進程時,通過改變CR3的內容來使用新進程的翻譯字典特別方便
我們稱這種內存管理方法為分頁內存管理。
我真的很佩服老祖宗的智慧,如此聰明地隔離了程序后來我們把這種工作模式叫做保護模式,之前那種直接使用實內存地址的工作模式叫做實地址模式
尋呼交換機
人類越來越貪婪,程序越來越多,對內存的需求也越來越大伴隨著這些程序不斷申請內存頁,內存空間很快就會耗盡
我們看在眼里,擔心在心里后來我們和操作系統協商,看這個問題怎么辦
操作系統的家伙也不差他想出了一個好主意內存大小有限,但硬盤牛逼硬盤空間大很多在硬盤上畫一個區域,把內存中長時間不用的頁面換到這個區域,然后做個標記如果以后有人想訪問那個頁面,我們的CPU會檢查的如果有此標志,它將發送一個頁面錯誤中斷信號,告訴操作系統將此頁面改回
通過我們的合作,我們解決了內存不足的危機后來我們把這種技術叫做內存分頁交換
那一刻,立刻,馬上,一就
時光飛逝,到了我們這一代,記憶變大了16GB是小情況,32GB也很常見
除了內存,我們的CPU本身更先進不說別的,光看我們現在的圖釘數量,就和我們的祖先相差太遠了
我們不僅從32位變成了64位,也從單核變成了多核比如我的CPU有8個車間,8個核心并行執行,和我們的祖輩有很大不同
聲明:本網轉發此文章,旨在為讀者提供更多信息資訊,所涉內容不構成投資、消費建議。文章事實如有疑問,請與有關方核實,文章觀點非本網觀點,僅供讀者參考。
猜你喜歡
-
游客在進入北京環球度假區時須核驗北京健康
具體如下:北京環球度假區繼續按照相關政府部門的限流要求,以預約入園的形式加強人流動態監測和...詳情
2022-04-28
-
杭州湘湖的草坪人氣很高不少人在這里搭帳篷
湘湖邊亂搭帳篷,煞了春日風景景區出臺最新政策,將設置臨時帳篷搭建區,后續還要增設露營服務區...詳情
2022-04-14
-
南非徐霞客在云南:從行萬里路到吃百碗米線
題:南非徐霞客在云南:從行萬里路到吃百碗米線的文化之旅杜安睿來自南非,是一名國際注冊會計師...詳情
2022-04-10
-
廣州新增3例本土確診病例雙層觀光巴士全部
廣州新增3例本土確診病例雙層觀光巴士全部停運廣州市政府新聞辦公室21日公布的信息顯示,過去...詳情
2022-03-22