從這一章開始開始從從實模式進入32位保護模式;什麼是實模式?之前所有的匯程式設計序都是在實模式下執行的,其特點是程式設計者可以讀寫任意一塊記憶體,而不管這樣做合不合適;保護模式則為了保護記憶體資源進行了限制,為每乙個程式都規定了它應該訪問的記憶體,超過規定就會異常、報錯。這就像是開公司做生意,在實模式下,開公司不需要登記,賣什麼都沒有人管,隨時都可以開張。但在保護模式下就不行了,開公司之前必須先登記,登記的資訊包括住址(段的起始位址)、經營專案(段的界限等各種訪問屬性)。這樣,每當你做的買賣和專案不符時,就會被阻止。對段的訪問也是一樣,當你訪問的偏移位址超出段的界限時,處理器就會阻止這種訪問,並產生乙個叫做內部異常的中斷。
這一章就是純粹的介紹實模式到保護模式的過渡,初讀這一章會迷糊,找不到**是重點,先多讀幾遍,盡量在腦海中印象深刻,以後還會回過頭查閱這一章的。
還有本書中一些關於磁碟、顯示卡這些外接裝置的讀寫初次學習可以粗略知道就行了,因為這些裝置本身相對比較複雜,介面引數也比較多,等有乙個整體的了解和對cpu重要的機制掌握以後可以用專題的形式進行研究。
第10章 預處理
10.1 預處理指令 指令 含義例項 define 定義巨集 define debug undef 取消巨集的定義 undef debug if判斷 if defined debug else cout debug elif else endif cout release error 輸出錯誤資訊 ...
Intel處理器手冊系統程式設計指南第2章(3)
處理器提供四個記憶體管理暫存器 gdtr ldtr idtr和tr 它們指定控制段式記憶體管理的資料結構的位置 見圖2 5 有專門的指令來載入或儲存這些暫存器。圖2 5 記憶體管理暫存器 2.4.1全域性描述符表暫存器 gdtr gdtr暫存器存放gdt的基礎位址 保護模式中32位,ia 32e模式...
第10章 中斷與時鐘之Linux中斷處理程式架構
10.2 linux中斷處理程式架構 裝置的中斷會打斷核心程序中的正常排程和執行,系統對更高吞吐率的追求要求中斷服務程式盡量短小精悍。但是,願望與現實並不吻合。在大多數真實的系統中,當中斷到來時,要完成的工作並不會是短小的,它可能要進行較大量的耗時處理。圖10.3描述linux核心的中斷處理機制。為...