操作系統如何加載程序


操作系統如何加載程序

1.用戶編寫完代碼后,通過編譯器將編譯為數據段、代碼段、堆棧段、bss段,由鏈接器鏈接為裝入模塊

2.用戶通知操作系統要運行的程序

3.操作系統根據路徑找到對應的程序,檢測程序的頭部,找到代碼段和數據段的位置

4.文件系統根據這些段的位置找到對應的磁盤塊

5.操作系統創建進程(創建運行環境),並將要執行的程序的各個段映射到這個進程的空間

6.通過進程調度執行到了該進程,將CPU的上下文切換為該進程的上下文,然后執行程序的第一條指令。

7.執行指令發現指令並不在內存,於是產生缺頁異常,從磁盤拷貝然后繼續執行。

8.執行到printf,跳轉到庫函數執行,通過軟中斷發起系統調用,操作系統根據系統調用號跳轉到對應的中斷處理程序運行。

9.操作系統分配設備,並執行顯示驅動程序

10.窗口系統將像素寫入到存儲映像區

11.視頻硬件將像素表示成一組模擬信號輸出的顯示器

12.顯示器發射電子束

13.屏幕看到hello world


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM