下面這個程序是如何被執(zhí)行的?
圖片發(fā)自簡書App
1.用戶告知操作系統(tǒng)執(zhí)行該程序(命令行鍵入/點擊exe文件)东帅。
2.操作系統(tǒng)在磁盤中找到該文件,判斷為可執(zhí)行文件后,操作系統(tǒng)創(chuàng)建一個新進程,負責該文件的執(zhí)行询张。
3.操作系統(tǒng)為程序設(shè)置CPU上下文環(huán)境蜗帜,并令指針跳轉(zhuǎn)到程序入口阎抒。
4.用戶程序在CPU上運行逞带。
5.用戶程序執(zhí)行過程中多次'缺頁異常'—>程序的代碼和數(shù)據(jù)多次被操作系統(tǒng)放入內(nèi)存(供CPU讀取)遇汞。
...
圖片發(fā)自簡書App
CPU上点楼,用戶程序和操作系統(tǒng)程序切換運行。當用戶程序需要創(chuàng)建進程時,CPU的控制權(quán)被交給操作系統(tǒng)。進程創(chuàng)建完后小压,用戶程序接著運行蜻牢。