我在閱讀broken thorn operating system development series。我讀了關於實模式和保護模式。我讀過中斷在保護模式下不可用。我必須設置一些模式之間的切換。我可以在真實模式下使用BIOS中斷進行編碼。所有這些都很好。但是我想知道這些背後是什麼?當我們關閉CR0中的PE標誌時究竟發生了什麼?爲什麼我們不能在保護模式下使用BIOS中斷?這些BIOS中斷背後是什麼?爲什麼我們必須使用BIOS?如何直接與硬件進行交互?這些0和1如何使硬件工作?爲什麼這些機器碼工作? 我想要所有這些東西的最低級別的細節。任何人都可以爲我推薦一本好書或鏈接嗎?提前致謝。x86的最低級別細節
0
A
回答
3
你在那裏問了很多問題,試圖在這裏回答所有問題會花費很多時間。
我會提供一些快速回答和一些其他資源的指針,這些資源可能有助於爲您提供理解問題答案所需的背景知識。
大多數PC BIOS例程都是在實模式下編寫的,一旦CPU處於保護模式下就不能正常工作;有一些BIOS程序具有兼容的32位保護模式界面。
現在PC BIOS主要用於引導另一個操作系統,之後幾乎不用BIOS。 PC BIOS最初是爲了在操作系統和底層硬件之間可能存在一個抽象層而提供的,以便操作系統可以更容易地運行在不同的硬件上,而不必針對各種(稍微)不同的硬件配置進行定製。 Gary Kildall和他的CP/M操作系統經常被認爲是擁有BIOS的第一臺微型計算機操作系統。
直接硬件編程就像您可以獲得的特定平臺一樣。您需要確切瞭解您的硬件具有哪些芯片組,端口及其配置,才能對其進行編程。
梅斯梅爾不可缺少的PC硬件手冊提供了一個全面而可讀的PC操作介紹,包括BIOS的作用,中斷和CPU模式(如真實,受保護)以及機器代碼(1和0's)驅動硬件來實現我們預期的結果。
其他可以回答您的問題並可能更易於使用的書籍包括:由Tocci的數字系統Tanenbaum提供的結構化計算機組織。
編輯:如需進一步瞭解技術細節,您可以嘗試Brey提供的英特爾微處理器(最新版本涵蓋Core2架構),然後使用英特爾/ AMD開發人員手冊(可免費下載)。
2
聽起來像是通過閱讀intel和amd開發人員手冊(不是每個指令部分,而是更大/更廣泛的概述)以及cpu體系結構上的技術論文(addison- weasley在這方面有一些很好的書籍)
相關問題
- 1. 低級別的細節,OSX
- 2. 結合了低級別的細節
- 3. URLConnection低級別字節計數
- 4. 二叉樹中最低級別和最後級別之間的區別
- 5. 最低Android API級別AdMob必需?
- 6. React-Native最低Android API級別
- 7. 將ClutterActor保持在最低級別
- 8. 獲取產品最低級別的子類別
- 9. 規格示例:如何管理低級別詳細信息
- 10. 需要找到產品的細節與最低價格
- 11. 功能規格的最低水平細節爲了有用
- 12. x86處理器中的環級別
- 13. performSelectorOnMainThread執行的低層細節:
- 14. 更高或更低級別?
- 15. 低級別Socket編程
- 16. 在低級別查詢SqlJet
- 17. 低級別Android調試
- 18. 如何使用的ProcessStartInfo以最低的執行級別運行
- 19. 提高我的最低API級別的更好方法?
- 20. 直到asp.net的最低級別的語言?
- 21. QGraphicsView詳細處理級別
- 22. Sencha Touch 2.0支持哪些最低的Android API級別?
- 23. 存儲最低級別的位並返回一個字符
- 24. 如何編寫最低級別的標準庫函數?
- 25. Windows最低級別的套接字編程?
- 26. 如何覆蓋異常,以便返回最低級別的innerException.exceptionMessage?
- 27. Android:使用Google Vision API的最低API級別要求?
- 28. 最低權限級別查看文件的內容?
- 29. 暫停低級別掛鉤的最佳方法(winapi)
- 30. 什麼是HTML轉義的最低安全級別?
那麼,在最低級別,您可能需要檢查[中央處理單元](http://en.wikipedia.org/wiki/Central_processing_unit)。或[微處理器](http://en.wikipedia.org/wiki/Microprocessor)。或[Silicon](http://en.wikipedia.org/wiki/Silicon)。 – 2010-11-25 15:31:12
爲什麼有人投票結束這個問題? – narayanpatra 2010-11-25 15:33:22
可能是因爲「這些背後有什麼」,「如何直接與硬件交互」以及「爲什麼這些機器代碼工作」都很模糊。 – 2010-11-25 15:36:33