作業系統系列 核心介面與實現原理

2021-10-16 22:30:03 字數 745 閱讀 4967

shell 程式介紹

int fork();

main()

printf

(」parent:

%d」, pid)

;}

exec

帶 p 和不帶 p 的差別在於:

exit

wait

檔案是使用者操作計算機的基本單位

printf 和 scanf 是用來分別操縱顯示器和鍵盤的函式

以 printf 為例具體來說

系統呼叫的意圖

實現系統的保護,因為作業系統管理所有的硬體資源,所以不能被使用者隨便訪問。

實現 執行「int 0x80」指令不也要發生前往目標記憶體區域(中斷處理程式)的跳轉嗎,此時就不需要進行 cpl 和 dpl 的特權級檢查嗎

0x80 中斷的初始化

system_call 要執行的事(示例 printf)

(2)第二步工作是呼叫sys_call_table中的某個函式,call sys_call_table(,%eax,4)

(3)告訴核心寫出去的資訊放在**、要寫出多少。這些資訊被存放在了%ebx,%ecx,%edx 中

(4)和使用者態記憶體進行資訊交換,即設定了「%fs = 0x17」(fs暫存器指向當前活動執行緒的teb結構)

(5)在呼叫 sys_write 完成 write 系統呼叫的真正功能以後,用 iret 指令退回到使用者態繼續執行。

作業系統原理 《現代作業系統 原理與實現》教材簡評

當看到上海交通大學陳海波教授 夏虞斌副教授等的著作 現代作業系統 原理與實現 這本教材時,內心滿是欽佩與敬意。過去一直採用國外的作業系統教材,很高興看到終於有國內學者編寫的重量級作業系統教材 全書共有24章 800多頁,這是迄今為止我所看到的知識最全面 內容最前沿 實踐最重視的一本作業系統教材了。作...

作業系統 作業系統介面

介面表現為函式呼叫,由作業系統提供,連線作業系統和應用軟體。出於安全性考慮,應用程式不能直接在記憶體中任意訪問 將核心程式和使用者程式隔離 通過比較訪問資料段cpl和rpl的特權級和當前段dpl的特權級之間的關係 應用程式呼叫庫函式printf printf呼叫庫中的write函式 write將函式...

作業系統原理與實現 Bochs與GDB

二 gdb bochs是乙個x86硬體平台的開源模擬器。它可以模擬各種硬體的配置。bochs模擬的是整個pc平台,包括i o裝置 記憶體和bios。更為有趣的是,甚至可以不使用pc硬體來執行bochs。事實上,它可以在任何編譯執行bochs的平台上模擬x86硬體。通過改變配置,可以指定使用的cpu ...