精華區beta Programming 關於我們 聯絡資訊
43 : : Boot Sector 的內容是有特定標幟要標明這是一段可執行的 boot : : program , 但並非 C 語言程式就造不出來. : 不同的CPU有不同的Assembly, 跟計算相關的部份 C 可以應付, : 和Address相關的部份用 C 配合 Link Editor 也可以處理, 不過 : 有些控制 CPU Status 的指令, 就只能用 Assembly 了, 例如 : 在Bootstrap的時候要把Register和Cache都設好, 或者在OS中的 : Critical Section也要把Interrupt關起來, 一般Boot Section : 只做一些簡單的工作, 用Assembly就好了, 如果真的想多做一點 : 事再配合一些C Function, 不過在load整個系統時, 一樣得用 : Assembly才行, 因為要jump到主系統時, 還是得控制CPU的Statu 但是 說老實話 我組語學的不是很好 不過 不是現在的作業系統 都是在保護模式下跑嗎 而且還有v86模式保護 所以就算用組語 似乎操作到的暫存器和其他資源 也不是CPU真正 的暫存器?? 似乎只有在一開機Boot的時候就被執行的程式 才能比較直接的跟硬體溝通?? 可以解說 一下嗎? THX:) --- 我用的書是IBM PC 組合語言與程式設計 Peter Abel 這本好嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.164.27.115 ※ 編輯: drkkimo 來自: 218.164.27.115 (08/14 20:27) ※ 編輯: drkkimo 來自: 218.164.27.115 (08/14 20:28)