日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內(nèi)最全IT社區(qū)平臺 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當前位置:首頁 > php開源 > 綜合技術(shù) > 操作系統(tǒng)概念學習筆記 6 系統(tǒng)調(diào)用

操作系統(tǒng)概念學習筆記 6 系統(tǒng)調(diào)用

來源:程序員人生   發(fā)布時間:2015-05-13 07:58:20 閱讀次數(shù):4252次

操作系統(tǒng)概念學習筆記 6

系統(tǒng)調(diào)用



系統(tǒng)調(diào)用

系統(tǒng)調(diào)用(system call),通經(jīng)常使用c或c++編寫,對底層任務(wù)(如需直接訪問硬件)可能以匯編語言指令的情勢提供。

1個系統(tǒng)調(diào)用的例子:
編寫1個從1個文件讀取數(shù)據(jù)并復制到另外一個文件的簡單程序,則需要以下系統(tǒng)調(diào)用序列:

獲得輸入文件名:

  • 屏幕輸入提示
  • 接收輸入

獲得輸出文件名:

  • 屏幕輸入提示
  • 接收輸入

打開輸入文件:

  • 如果文件不存在,放棄

loop:

  • 讀取輸入文件
  • 寫入輸出文件

直到讀取失敗
關(guān)閉輸出文件
將完成信息輸出到屏幕
正常結(jié)束

但是, 1般程序開發(fā)人員根據(jù)利用程序接口(API)設(shè)計程序,有3種經(jīng)常使用的API:

1.適用于windows系統(tǒng)的win32 API

2.適用于POSIX系統(tǒng)的POSIX API(包括UNIX、Linux 和Mac OS X 版本)

3.設(shè)計運行于java虛擬機程序的java API

在后臺,組成API的函數(shù)通常為利用程序員調(diào)用實際的系統(tǒng)調(diào)用。

向操作系統(tǒng)傳遞參數(shù)有3種方法

  1. 最簡單的是通過寄存器來傳遞參數(shù)

  2. 不過有時參數(shù)數(shù)量會比寄存器多。這時候,這些參數(shù)通常存在內(nèi)存的塊和表中,并將塊的地址通過寄存器來傳遞。linux采取這樣的方法。

  3. 參數(shù)還可壓入堆棧中,并通過操作系統(tǒng)彈出。

系統(tǒng)調(diào)用類型

系統(tǒng)調(diào)用大致可分5類:進程控制、文件管理、、裝備管理、信息保護、通訊

  • 進程控制
    • 結(jié)束,放棄
    • 裝入履行
    • 創(chuàng)建進程,終止進程
    • 獲得進程屬性,設(shè)置進程屬性
    • 等待時間
    • 等待事件,喚醒事件
    • 分配與釋放內(nèi)存
  • 文件管理
    • 創(chuàng)建文件,刪除文件
    • 打開,關(guān)閉
    • 讀,寫,重定位
    • 獲得文件屬性,設(shè)置文件屬性
  • 裝備管理
    • 要求裝備,釋放裝備
    • 讀,寫,重定位
    • 獲得裝備屬性,設(shè)置裝備屬性
    • 邏輯連接或斷開裝備
  • 信息保護
    • 讀取時間和日期,設(shè)置時間或日期
    • 讀取系統(tǒng)數(shù)據(jù),設(shè)置系統(tǒng)數(shù)據(jù)
    • 讀取進程,文件或裝備屬性
    • 設(shè)置進程,文件或這杯屬性
  • 通訊
    • 創(chuàng)建,刪除通訊系統(tǒng)
    • 發(fā)送,接受消息
    • 傳遞狀態(tài)消息
    • 鏈接或斷開遠程裝備

進程控制

運行程序需要能正常或非正常地中斷其履行(end或abort)

如果1個系統(tǒng)調(diào)用被用來非正常的中斷履行程序,或程序運行碰到問題引發(fā)毛病圈套,那末可能會有內(nèi)存信息轉(zhuǎn)儲并產(chǎn)生1個毛病信息。內(nèi)存信息轉(zhuǎn)儲通常寫到磁盤上,并被調(diào)試器(幫助程序員發(fā)現(xiàn)和檢查毛病的系統(tǒng)程序)檢查和肯定問題緣由。操作系統(tǒng)必須將控制權(quán)轉(zhuǎn)交給命令解釋器。命令解釋器緊接著讀取下1個命令。

對交互系統(tǒng):
命令解釋器簡單的讀取下1個命令,由于假定用戶會采取適合的命令處理毛病

對GUI系統(tǒng):
1個彈出窗口提示毛病并提個建議

對批處理系統(tǒng):
命令解釋器終止全部作業(yè)并繼續(xù)下1個作業(yè)。出現(xiàn)毛病時,有的系統(tǒng)允許控制卡指出1個具體的恢復動作。控制卡是1個批處理概念,他是1個管理進程履行的命令。可定義1個毛病級別。更加嚴重的毛病可用更高級的毛病參數(shù)來表示。命令解釋器和下1個程序能利用毛病級別自動決定下1個動作。

履行1個程序或作業(yè)可能需要裝入另外一個程序。這1點允許命令解釋器來履行1個程序,該命令可通過用戶命令,鼠標單機和批處理命令來表示。當裝入程序終止時:

如果新程序終止時控制權(quán)返回到現(xiàn)有程序,那末必須保存現(xiàn)有程序的內(nèi)存映像。因此,實際上建立1個機制以便1個程序調(diào)用另外一個程序。如果兩個程序并發(fā)繼續(xù),那末創(chuàng)建了1個新作業(yè)和進程以便多道履行。有的系統(tǒng)調(diào)用專門用于這1目的(create process 或 submit job)

如果創(chuàng)建新作業(yè)和進程,那末應當能夠控制他的履行。這類控制要求能決定和重置進程或作業(yè)的屬性,包括優(yōu)先級、最大允許履行時間等。必要時也要能終止它。

另外一組系統(tǒng)調(diào)用有助于調(diào)試程序,許多系統(tǒng)提供轉(zhuǎn)儲內(nèi)存信息的系統(tǒng)調(diào)用,這有助于調(diào)試程序,程序trace在履行時能列出所用的每條履行的指令,但是只有少數(shù)幾類系統(tǒng)提供。

許多操作系統(tǒng)提供時間表來表示1個程序在某個位置履行的時間。時間表要求具有跟蹤功能或定時 時間中斷。每次定時中斷,會記錄計數(shù)器的值。

文件管理

經(jīng)常使用的文件管理系統(tǒng)調(diào)用:

首先能創(chuàng)建和刪除文件。每一個系統(tǒng)調(diào)用需要文件名,可能還會需要1些文件屬性。創(chuàng)建文件滯后,就需要打開并使用,也可能需要讀,寫,重定位,最后需要關(guān)閉文件。

使用目錄來組織文件系統(tǒng)中的文件,目錄也需要相同的操作。

另外,還最少需要讀取文件屬性和設(shè)置文件屬性,有的操作系統(tǒng)提供更多調(diào)用,如文件移動和復制。

其余的,1部份可能提供采取代碼或系統(tǒng)調(diào)用完成這些操作的API,另外一部份可能僅提供完成這些任務(wù)的系統(tǒng)程序。

如果系統(tǒng)程序被其他程序所調(diào)用,則其中每個軍可以被其他系統(tǒng)調(diào)用視為1個API

裝備管理

程序在履行時需要用到1些資源才能繼續(xù)運行,否則,程序必須等待可用的足夠多的資源。

操作系統(tǒng)控制的不同資源可當作裝備看待,這些裝備有些是物理裝備(磁帶),而其他可當作抽象或虛擬的裝備(如文件)。如果系統(tǒng)有多個用戶,那末用戶必須要求裝備以確保能獨自使用它。在使用完裝備以后,用戶需要釋放它。

1旦要求了裝備(并且得到裝備以后),就可以猶如對待文件1樣對裝備進行讀,寫,重定位。I/O與文件非常類似,以致于許多操作系統(tǒng)(如UNIX)將這二者合并為文件-裝備結(jié)構(gòu)。

信息保護

許多系統(tǒng)調(diào)用用來在用戶程序和操作系統(tǒng)間傳遞信息,調(diào)用返回的信息多是系統(tǒng)版本、空閑內(nèi)存、進程信息等

另外,操作系統(tǒng)保護所有進程的信息,有些操作系統(tǒng)調(diào)用可訪問這些信息。

通訊

有兩種模型:

消息傳遞模型和同享內(nèi)存模型。
消息傳遞模型,通訊進程彼此交換消息來交換信息。

同享內(nèi)存模型,進程使用 shared memory create 和 shared memory attach系統(tǒng)調(diào)用來取得其他進程所具有的內(nèi)存區(qū)域的訪問權(quán)。

系統(tǒng)程序

計算機的邏輯層次中,最底層是硬件,上面是操作系統(tǒng),接著是系統(tǒng)程序,最后是利用程序。

系統(tǒng)程序提供了1個方便的環(huán)境,以開發(fā)程序和履行程序。其中1小部份唆使系統(tǒng)調(diào)用的簡單接口沒其他多是相當復雜的。
它們可分為:

文件管理、狀態(tài)信息、文件修改、程序語言支持、程序裝入和履行、通訊

生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 成人在线毛片 | 久久精品视 | 久久国产精品无码网站 | free性中国hd国语page1 | 天天操操 | 欧美一区二区三区久久精品 | 欧美日韩视频一区二区三区 | 99精品在线观看 | 狠狠干网站 | 中文字幕免费在线视频 | 国产伦精品一区二区三区 | 中国成人在线视频 | 99久久精品国产一区二区三区 | 精品国产一区二区三区成人影院 | 国产香蕉视频在线 | 国产美女av | 精精久久| 国产美女一区二区三区 | 91超碰在线免费观看 | 国产成人欧美一区二区三区八 | 玖玖视频 | 国产精品久久久久久久久 | 国产在线不卡一区 | 黄视频在线播放 | 国产精品成av人在线视午夜片 | 国产三级精品片 | 亚洲视频影院 | 亚洲精品综合 | 黄色在线观看 | 国产精品一区二 | 精品视频成人 | 91久久精品一区二区 | 久久久国产精品 | 欧美综合久久 | 99在线视频观看 | 日韩在线一区二区三区 | 亚洲综合视频网 | 天堂在线网| 亚洲综合视频在线 | 搞黄网站 | 久久久女女女女999久久 |