熱點推薦:
您现在的位置: 電腦知識網 >> 電腦常識 >> 正文

系統調用的基本概念

2013-11-11 16:26:13  來源: 電腦常識 

  操作系統在其核心中設置了一組用於實現各種系統功能的子程序(即過程)供應用程序調用由於OS系統過程的特殊性使應用程序不能采用一般的過程調用方式來調用這些過程而是利用一種系統調用命令去調用所需的系統過程它與一般的過程調用有以下幾個明顯差別

  ()運行在不同的狀態一般的過程調用其調用程序和被調用程序都運行在相同的狀態一系統態或用戶態;而在系統調用中調用程序通常運行在用戶態被調用程序運行在系統態

  ()系統狀態的轉換由於一般的過程調用並不涉及系統狀態的轉換故可直接由調用過程轉向被調用過程但在運行系統調用時由於調用和被調用過程是工作在不同的系統狀態因而不允許由調用過程直接轉向被調用過程通常都是通過軟中斷機制先由用戶態轉換為系統態經內核分析後才能轉向相應的系統調用處理子程序

  ()返回問題在采用了搶占式(剝奪)調度方式的系統中在被調用過程執行完後要對系統中所有要求運行的進程做優先權分析當調用進程仍具有最髙優先級時才返回到調用進程繼續執行;否則將引起重新調度以便讓優先權最高的進程優先執行此吋需要把調用進程放入就緒隊列

  ()嵌套調用像一般過程一樣系統調用也可以嵌套進行即在一個被調用過程的執行期間還可以利用系統調用命令去調用另一個系統調用當然每個系統對嵌套調用的深度都有一定的限制通常深度不超過下圖(a)所示為沒有嵌套的系統調用(b)所示為有嵌套的系統調用

系統調用的基本概念

From:http://tw.wingwit.com/Article/Common/201311/8098.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.