




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第2章操作系統用戶界面2.1簡介用戶界面負責用戶和操作系統之間的交互用戶通過用戶界面向計算機系統提交服務需求計算機通過用戶界面向用戶提供其所需要的服務用戶的分類使用和管理計算機應用程序的用戶普通用戶:只是使用計算機的應用服務管理員用戶:負責計算機和操作系統的正常與安全運行程序開發人員:利用操作系統提供的編程功能開發新的應用程序,完成用戶所要求的服務2.1簡介對不同用戶,操作系統提供不同的用戶界面操作命令:對普通用戶和管理員,這些命令可以實現用戶所要求的不同功能(例如,上網、在線處理、辦公處理等),為用戶提供相應的服務系統調用:對編程人員,這些系統調用允許編程人員使用操作系統和程序,開發能夠滿足用戶服務需求的新的控制命令不同操作系統為用戶提供不同的操作命令、不同的系統調用2.2一般用戶的輸入輸出界面2.2.1作業的定義當用戶要求處理問題時,應首先用某種程序設計語言對要處理的問題編制源程序,再準備好初始數據,然后把編制好的源程序和準備好的數據輸入到計算機系統中,在操作系統的控制下,經過編譯、裝配、運行等加工步驟,就能得到處理結果圖2.1一般編程過程
2.2.1作業的定義作業:是用戶在一次解題或一個事務處理過程中要求計算機系統所做工作的集合,包括用戶程序、所需數據和命令等。作業步:是作業中計算機所做的相對獨立的工作或加工步驟。例如,編輯是一個作業步作業管理:一個作業從輸入到輸出的一個過程作業提交作業調度作業控制作業退出
對于被調度的作業,OS要對它在系統中整個運行過程實行控制,作業的控制過程如圖所示2.2.2作業組成作業是一個比程序更廣的概念。它由程序、數據和作業說明書組成。系統通過作業說明書控制文件形式的程序和數據,使之執行和操作。作業由程序、數據和作業說明書三部分組成:程序:是問題求解的算法描述數據:是程序加工的對象作業說明書:是告訴操作系統本作業的程序和數據按照什么樣的要求使之執行2.2.2作業組成作業說明書體現用戶的控制意圖,在系統中生成一個作業控制塊JCB(JobControlBlock)的表格作業控制塊是作業管理中最主要的數據結構,是作業存在系統的唯一標志。作業控制塊保存了系統對作業進行管理的全部信息操作系統是根據JCB來對作業進行控制和管理的。例如,當OS進行作業調度的時候,它要訪問作業控制塊的信息,從中找出作業標識、作業狀態等信息;在作業輸出時,要從JCB中找到輸出井的地址等信息。JCB要包括如下信息:圖2.2作業說明書的主要內容2.2.2作業組成通常,作業說明書主要用于批處理系統中,且各計算機廠家對自己的系統定義有各自的作業說明書的格式和內容在微機系統和工作站系統中,常用批處理文件或shell程序方式編寫作業說明書2.2.3一般用戶的輸入輸出方式聯機輸入輸出方式:通過交互會話方式,實現作業輸入輸出脫機輸入輸出方式:解決設備速度太慢的問題直接耦合方式:將主機和外圍機通過一個公用的大容量外存直接耦合起來,從而省去了在脫機輸入中依靠人工干預來傳遞后援存儲器的過程。其中,公用存儲器中大量數據的高速讀寫由主機完成,慢速的輸入輸出過程仍又外圍機自己管理圖2.3直接耦合方式2.2.3一般用戶的輸入輸出方式SPOOLING系統:稱為外圍設備同時聯機操作
圖2.4SPOOLING系統2.2.3一般用戶的輸入輸出方式SPOOLING系統:該系統中,多臺外圍設備通過通道或DMA器件和主機與外存連接起來。作業的輸入輸出過程由主機中的操作系統控制。操作系統中的輸入程序包含兩個獨立的過程:讀過程:負責從外設把信息讀入緩沖區寫過程:負責把緩沖區的信息送到外存輸入井中網絡聯機方式
:以上述幾種輸入輸出方式為基礎2.3命令控制界面操作系統提供兩個用戶接口界面:系統調用:程序級編程人員使用系統調用來請求操作系統提供服務,如申請和釋放外設等資源、控制程序的執行速度等。操作命令:作業級用戶利用這些操作命令來組織和控制作業的執行或管理計算機系統
作業控制語言(早期批處理操作系統)鍵盤命令(交互式OS,分時OS)圖形用戶接口(UNIX、WINDOWS)2.3命令控制界面命令控制界面:用來組織和控制作業運行使用操作命令進行作業控制主要有兩種方式:脫機方式聯機方式2.3命令控制界面脫機控制方式用戶將作業的執行順序和出錯處理方法一并以作業控制說明書的方式或命令文件方式提交給系統,由系統按照作業說明書或命令文件中所規定的順序控制作業執行。作業控制說明書:由一組具有編程語言特征的作業控制命令,或稱作業控制語言組成。其主要包括作業情況、作業資源要求、出錯處理等內容執行過程中,用戶無法干涉UNIX/Linux中的Shell語言也可作為JCL使用效率較高,但缺乏交互能力,不適合初學者2.3命令控制界面聯機控制方式采用人機對話方式來控制作業運行,及時交互由一組命令及命令解釋程序組成,也稱命令接口一般可提供如下的一種或幾種方式:命令行方式菜單方式命令文件方式聯機控制方式命令行方式通過控制臺終端,打入操作系統提供的命令來控制自己的作業的運行各操作系統命令從格式到功能都不盡相同
通常的命令格式:
COMMANDargl,arg2,…,argn<CR>命令類型:環境設置、權限管理、系統管理、文件管理等該方式繁瑣,難記,但用起來快捷便利、十分靈活聯機控制方式批命令方式把所需執行的一系列命令組裝成文件,然后用文件名作為命令名執行所需命令序列,從而自動控制作業的運行例如,MS的BAT文件Unix的Shell文件或Shell過程對一些重復運行的作業非常有用聯機控制方式命令解釋程序接收用戶輸入的命令行,作出相應的解釋并執行該命令提出的對作業的處理要求。通常會保存一張命令名字(動詞)表記錄所有操作命令及其處理程序的人口地址或相關信息
圖形用戶接口圖形用戶接口(GraphicsUserInterface,GUI):通過出現在屏幕上的對象直接進行操作,以控制和操縱程序運行將各種圖形元素顯示在屏幕上,對屏幕上的對象直接進行操作部件構成:窗口、菜單、列表框、消息框、對話框、按鈕、滾動條等特點:人機交互的并發性好、傳遞信息量大例如,MSWindows、UNIX的X-Window等
圖形用戶接口采用事件驅動的控制方式,工作過程:用戶按鍵或點擊鼠標產生一個事件,通過中斷系統激發事件驅動控制程序由事件驅動控制程序負責接收、分析和處理事件最后清除處理過的事件最新進展:觸摸屏、話音、用戶表情和肢體動作等
2.5系統調用——程序級接口在計算機系統中有兩類程序運行:用戶程序、系統程序用戶程序必須在系統程序的控制和管理下運行用戶程序、系統程序執行時有不同的權限1.用戶態與系統態根據對系統資源和機器指令的使用權限,把處理機執行時的工作狀態分為系統態和用戶態,系統態(管態):將處理機在系統程序中執行稱為系統態用戶態(算態):將處理機在用戶程序中執行稱為系統態其權限次序是:系統態、用戶態2.特權指令與訪管指令特權指令
系統態(管態):CPU執行操作系統程序時所處的狀態在此狀態下允許CPU使用全部資源和全部指令,其中包括一組特權指令,實現對系統資源的分配與管理,為用戶提供使用外部設備的服務。特權指令:只允許系統態下使用的指令。包括:使用外設的指令訪問程序狀態的指令:改變處理機狀態、切換處理機存取特殊寄存器指令:如存取中斷寄存器允許和禁止中斷其它指令2.特權指令與訪管指令用戶態:用戶程序執行時CPU所處的狀態。
在此狀態下禁止使用特權指令,不能直接使用系統資源與改變CPU狀態,并且只能訪問用戶程序所在的存儲空間。
問題:用戶提出使用外設的請求,如何完成?訪管指令(或稱陷阱指令)實現從用戶態到系統態的改變;在系統態下由操作系統代替用戶完成其請求;操作系統工作完成后,由系統態到用戶態。訪管指令本身并不是特權指令,而是系統態指令處理機狀態轉換
當CPU執行用戶程序時,CPU機處于用戶態,在執行的過程中出現了中斷時,系統轉去處理與中斷有關的事件,這時CPU由用戶態轉換成系統態,處理完中斷后,返回斷點繼續執行用戶程序,這時CPU由系統態轉換成用戶態。右圖是UNIX系統環境下處理機狀態轉換圖,在UNIX系統中,把系統態稱為核心態用戶態轉向系統態在下列情況下,由用戶態轉向系統態:用戶程序要求操作系統的服務,系統調用;發生一次中斷;在用戶程序中產生了一個錯誤的狀態;在用戶程序中企圖執行一條特權指令;從系統態轉回用戶態用一條指令實現,這條指令就是訪管指令(或稱陷阱指令)。3.系統調用系統調用(SYSTEMCALL),也稱程序接口是操作系統提供給編程人員的唯一接口,用戶在程序中使用系統調用請求操作系統的服務。例如,在程序中要求顯示某個子目錄,這時就不能讓正在運行的程序退出,然后發出“DIR”命令。這就要求在程序中能直接使用“DIR”命令,這種直接使用操作系統命令的功能稱為系統調用。3.系統調用編程人員利用系統調用,在源程序一級動態請求和釋放系統資源,調用系統中已有的系統功能來完成那些與機器硬件部分相關的工作以及控制程序的執行速度等。因此,系統調用像一個黑箱子那樣,對用戶屏蔽了操作系統的具體動作而只提供有關的功能。3.系統調用系統調用的定義允許用戶在程序中調用操作系統所提供的一些子功能是特殊的功能調用,由特殊的機器指令實現通過訪管指令或軟中斷方式中斷現行程序,轉去執行相應的子程序,完成特定的系統功能系統調用程序是一個低級過程,只能由匯編語言直接訪問,直接調用。系統調用就是由操作系統代替用戶完成某些特定任務的子過程。因此,擴充了機器指令,增加了系統功能,方便了用戶使用。系統調用舉例程序中:open打開文件
creat創建文件
exit進程終止(程序序結束)
close關閉文件3.系統調用系統調用是通過訪管指令實現的在程序中,如果希望請求操作系統的服務(例,打開一個文件,顯示某個目錄的內容等),就要執行一條訪管指令(trap、int),系統處理這個中斷,即為用戶提供相應的服務(或者稱響應用戶的請求)。PDP-11系統計算機的UNIX系統:TRAPN微機windows95/98/NT,MS-DOS:INTNN:為地址碼注意:在匯編程序中是顯式地使用訪管中斷命令,trap、INT。而在高級語言中(C語言)是隱式使用訪管指令。系統調用的類型凡是涉及操作系統核心管理資源的操作必須由系統調用實現。系統調用的類型有:設備管理類文件管理類:如open()、close()進程控制類:如fork()、wait()進程通信類存儲管理類維護管理類不同的操作系統提供不同的系統調用。通常,每個系統都有幾十到幾百條系統調用系統調用越多,功能就越強,使用更加靈活系統調用的實現不同的操作系統,系統調用實現的具體方法有所不同,但其實質的特點是相同的:每個系統調用對應一個系統調用號;每個系統調用有一個對應的執行程序段;每個系統調用要求一定數量的輸入參數和返回值;整個系統有一個系統調用執行程序入口地址表;系統調用的實現在陷入中斷發生時,從用戶態->核心態。這一轉換在發生訪管中斷時由硬件自動實現。系統調用語句本身是硬件提供的(機器指令),但其所調用的功能是操作系統提供的。每種機器的機器指令集中都有一條系統調用指令系統調用的實現圖2.7系統調用的處理過程系統調用的實現使用步驟系統調用所需參數及其首地址送到規定的通用寄存器設置一條調用指令(訪管指令或軟中斷指令)執行過程保護用戶程序的現場執行相應功能:根據系統調用提供的功能號,訪問系統功能入口地址表,得到相應功能的人口地址,然后轉去執行返回處理:在系統調用處理結束之后,還要恢復處理器現場。在操作系統中,處理器的現場一般被保護在特定的內存區或寄存器中系統調用的實現參數傳遞目的:實現用戶程序和系統程序間的參數傳遞常用實現方法:由陷入指令自帶參數:陷入指令的長度有限的,且還要攜帶系統調用功能號,只能自帶有限的參數通過有關通用寄存器來傳遞參數:這些寄存器應是系統程序和用戶程序都能訪問,由于寄存器長度較短,無法傳遞較多的參數更為常見的是在內存中開辟專用堆棧區來傳遞參數UNIX系統調用實現UNIX系統調用的使用
在UNIX系統中系統調用是自陷的一種。例如,某用戶程序要求打開一個文件:匯編語言程序中:trap5C語言程序中:open(“文件路徑名,mode)UNIX系統調用實現自陷指令(trap)trap處理程序是UNIX系統的自陷處理程序,負責處理所有的自陷(來自處理機內部的中斷),其中包括系統調用的處理。系統調用的處理過程:把要求的參數傳送到指
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 長沙衛生職業學院《財會商圈實訓》2023-2024學年第二學期期末試卷
- 泰州學院《產能成本決策虛擬仿真實驗》2023-2024學年第二學期期末試卷
- 天津廣播影視職業學院《數理統計方法》2023-2024學年第一學期期末試卷
- 河北工業大學《樂理視唱》2023-2024學年第一學期期末試卷
- 吉林醫藥學院《食品工藝學實驗》2023-2024學年第二學期期末試卷
- 工廠電照工程合同
- 手機配件購銷合同
- 土地租賃合同補充協議書
- 廠房物業財產移交合同
- 學校專家聘用合同協議書
- 四川省瀘州市龍馬潭區2022-2023學年六年級下學期期末考試語文試卷
- 睡眠中心管理系統技術要求
- MOOC 信息檢索-西南交通大學 中國大學慕課答案
- GB/T 43731-2024生物樣本庫中生物樣本處理方法的確認和驗證通用要求
- 飛機知識科普兒童課件
- 信息化運維服務服務質量保障方案
- 2023年魯迅美術學院附屬中學(魯美附中)中考招生語文數學英語試卷
- 《食品營養與衛生學》課程標準
- 電氣設備與線路的安裝與調試
- 酒店前廳部溝通技巧
- 達利《記憶的永恒》課件
評論
0/150
提交評論