




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第七章作業(yè)管理與OS接口 第七章作業(yè)管理與OS接口 7.1 概 述7.2 批處理OS的作業(yè)管理7.3 命令接口7.4 系統(tǒng)調用7.5 UNIX系統(tǒng)調用第七章作業(yè)管理與OS接口 71 概 述程序的啟動 程序開始執(zhí)行時必須滿足兩個前提條件:程序已裝入內存程序計數(shù)器PC中已置入該程序在內存的入口地址 五種啟動程序執(zhí)行的方式第一種方式:命令方式第二種方式:批處理方式第三種方式:EXEC方式第四種方式:由硬件裝入程序和啟動 程序執(zhí)行第五種方式:自啟程序 開機命令提示符出現(xiàn)打入命令打回車程序首指令執(zhí)行程序尾指令執(zhí)行下一個命令提示符出現(xiàn)(在前一個命令提示符的下一行首)第一種方式:命令方式第二種方式:批處理方
2、式 .BAT 文件例子:啟動中文環(huán)境需要多條命令: 裝入字庫 啟動主程序 裝入漢字輸入法 AUTOEXEC.BAT 以命令方式啟動執(zhí)行批文件操作系統(tǒng)調入批文件,讀進其中第一條命令裝入并啟動該命令要執(zhí)行的程序該程序執(zhí)行完畢回到操作系統(tǒng),操作系統(tǒng)從該批文件中讀下一條命令批方式下的裝入啟動過程第三種方式: EXEC方式在一個程序中運行另一個程序返回原來的程序“父”程序執(zhí)行exec調用操作系統(tǒng)實現(xiàn)exec的裝入(建立進程)、啟動(或轉調度子程序或返回)“子”程序執(zhí)行回到操作系統(tǒng),進行子程序結果處理工作,并將結果信息返回“父”程序“父”程序繼續(xù)執(zhí)行EXEC方式的過程執(zhí)行完畢第四種方式:由硬件裝入程序和啟
3、動程序執(zhí)行第五種方式:自啟程序自己裝入自己,并啟動自己開始執(zhí)行的程序自啟程序由兩部分組成引導程序和程序主體用戶程序存放在外存上,其自含的引導程序順序放在存儲介質的開始位置將該存儲介質放到相應的聯(lián)機輸入裝置上以某種硬操作方法通知計算機需執(zhí)行自啟程序硬件將上述引導程序讀入內存并將控制權傳給它引導程序將用戶主體程序讀入內存并將控制權傳給它自啟程序裝入與啟動的過程引導程序 程序的結束正常結束:程序按自身的邏輯有效地完成預定功能后結束(a)返回父程序并回送結果信息。(b)釋放所用資源(空間、設備),記錄使用情況,記帳等異常結束:發(fā)生了某些錯誤而導致程序在沒有完成預定功能時提前結束基本概念程序接口(pro
4、gram interface)指由用戶程序和操作系統(tǒng)之間的接口。用戶程序可通過該接口取得操作系統(tǒng)的服務。該接口主要由一組系統(tǒng)調用組成。命令接口(command interface)用戶與操作系統(tǒng)之間的接口,用戶通過該接口直接或間接控制作業(yè)的運行,包括直接鍵入或作業(yè)說明書中,發(fā)出的一組命令。也就是用戶接口,又可分成聯(lián)機用戶接口與脫機用戶接口兩種。作業(yè)級接口(命令接口) 操作系統(tǒng)為用戶對作業(yè)運行全過程控制提供的功能。(1) 聯(lián)機接口(交互式)(操作命令)(2) 脫機接口(作業(yè)控制語言)程序級接口 系統(tǒng)為用戶在程序一級提供有關服務而設置用戶與操作系統(tǒng)的接口由一組系統(tǒng)調用命令組成負責管理和控制運行的程
5、序并在這些程序與系統(tǒng)控制的資源和提供的服務間實現(xiàn)交互作用用匯編語言:在程序中直接用系統(tǒng)調用命令用高級語言:可在編程時使用過程調用語句程序級接口用戶接口與OS間的關系圖第七章作業(yè)管理與OS接口72 批處理OS的作業(yè)管理1. 作業(yè)的基本概念作業(yè) 用戶在一次計算過程中,或者一次事務處理過程中,要求計算機系統(tǒng)所做工作的總稱作業(yè)步 一個作業(yè)可劃分成若干部分,稱為一個作業(yè)步典型的作業(yè)控制過程: “編譯”、“連接裝配”、“運行”72 批處理OS的作業(yè)管理2. 典型的作業(yè)步編譯連接裝配運行目標程序段目標程序源程序輸入數(shù)據(jù)子程序庫函數(shù)動態(tài)庫函數(shù)計算結果編輯(輸入,修改)源程序編譯連接運行成功編輯(輸入,修改)另
6、一源程序是否典型的作業(yè)步一個作業(yè)另一個作業(yè)3. 批處理作業(yè)控制語言用戶用于描述批處理作業(yè)處理過程控制意圖的一種特殊程序書寫作業(yè)說明書的語言稱為作業(yè)控制語言(JCL)作業(yè)控制語言的類別包括: I/O命令、編譯命令、操作命令以及條件命令等4. 作業(yè)說明書表達用戶對作業(yè)的控制意圖內容:作業(yè)的基本描述作業(yè)控制描述資源要求描述5. 作業(yè)控制塊作業(yè)控制塊(JCB:Job Control Block)是批處理作業(yè)存在的標志其中保存有統(tǒng)對于作業(yè)進行管理所需要的全部信息,它們被保存于磁盤區(qū)域中。當作業(yè)開始由輸入設備向磁盤的輸入井傳輸時,系統(tǒng)輸入程序為其建立一個作業(yè)控制塊,進行初始化,初始化的大部分信息取自作業(yè)說
7、明書需要訪問作業(yè)控制塊的程序:系統(tǒng)輸入程序;作業(yè)調度程序;作業(yè)控制程序;系統(tǒng)輸出程序等作業(yè)控制塊的撤消:作業(yè)完成后,其作業(yè)控制塊由系統(tǒng)輸出程序撤消,作業(yè)控制塊被撤消后其作業(yè)也不復存在作業(yè)控制塊的內容作業(yè)標知用戶名稱用戶帳號調度信息資源需求作業(yè)狀態(tài)作業(yè)類別輸入井地址輸出井地址進入系統(tǒng)時間開始處理時間作業(yè)完成時間作業(yè)退出時間資源使用情況6. 作業(yè)表(作業(yè)隊列)每個作業(yè)有個作業(yè)控制塊所有作業(yè)JCB構成一個作業(yè)表作業(yè)表存放在外存固定區(qū)域中,長度是固定限制了系統(tǒng)所能同時容納的作業(yè)數(shù)量 系統(tǒng)輸入程序、作業(yè)調度程序、系統(tǒng)輸出程序都需要訪問作業(yè)表因而存在互斥問題 7. 批處理作業(yè)的狀態(tài)及轉換 一個作業(yè)從進入系
8、統(tǒng)到運行結束經(jīng)歷四個不同的狀態(tài):“進入”“后備”“運行”“完成” 作業(yè)和進程的狀態(tài)轉換圖數(shù)據(jù)進入狀態(tài)退出狀態(tài)后備狀態(tài)運行狀態(tài)作業(yè)控制進程 輸入設備數(shù)據(jù)源程序輸出設備作業(yè)說明書輸入井運行等待就緒輸出井輸入程序輸出程序作業(yè)調度進程調度1) 作業(yè)的建立一個作業(yè)建立過程的兩個子過程: 作業(yè)的輸入 JCB的建立作業(yè)控制塊JCB和作業(yè):一一對應關系2) 作業(yè)的輸入方式聯(lián)機輸入方式脫機輸入方式直接耦合方式SPOOLing系統(tǒng)(1)聯(lián)機輸入方式用戶和系統(tǒng)通過交互會話來輸入作業(yè)外圍設備直接和主機連接(2)脫機輸入方式 為了解決單臺設備聯(lián)機輸入時的CPU浪費問題3) 直接耦合系統(tǒng) 把主機和外圍低檔機通過一個公用的
9、大容量外存直接耦合起來8.SPOOLING系統(tǒng)示意圖JCB的建立在系統(tǒng)把作業(yè)信息輸入到輸入井之后,根據(jù)作業(yè)說明書和有關作業(yè)信息在外存的位置等建立作業(yè)控制表JCBJCB包含對作業(yè)進行管理所必須的信息只有在獲得JCB表項和足夠輸入井空間后作業(yè)才可能創(chuàng)建成功9. 批處理作業(yè)的調度主要功能:審查系統(tǒng)能否滿足用戶作業(yè)的資源要求按照一定的算法從輸入井中的后備作業(yè)中選取作業(yè) 調度的關鍵在選擇恰當?shù)乃惴ㄗ鳂I(yè)調度程序 作業(yè)調度程序的主要功能是審查系統(tǒng)能否滿足用戶作業(yè)的資源要求以及按照一定的算法選取作業(yè)。10. 調度算法評價 目標:單位時間內運行盡可能多的作業(yè)使處理機盡可能保持“忙碌”使各種I/O設備得以充分利用
10、對所有的作業(yè)都是公平合理的調度算法應與系統(tǒng)設計目標保持一致注意系統(tǒng)資源均衡使用保證提交的作業(yè)在截止時間內完成設法縮短作業(yè)平均周轉時間設計調度算法時應考慮的因素: 作業(yè)平均周轉時間 平均帶權周轉時間調度算法性能的衡量 11.常見的批處理作業(yè)調度算法(1)先來先服務算法(FCFS:First Come First Serve)(2)最短作業(yè)優(yōu)先算法 (SJF:Shortest Job First)(3)最高響應比優(yōu)先算法 (HRN:Highest Response Ratio Next) 響應比R = 作業(yè)周轉時間 / 作業(yè)處理時間 =(作業(yè)處理時間 + 作業(yè)等待時間)/ 作業(yè)處理時間 = 1 +
11、(作業(yè)等待時間 / 作業(yè)處理時間)(4)基于優(yōu)先數(shù)調度算法 (HPF:Highest Priority First)(5)均衡調度算法(分類排隊算法) 作業(yè)調度算法應用例子1 假設在單道批處理環(huán)境下有四個作業(yè),已知它們進入系統(tǒng)的時間、估計運行時間,應用先來先服務、最短作業(yè)優(yōu)先和最高響應比優(yōu)先作業(yè)調度算法,分別計算出作業(yè)的平均周轉時間和帶權的平均周轉時間。先來先服務調度算法計算結果最短作業(yè)優(yōu)先作業(yè)算法計算結果最高響應比優(yōu)先作業(yè)算法計算結果 在兩道環(huán)境下有四個作業(yè),已知它們進入系統(tǒng)的時間、估計運行時間,系統(tǒng)采用短作業(yè)優(yōu)先作業(yè)調度算法,作業(yè)被調度運行后不再退出,當一新作業(yè)投入運行后,可按照作業(yè)運行時
12、間長短調整作業(yè)執(zhí)行的次序。請給出這四個作業(yè)的執(zhí)行時間序列,并計算出平均周轉時間及帶權平均周轉時間 作業(yè)調度算法應用例子2兩道批處理系統(tǒng)中最短作業(yè)優(yōu)先作業(yè)算法計算結果四個作業(yè)的執(zhí)行時間序列為:JOB1:10:0010:05,10:4011:05JOB2:10:0510:25JOB3:10:2510:30JOB4:10:3010:40兩道批處理系統(tǒng)中最短作業(yè)優(yōu)先作業(yè)算法計算結果(續(xù)1)10:00,JOB1進入,只有一作業(yè),JOB1被調入執(zhí)行10:05,JOB2到達,最多允許兩作業(yè)同時進入 所以JOB2也被調入內存中有兩作業(yè),哪一個執(zhí)行?題目規(guī)定當一新作業(yè)運行后,可按作業(yè)運行時間長短調整執(zhí)行次序即基
13、于優(yōu)先數(shù)可搶占式調度策略優(yōu)先數(shù)是根據(jù)作業(yè)估計運行時間大小來決定的由于JOB2運行時間(20分)比JOB1少(到10:05,JOB1還需25分鐘)所以JOB2運行,而JOB1等待兩道批處理系統(tǒng)中最短作業(yè)優(yōu)先作業(yè)算法分析過程10:10,JOB3到達輸入井,內存已有兩作業(yè) JOB3不能馬上進入內存;10:20,JOB4也不能進入內存10:25,JOB2運行結束,退出,內存中剩下JOB1 輸入井中有兩作業(yè)JOB3和JOB4,如何調度?作業(yè)調度算法:最短作業(yè)優(yōu)先因此JOB3進入內存比較JOB1和JOB3運行時間JOB3運行時間短,故JOB3運行同樣,JOB3退出后,下一個是JOB4JOB4結束后,JOB
14、1才能繼續(xù)運行兩道批處理系統(tǒng)中最短作業(yè)優(yōu)先作業(yè)算法分析過程(續(xù)1) 多道程序對平均周轉時間的影響作業(yè)流在多道環(huán)境下運行平均周轉時間、帶權平均周轉時間 比單道環(huán)境下都有明顯改善不是任意作業(yè)組合都能改善調度性能有時甚至可能變壞批處理作業(yè)的控制當作業(yè)為執(zhí)行態(tài)時,作業(yè)調度程序為其建立一作業(yè)控制進程, 由該進程控制作業(yè)運行作業(yè)控制進程:主要負責控制作業(yè)的運行,具體解釋執(zhí)行作業(yè)說明書的每一個作業(yè)步,并創(chuàng)建子進程來完成相應步驟一個作業(yè)步的處理:(1)建立子進程(2)為其申請資源(3)訪問該作業(yè)的JCB(4)釋放占有資源(5)撤消子進程等作業(yè)控制程序只有一個,對應每一處于執(zhí)行狀態(tài)的作業(yè)有一作業(yè)控制進程第七章作
15、業(yè)管理與OS接口73 命令接口命令接口命令接口在操作系統(tǒng)與計算機用戶之間提供易于理解的雙向通信機制基本任務:解釋命令,傳送命令以便執(zhí)行 接受系統(tǒng)信息,提交給用戶交互式命令的接口復雜:含功能結構,可能問題的處理,如各種約定、前端處理、命令日志、命令注解、宏命令及命令組等交互式控制靈活方便,可以隨時進行各種處理,排除問題,方便調試;系統(tǒng)利用率低命令接口類型:作業(yè)控制語言, 鍵盤操作命令接口包括:一組聯(lián)機命令,終端處理程序,命令解釋程序終端處理程序交互式命令接口用戶同操作系統(tǒng)的通信是通過一個輸入/輸出裝置來實現(xiàn)的I/O裝置一般是顯示終端 通過鍵盤或鼠標輸入,系統(tǒng)輸入呈現(xiàn)在顯示屏幕上,一次顯示若干正文
16、行,某些系統(tǒng)中,提供圖形顯示功能不管哪種I/O方式,這個終端裝置是由一個終端處理程序來管理和控制的。終端處理程序提供的輸入輸出方式對整個用戶命令接口有重大影響,也確定了用戶與其應用程序之間的通信方式終端處理程序必須作為用戶接口的一個組成部分來考慮,即,直接影響命令接口的一些問題須由終端處理程序解決直接影響命令接口的一些問題(a)回送顯示(Echoing)(b)提前打入(Type ahead)(c)字符變換(d)行緩沖(e)中斷字符(Break Characters)命令解釋程序 命令解釋程序有兩種處理方法:(a)由終端命令解釋程序直接處理 在沒有創(chuàng)建子進程功能的系統(tǒng)中,終端命令通常由對應的命令
17、解釋程序處理(一個進程對應一個終端用戶)(b)由子進程代為處理在具有創(chuàng)建子進程功能的系統(tǒng)中,對于較為單純的命令,由命令解釋程序直接處理對較復雜命令,如對于PASCAL源程序進行編譯,命令解釋程序本身不能處理,此時創(chuàng)建一個子進程,并由該子進程運行PASCAL編譯程序命令接口的結構(a)作為OS的一個部分 如,OS/MVT或VAX/VMS(b)作為OS的一個獨特模塊,能方便地修改或替換 如,RT-11或CP/M(c)作為一易于被替換的普通程序 如,UNIX操作系統(tǒng) (d) 在某些系統(tǒng)中,可能用專門設計的命令接口替代標準的命令接口 如,多用戶UNIX,用戶可有不同命令接口命令接口結構命令語言命令語言
18、規(guī)定由OS執(zhí)行的一系列操作在一般的命令語言中,用戶通過打入稱為命令行的一行指令來規(guī)定每一個動作每一命令行以命令開始,它標識所要執(zhí)行的操作大多數(shù)命令是用運行一個程序來執(zhí)行所請求的操作命令的附加功能(參數(shù)與變量,通配符,重定向,管道與過濾器等)命令結構:(命令前綴)命令名(命令參數(shù))(命令選項)(1)系統(tǒng)訪問命令登錄命令,如,login等撤離命令,如,logout等(2)文件管理命令(3)編輯、編譯和執(zhí)行命令(4)詢問命令(5)操作員專用命令命令語言的種類(1)UNIX系統(tǒng): who ls -l(2)DOS系統(tǒng) dir c:(3)VAX/VMS run mypro典型命令實例命令文件提前寫出命令并
19、存入文件,稱之為命令文件命令文件提供了一種把一系列命令組裝成文件的方法,然后用文件名作為命令名執(zhí)行另外一系列命令。特點:(1)接受參數(shù)、變量,宏變量替換(2)允許嵌套形式調用其他命令文件(3)允許參數(shù)來自終端的命令文件本身(4)允許執(zhí)行顯示到終端、存入文件或送入打印機(5)允許命令加入注釋(6)出錯時允許用戶干預(7)可把輸入傳給程序,可有循環(huán)、分支、轉移等交互式系統(tǒng)的歷史與展望六十年代中期:問答式對話、文本菜單或命令語言,基于命令行界面的交互式系統(tǒng)七十、八十年代:圖形用戶界面時代,形成WIMP標準,以窗口(windows)、圖標(icon)、菜單(menu)、指點裝置(pointing de
20、vice)為基礎的交互式系統(tǒng),實際行動代替復雜語法多媒體界面是WIMP另一種風格,是單通道的未來的交互式系統(tǒng)必將是多通道的 通過各種不同的人體通道,如語音、手勢、身體語言等交互,大大提高交互的自然性和高效性 遵循以人為中心的自然交互特點,實現(xiàn)人與系統(tǒng)的無障礙自然交互交互式系統(tǒng)實例分時系統(tǒng) 分時系統(tǒng)中的用戶控制作業(yè)的執(zhí)行大致有四個階段:終端的連接用戶登錄控制作業(yè)執(zhí)行用戶退出第七章作業(yè)管理與OS接口74 系統(tǒng)調用 系統(tǒng)調用概念 系統(tǒng)調用指系統(tǒng)為用戶程序調用操作系統(tǒng)所提供的子程序。它與一般的函數(shù)調用不同,系統(tǒng)調用是通過中斷方式轉向相應子程序的,它工作在核心態(tài)(即特權方式),而一般函數(shù)調用,仍僅在用戶
21、態(tài)下的地址轉移。 系統(tǒng)調用系統(tǒng)調用,是用戶在程序中調用操作系統(tǒng)所提供的一些子功能這是特殊的過程調用,由特殊的機器指令實現(xiàn)這個指令還將系統(tǒng)轉入管態(tài)系統(tǒng)調用是操作系統(tǒng)提供給編程人員的唯一接口,利用系統(tǒng)調用,動態(tài)請求和釋放系統(tǒng)資源,完成與硬件相關的工作以及控制程序的執(zhí)行等每個操作系統(tǒng)都提供幾百種系統(tǒng)調用實際上系統(tǒng)調用語句本身是硬件提供的(機器指令),但其所調用的功能是操作系統(tǒng)提供的每種機器的機器指令集中都有一條系統(tǒng)調用指令(訪管指令) 系統(tǒng)調用方式(INT)與程序中一般的調用方式的相同點:改變指令流程重復執(zhí)行和公用改變指令流程后需要返回原處系統(tǒng)調用與過程調用的相同點系統(tǒng)調用與一般過程調用的區(qū)別運行在
22、不同的系統(tǒng)狀態(tài) 一般過程調用,其調用程序和被調用程序都運行在相同狀態(tài):核心態(tài)或用戶態(tài)系統(tǒng)調用:調用程序在用戶態(tài),被調用程序在系統(tǒng)態(tài)狀態(tài)的轉換一般的過程調用不涉及系統(tǒng)狀態(tài)的轉換,可直接由調用過程轉向被調用過程運行系統(tǒng)調用時,調用和被調用過程在不同系統(tǒng)狀態(tài),不允許由調用過程直接轉向被調用過程通過軟中斷機制先由用戶態(tài)轉換為核心態(tài)在OS核心分析后,轉向相應的系統(tǒng)調用處理子程序同一程序中不包含被調用代碼系統(tǒng)調用是動態(tài)調用,程序中不包含被調用代碼,好處:(1)用戶程序長度縮短(2)當OS升級時,調用方不必改變系統(tǒng)調用方式的調用地址和返回地址都是不固定的(系統(tǒng)調用指令中不包含調用地址,只包含功能號;系統(tǒng)調用
23、返回指令中不包括返回地址,通過棧保存和彈出返回地址,系統(tǒng)調用返回地址不固定)系統(tǒng)調用與過程調用的區(qū)別(續(xù))返回問題一般過程調用在被調用過程執(zhí)行完后,回調用過程搶占式調度的系統(tǒng)中,被調用過程執(zhí)行完后,系統(tǒng)將對所有要求運行的進程進行優(yōu)先級分析。如果調用進程仍有最高優(yōu)先級,則返回到調用進程執(zhí)行 否則,引起重新調度,讓優(yōu)先級最高的進程優(yōu)先執(zhí)行。此時,系統(tǒng)把調用進程放入就緒隊列嵌套調用系統(tǒng)調用也允許嵌套調用,即在一被調用過程執(zhí)行期間,可再利用系統(tǒng)調用命令調用另一系統(tǒng)調用一般每個系統(tǒng)對嵌套調用的深度有限制系統(tǒng)調用的返回與嵌套調用系統(tǒng)調用的分類將系統(tǒng)的功能分為兩部分:系統(tǒng)自身所需要的作為服務提供給用戶的OS
24、的系統(tǒng)調用:進程控制類系統(tǒng)調用文件操作類系統(tǒng)調用進程通信類系統(tǒng)調用設備管理類系統(tǒng)調用信息維護類系統(tǒng)調用“廣義指令”和“虛處理機”系統(tǒng)調用命令擴充機器指令,增強系統(tǒng)的功能,方便用戶使用, 稱為“廣義指令”?!皬V義指令”和機器指令的不同: 機器指令是由硬件線路直接實現(xiàn)的 “廣義指令”由OS提供的多個子程序,軟件實現(xiàn)的“虛處理機”:從用戶角度來看,“廣義指令”,擴大了機器指令系統(tǒng),增強了處理機功能,提供了一臺功能更強,使用更方便的處理機,實現(xiàn)了處理機性能上的擴充,為了區(qū)別于真實的物理處理機,稱它為“虛處理機”。虛擬機硬件:CPU、內存、外設裸機:沒有配置任何軟件的計算機虛擬機:在邏輯上添加一層軟件來
25、擴充計算機功能,被改造后的計算機,除了基本硬件指令外,又增加了許多新的命令,這些指令和命令的集合稱為擴充后的機器指令系統(tǒng),從而形成了一臺比原來機器性能更好、功能更強的計算機,這種經(jīng)軟件改造后的計算機稱為虛擬機。微機OS中的系統(tǒng)調用一般外設的輸入、輸出的系統(tǒng)調用磁盤管理及磁盤輸入、輸出的系統(tǒng)調用磁盤文件管理的系統(tǒng)調用其它系統(tǒng)調用系統(tǒng)調用過程為執(zhí)行系統(tǒng)調用命令作準備。其主要工作是把用戶程序的“現(xiàn)場”保留起來,并把系統(tǒng)調用命令的編號等參數(shù)放入約定的存儲單元。根據(jù)系統(tǒng)調用的編號,訪問系統(tǒng)調用入口表,找到相應子程序的入口地址,然后轉去執(zhí)行。系統(tǒng)調用命令執(zhí)行完后的處理。這包括恢復“現(xiàn)場”,并把系統(tǒng)調用的返
26、回參數(shù)或參數(shù)區(qū)首址放入指定的通用寄存器中,以供用戶程序使用。必須為實現(xiàn)系統(tǒng)調用功能的子程序編造入口地址表每個入口地址與相應的系統(tǒng)程序名對應陷入處理程序把陷入指令包含功能號與入口地址表有關項對應, 系統(tǒng)調用功能號驅動有關子程序執(zhí)行在系統(tǒng)調用處理結束之后,用戶程序需利用系統(tǒng)調用返回結果繼續(xù)執(zhí)行保護現(xiàn)場:在進入系統(tǒng)調用處理之前,陷入處理機構還需保存處理機現(xiàn)場在系統(tǒng)調用處理結束之后,要恢復處理機現(xiàn)場,現(xiàn)場被保護在特定的內存區(qū)或寄存器中系統(tǒng)調用過程(續(xù))系統(tǒng)調用過程(續(xù))作業(yè)的生活歷程第七章作業(yè)管理與OS接口75 UNIX系統(tǒng)調用UNIX系統(tǒng)調用的類型進程控制文件操縱 進程間通信(通信軟件包:IPC)信
27、息維護進程控制創(chuàng)建進程(fork)終止進程(exit)等待子進程結束(wait)執(zhí)行一個文件(exec)獲得進程ID獲得用戶ID進程暫停(pause) 文件操縱創(chuàng)建文件(creat)打開文件(open):把文件屬性從盤復制到內存關閉文件(close):切斷用戶程序與該文件的通路讀和寫文件(read和write)連接和去連接(link和anlink)進程間通信消息機制,用msgget建消息隊列(成功)返回mssgid共享存貯機制:利用shmget建立共享存貯區(qū)信號量機制:允許將一組信號量形成一個信號量集 信息維護設置和獲得時間獲得進程和子進程時間(times)設置文件訪問和修改時間(utime)
28、獲得當前UNIX系統(tǒng)的名稱(uname)被中斷進程的環(huán)境保護CPU環(huán)境保護: 應在用戶空間提供系統(tǒng)調用所需的參數(shù)表,并將該參數(shù)表的地址送入R0寄存器。AP和FP指針:系統(tǒng)調用參數(shù)表指針AP是用于指示正在執(zhí)行的系統(tǒng)調用所需參數(shù)表的地址,棧幀指針FP則是用于指示本次系統(tǒng)調用所保存的數(shù)據(jù)項。 系統(tǒng)調用陷入后需處理的問題 trap.C程序是一各處理各種陷入情況的C語言文件,共有12種陷入的處理要調用trap.C程序。確定系統(tǒng)調用號,其調用形式為:trap(usp,type,code,PC,PSL)參數(shù)傳送: 參數(shù)傳送是指由trap.C程序將系統(tǒng)調用參數(shù)表中的內容,從用戶區(qū)傳送到User結構的U.U-a
29、rg 中,供系統(tǒng)調用處理程序使用。 系統(tǒng)調用陷入后需處理的問題(續(xù))3. 利用系統(tǒng)調用定義表轉入相應的處理程序 在UNIX系統(tǒng)中,對于不同(編號)的系統(tǒng)調用,都設置了與之相應的處理子程序。4. 系統(tǒng)調用返回前的公共處理 在UNIX系統(tǒng)中,進程調度的主要依據(jù),是進程的動態(tài)優(yōu)先級。隨著進程執(zhí)行時間加長,其優(yōu)先級將逐步降低。UNIX系統(tǒng)規(guī)定,當進程的運行是處于系統(tǒng)態(tài)時,即使再有其他進程又發(fā)來了信號,也不予理睬;僅當進程已從系統(tǒng)態(tài)返回到用戶態(tài)時,內核才檢查該進程是否已收到了由其他進程發(fā)來的信號。The EndH6E2B+y(u%r#oWlThQeNbJ8G5D1A-x*t$qYnVkSgPdMaI7F
30、3C0z)v&s!pXmUiRfOcK9H6E2B+x(u%rZoWlThQeMbJ8G4D1A-w*t!qYnVjSgPdLaI6F3C0y)v&s#pXlUiRfNcK9H5E2B+x(u$rZoWkThQeMbJ7G4D1z-w*t!qYmVjSgOdLaI6F3B0y)v%s#pXlUiQfNcK8H5E2A+x*u$rZnWkThPeMaJ7G4C1z-w&t!qYmVjRgOdL9I6F3B0y(v%s#oXlUiQfNbK8H5D2A+!qYmVjSgOdLaI6F3B0y)v%s#pXlUiQfNcK8H5E2A+x*u$rZnWkThPeMbJ7G4C1z-w&t!qYmVj
31、RgOdL9I6F3B0y(v%s#oXlUiQfNbK8H5D2A+x*u$qZnWkShPeMaJ7F4C1z)w&t!pYmUjRgOcL9I6E3B0y(v%r#oXlTiQfNbK8G5D2A-x*u$qZnVkShPdMaJ7F4C0z)w&s!pYmUjRfOcL9H6E3B+y(u%r#oWlTiQeNbJ8G5D1A-x*t$qZnVkSgPdMaI7F4C0z)v&s!pXmUjRfOcK9H6E2B+y(u%rZoWlThQeNbJ8G4D1A-w*t$qYnVjSgPdLaI7F3C0y)v&s#pXmUiRfNcK9H5E2B+x(u%rZoWkThQeMbJ8G4D
32、1z-w*t!qYnVjSgOdLaI6F3C0y)v%s#pXlUiRfNcK8H5E2A+x(u$rZnWkThPeMbJ7G4C1z-w&t!qYmVjSgOdL9I6F3B0y)v%s#oXlUiQfNcK8H5D2A+x*u$rZnWkShPeMaJ7G4C1z)w&t!pYmVjRgOcL9I6E3B0y(vZnWkThPeMbJ7G4D1z-w&t!qYmVjSgOdL9I6F3B0y)v%s#oXlUiQfNcK8H5D2A+x*u$rZnWkShPeMaJ7G4C1z)w&t!pYmVjRgOcL9I6E3B0y(v%s#oXlTiQfNbK8H5D2A-x*u$qZnWkS
33、hPdMaJ7F4C1z)w&s!pYmUjRgOcL9H6E3B+y(v%r#oWlTiQeNbK8G5D1A-x*t$qZnVkShPdMaI7F4C0z)w&s!pXmUjRfOcL9H6E2B+y(u%r#oWlThQeNbJ8G5D1A-w*t$qYnVkSgPdLaI7F3C0z)v&s#pXmUiRfOcK9H5E2B+x(u%rZoWlThQeMbJ8G4D1A-w*t!qYnVjSgPdLaI6F3C0y)v&s#pXlUiRfNcK9H5E2A+x(u$rZoWkThPeMbJ7G4D1z-w&t!qYmVjSgOdLaI6F3B0y)v%s#pXlUiQfNcK8H5E2
34、A+x*u$rZnWkThPeMaJ7G4C1z-w&t!pYmVjRgOH5E2A+x(u$rZoWkThPeMbJ7G4D1z-w*t!qYmVjSgOdLaI6F3B0y)v%s#pXlUiQfNcK8H5E2A+x*u$rZnWkThPeMaJ7G4C1z-w&t!pYmVjRgOdL9I6E3B0y(v%s#oXlUiQfNbK8H5D2A+x*u$qZnWkShPeMaJ7F4C1z)w&t!pYmUjRgOcL9I6E3B+y(v%r#oXlTiQeNbK8G5D2A-x*t$qZnVkShPdMaJ7F4C0z)w&s!pYmUjRfOcL9H6E3B+y(u%r#oWlTiQ
35、eNbJ8G5D1A-x*t$qYnVkSgPdMaI7F3C0z)v&s!pXmUiRfOcK9H6E2B+x(u%rZoWlThQeNbJ8G4D1A-w*t$qYnVjSgPdLaE3B+y(u%r#oWlTiQeNbJ8G5D1A-x*t$qYnVkSgPdMaI7F3C0z)v&s!pXmUjRfOcK9H6E2B+y(u%rZoWlThQeNbJ8G4D1A-w*t$qYnVjSgPdLaI7F3C0y)v&s#pXmUiRfNcK9H5E2B*t$qYnVkSgPdMaI7F4C0z)v&s!pXmUjRfOcK9H6E2B+y(u%rZoWlThQeNbJ8G4D1A-w*t$
36、qYnVjSgPdLaI7F3C0y)v&s#pXmUiRfNcK9H5E2B+x(u%rZoWkThQeMbJ8G4D1z-w*t!qYnVjSgOdLaI6F3C0y)v%s#pXlUiRfNcK8H5E2A+x(u$rZnWkThPeMbJ7G4C1z-w&t!qYmVjRgOdL9I6F3B0y)v%s#oXlUiQfNcK8H5-w*t!qYnVjSgOdLaI6F3C0y)v%s#pXlUiRfNcK8H5E2A+x(u$rZnWkThPeMbJ7G4D1z-w&t!qYmVjSgOdL9I6F3B0y)v%s#oXlUiQfNcK8H5D2A+x*u$rZnWkShPeMaJ7G
37、4C1z)w&t!pYmVjRgOcL9I6E3B0y(v%r#oXlTiQfNbK8H5D2A-x*u$qZnWkShP9I6F3B0y)v%s#oXlUiQfNcK8H5D2A+x*u$rZnWkShPeMaJ7G4C1z)w&t!pYmVjRgOdL9I6E3B0y(v%s#oXlTiQfNbK8H5D2A-x*u$qZnWkShPdMaJ7F4C1z)w&s!pYmUjRgOcL9H6E3B+y(v%r#oWlTiQeNbK8G5D1A-x*t$qZnVkShPdMaI7F4C0z)w&s!pXmUjRfOcL9H6E2B+y(u%r#oWlThQeNbJ8G5D1A-w*t$qYnV
38、kSgPdLaI7F3C0z)v&s#pXmUiRfOcK9H6E2B+x(u%rZoWlThQeMbJ8G4)w&s!pXmUjRfOcL9H6E2B+y(u%r#oWlThQeNbJ8G5D1A-w*t$qYnVkSgPdMaI7F3C0z)v&s!pXmUiRfOcK9H6E2B+x(u%rZoWlThQeMbJ8G4D1A-w*t!qYnVjSgPdLaI6F3C0y)v&s#pXlUiRfNcK9H5E2A+x(u$rZoWkThQeMbJ7G4D1z-w*t!qYmVjSgOdLaI6F3B0y)v%s#pXlUiQfNcK8H5E2A+x*u$rZnWkThPeMaJ7G4C1z
39、-w&t!pYmVjRgOdL9I6F3B0y(v%s#oXlUiQfNbK8H5D2A+x*u$qZnWkShPeMaJ7F4C1z)w&t!pYmUjRgOcL9I6E3B+y(v%r#oXlTiQeNbK8G5D2A-x*t$qZnVkShP9I6F3B0y(v%s#oXlUiQfNbK8H5D2A+x*u$qZnWkShPeMaJ7F4C1z)w&t!pYmUjRgOcL9I6E3B+y(v%r#oXlTiQfNbK8G5D2A-x*u$qZnVkShPdMaJ7F4C0z)w&s!pYmUjRfOcL9H6E3B+y(u%r#oWlTiQeNbJ8G5D1A-x*t$qYnVkSgP
40、dMaI7F4C0z)v&s!pXmUjRfOcK9H6E2B+y(u%rZoWlThQeNbJ8G4D1A-w*t$qYnVjSgPdLaI7F3C0y)v&s#pXmUiRfNcK9H5E2B+x(u$rZoWkThQeMbJ8G4D1z-w*t!qYnVjSgOdLaI6F3C0y)v%s#pXlUiRfNcK8H5E2A+x(u$rZnWkThPeMbJ7G4C1z-w&t!qYmVjRgOdL9I6F3B0y)v%s#oXlUiQfNcK8H5D2A+x*u$rZnWkShPeMaJ7G4C1z)w&t!pYmVjRgOcL9I6E3B0y(v%r#oXlTiQfNbK8G5D2A-x*u$qZnVkShPdMaJ7F4C1z)w&s!pYmUjRgOcL9H6E3B+y(v%r#oWlTiQeNbK8G5D1A-x*t$VjRgOcL9I6E3B0y(v%r#oXlTiQfNbK8H5D2A-x*u$qZnWkShPdMaJ7F4C1z)w&s!pYmUjRgOcL9H6E3B+y(v%r#oWlTiQeNbK8G5D1A-x*t$qZnVkSgPdMaI7F4C0z)v&s!pXmUjRfOcL9H6E2B+y(u%r#oWlThQeNbJ8G5D1A-w*t$qYnVkSgPdLaI7F3C0z)v&s#pXmUiRfOcK9H5E2B+x(
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度標準勞動關系解除與離職員工再就業(yè)服務協(xié)議
- 二零二五年度山場租賃承包與旅游開發(fā)協(xié)議
- 二零二五年度互聯(lián)網(wǎng)農(nóng)業(yè)合作入股協(xié)議
- 2025年度集體勞動合同到期續(xù)簽模板協(xié)議
- 二零二五年度環(huán)境保護合作協(xié)議簽訂與審批流程
- 2025年度門面房租賃與商業(yè)形象設計合同
- 二零二五年度茶室裝修工程驗收與售后服務合同
- 二零二五年度名義法人免責協(xié)議書:跨境電商平臺運營管理合同
- 二零二五美容院顧客資源及合同轉讓合作協(xié)議
- 二零二五年度互聯(lián)網(wǎng)企業(yè)高級產(chǎn)品經(jīng)理聘用合同
- 事業(yè)單位個人德能勤績廉工作總結(2篇)
- 《四季的色彩》說課 課件
- 【高中語文】《記念劉和珍君》《為了忘卻的記念》課件 統(tǒng)編版高中語文選擇性必修中冊
- 《英語詞匯學》課程教學大綱
- YS/T 952-2014銅鉬多金屬礦化學分析方法銅和鉬量的測定電感耦合等離子體原子發(fā)射光譜法
- GB/T 2305-2000化學試劑五氧化二磷
- 種族民族與國家
- 醫(yī)學細胞生物學研究方法及其在中醫(yī)研究中的應用課件
- 全國青少年機器人技術等級考試:一級培訓全套課件
- 四年級語文下冊第六單元【集體備課】(教材解讀+教學設計)課件
- 免疫性血小板減少性紫癜36張課件
評論
0/150
提交評論