一级日韩免费大片,亚洲一区二区三区高清,性欧美乱妇高清come,久久婷婷国产麻豆91天堂,亚洲av无码a片在线观看

操作系統

看操作系統對程序的執行過(guò)程有哪些支持

時(shí)間:2024-12-10 21:22:11 操作系統 我要投稿
  • 相關(guān)推薦

看操作系統對程序的執行過(guò)程有哪些支持

  怎么看操作系統對程序的執行過(guò)程有哪些支持呢?下面就一起來(lái)看看吧!更多消息請關(guān)注應屆畢業(yè)生網(wǎng)!

  通過(guò)一個(gè)C程序,看操作系統做了什么:

  一個(gè)C程序:helloworld

  這個(gè)程序的功能是調用puts函數,在標準輸出設備(顯示器)上顯示字符串hello world

  1. (用戶(hù))要啟動(dòng)程序執行,用戶(hù)告訴操作系統執行hello world程序(如何告知?)

  -- 命令行鍵入相應的命令

  -- 通過(guò)鼠標雙擊hello world程序的圖標

  2. (操作系統)操作系統接到用戶(hù)的請求之后,就會(huì )根據用戶(hù)提供的文件名,到磁盤(pán)上找到hello world程序的相關(guān)信息,檢查其類(lèi)型是否是可執行文件;并通過(guò)程序首部信息, 確定代碼和數據在可執行文件中的位置并計算出對應的磁盤(pán)塊地址(文件格式?)

  -- Windows:PE

  -- Linux:ELF

  3. (操作系統)為了執行這個(gè)hello world程序,操作系統創(chuàng )建一個(gè)新的進(jìn)程,并將hello world可執行文件格式映射到該進(jìn)程結構,表示由該進(jìn)程執行hello world程序

  4. (操作系統)操作系統為hello world程序設置CPU上下文環(huán)境,并跳到程序開(kāi)始處,準備執行這個(gè)程序,下一個(gè)指令周期,就是執行hello world程序

  5. (CPU)假設調度程序正好選中hello world程序,操作系統把控制權交給了調度程序,執行hello world程序的第一條指令,發(fā)生缺頁(yè)異常。程序在執行的時(shí)候,先要把程序的代碼和數據讀入內存,CPU才能執行,但是hello world的代碼和數據還沒(méi)有讀入內存,所以這個(gè)時(shí)候硬件機制就會(huì )捕獲缺頁(yè)異常,并且把控制權交給操作系統

  6. (操作系統)操作系統管理了計算機系統中的內存,比如采用頁(yè)式存儲方案的話(huà),內存就有很多的物理頁(yè)面,操作系統的內存管理模塊就會(huì )分配一頁(yè)空閑的物理內存,并且根據前面計算出的磁盤(pán)塊地址把hello world程序的代碼從磁盤(pán)讀入內存,然后繼續執行hello world程序,有的時(shí)候程序很大,一頁(yè)內存還不夠,因此在執行過(guò)程中會(huì )多次地產(chǎn)生缺頁(yè)異常,然后從磁盤(pán)讀入程序到內存

  7. (CPU)hello world程序執行puts函數(系統調用,由操作系統完成),在顯示器(標準輸出設備)上寫(xiě)(顯示)一字符串

  8. (操作系統)找到要將字符串送往的顯示設備,通常設備是由一個(gè)進(jìn)程控制的,所以,操作系統將要寫(xiě)的字符串送給該進(jìn)程

  9. (操作系統)控制設備的進(jìn)程告訴設備的窗口系統它要顯示字符串,窗口系統確定這是一個(gè)合法的操作,然后將字符串轉換成像素,將像素寫(xiě)入設備的存儲映像區

  10. 視頻硬件將像素轉換成顯示器可接收的一組控制/數據信號

  11. 顯示器解釋信號,激發(fā)液晶屏

  12. 在屏幕上看到了“hello world”

  在CPU上執行一個(gè)用戶(hù)程序,這個(gè)用戶(hù)程序會(huì )不時(shí)地去請求操作系統的服務(wù),因此在CPU上,時(shí)而運行的是用戶(hù)程序,時(shí)而運行的是操作系統的程序

  hello world程序在執行的時(shí)候需要操作系統來(lái)創(chuàng )建進(jìn)程,因此轉到操作系統創(chuàng )建進(jìn)程,進(jìn)程創(chuàng )建完了以后從操作系統返回,接著(zhù)執行hello world程序

  出現了缺頁(yè)異常以后,控制權又轉回了操作系統,操作系統分配物理內存給用戶(hù)程序,然后又轉向用戶(hù)程序接著(zhù)執行

  然后hello world程序要執行puts函數,又轉向了操作系統

  這是從用戶(hù)程序在執行過(guò)程不斷請求操作系統服務(wù)這個(gè)角度來(lái)看程序執行的過(guò)程

  操作系統在執行過(guò)程中,通過(guò)調度選中一個(gè)程序然后執行

  程序執行過(guò)程中會(huì )不斷地陷入操作系統,由操作系統完成一些服務(wù)

  然后再通過(guò)調度再選中程序再執行

  Summary

  在一個(gè)程序的執行過(guò)程中,操作系統負責了這個(gè)程序的啟動(dòng)過(guò)程,負責了這個(gè)程序的執行過(guò)程。同時(shí),在執行過(guò)程中,不斷地為用戶(hù)程序執行提供各種各樣的支持

【看操作系統對程序的執行過(guò)程有哪些支持】相關(guān)文章:

操作系統有哪些05-07

操作系統有哪些07-21

操作系統有哪些05-24

國產(chǎn)操作系統有哪些07-29

有哪些電腦操作系統05-19

電腦有哪些操作系統07-08

電腦的操作系統有哪些03-16

操作系統有哪些類(lèi)型03-01

操作系統有哪些【實(shí)用】07-20

一级日韩免费大片,亚洲一区二区三区高清,性欧美乱妇高清come,久久婷婷国产麻豆91天堂,亚洲av无码a片在线观看