作業系統的使用者介面

2023-01-16 22:12:04 字數 5158 閱讀 4846

概述 os是計算機的資源管理器和使用者介面;

使用者一般是通過使用os來使用計算機的;

os的使用者介面負責接收使用者向os提出的服務請求,傳遞有關資訊,並將服務的結果返回給使用者;

os使用者介面主要有兩類:聯機命令介面(有命令列介面和圖形介面兩種形式),程式介面(主要是系統呼叫)。

另外,在internet中還有一種網路使用者介面。

第1節聯機命令介面

一、什麼是聯機命令介面

是使用者從鍵盤上輸入的os命令。通過輸入鍵盤命令,使用者可以直接取得os的服務,控制自己的程式執行;

os的聯機命令介面包括:一組聯機命令、命令解釋程式(命令直譯器)和終端處理程式;

聯機命令介面的工作過程:

(1) 使用者在終端上(通過鍵盤)輸入所需命令;

(2) 終端處理程式接收該命令,並在螢幕上顯示(回顯)命令;

(3) 一條命令輸入完畢,由命令解釋程式對命令進行分析,然後啟動對應的命令處理程式執行,完成任務。

二、聯機命令

1、為了能向使用者提供多方面的服務,通常,os都向使用者提供了幾十條甚至上百條的聯機命令。這批命令分為內部命令和外部命令兩類。另外,使用者建立的每個可執行程式也是一條聯機命令(外部命令)。

根據這些命令所完成功能的不同,可把它們分成以下幾類:① 系統訪問類;② 磁碟操作類; ③ 檔案操作類;④ 目錄操作類;⑤ 通訊類; ⑥ 其他命令。

2、各類命令舉例

系統訪問類:

login;使用者註冊命令

磁碟操作命令:

diskcopy;整盤複製命令

format;磁碟格式化命令

diskcomp;軟盤比較命令

backup,restore;硬碟備份與恢復命令

檔案操作命令:

type;檔案內容顯示命令

copy;檔案複製命令

comp;檔案比較命令

rename;檔案重新命名命令

erase, dele;檔案刪除命令

關於檔名中的*和?的意義。

目錄操作命令:

mkdir,md;建立乙個子目錄

dir;顯示目錄表的內容

rmdir,rd;刪除子目錄

tree;顯示目錄結構

chdir,cd;更改當前工作目錄

其它命令

i/o重定向命令:在有的os中定義了兩個標準i/o裝置。通常,命令的輸入取自標準輸入裝置,即鍵盤;而命令的輸出通常是送往標準輸出裝置, 即顯示終端。

如果在命令中設定輸出重定向「>」符,其後接檔名或裝置名,表示將命令的輸出改向,送到指定檔案或裝置上。類似地,若在命令中設定輸入重定向「<」符,則不再是從鍵盤而是從重定向符左邊引數所指定的檔案或裝置上,取得輸入資訊。

管道連線命令:這是指把第一條命令的輸出資訊作為第二條命令的輸入資訊;類似地,又可把第二條命令的輸出資訊作為第三條命令的輸入資訊。這樣,由兩個(含兩條)以上的命令可形成一條管道。

在ms-dos和unix中,都用「|」作為管道符號。其一般格式為:

command1 |command2| … | commandn;

批處理命令:利用一組聯機命令構成乙個命令程式,能夠一次建立多次使用。該程式的內容儲存在文字檔案中。

在ms-dos中這種特殊的文字檔案,其字尾名為「.bat」;在unix系統中稱其為命令檔案。

三、鍵盤終端處理程式

1、在聯機終端上,為實現人機互動,系統必須能讓鍵盤上的輸入和螢幕上的顯示及時、同步。為此,必須配備鍵盤終端處理程式,實現:接收鍵盤上輸入的字元(入主機)、回送顯示、字元緩衝、螢幕編輯、特殊字元處理等功能。

具體說明如下:

2、字元接收功能--接收從鍵盤上輸入的字元,並將它傳送給使用者程式。----p288

面向字元方式的

面向行方式

3、字元緩衝功能--暫存從鍵盤上輸入的字元。 ----p288-289

專用緩衝方式

公用緩衝方式

圖9-1 兩種緩衝方式

4、回送顯示功能

回送顯示(回顯)是指每當使用者從鍵盤輸入乙個字元後,終端處理程式便將該字元送往螢幕顯示。

由硬體實現回顯

由軟體實現回顯

5、螢幕編輯

提供若干個編輯鍵,實現對螢幕內容的編輯。常用編輯健有:

刪除字元鍵

刪除一行鍵

插入鍵移動游標鍵

螢幕向上滾動或向下滾動一行鍵

6、特殊字元處理

識別特殊的鍵盤字元,將其翻譯為其對應的控制命令。例如: ctrl+c鍵或break或delete鍵對應程式終止控制命令。

四、命令解釋程式

1、命令解釋程式的主要作用是:在螢幕上給出提示符,等待使用者鍵入命令;在使用者輸入命令結束後,識別命令;對於正確的命令,則轉到相應命令處理程式的入口位址,把控制權交給該處理程式去執行,並將處理結果送螢幕上顯示;若使用者鍵入的命令有錯,而命令解釋程式未能予以識別,或在執行中間出現問題時,則應顯示出某一出錯資訊。

2、典型的命令解釋程式有:

dos的的的shell等。

3、dos的命令解釋程式

組成: ----p290

工作流程: ----p291

4、shell解釋程式

比複雜處在於: ----p291

工作流程: ----p293

第2節圖形使用者介面

一、圖形使用者介面引入的原因 ----p279

二、wimp技術(包括對話方塊) ----p279-280

六、關於x-window

第3節系統呼叫(程式介面)

一、什麼是程式介面

1、程式介面就是os的系統呼叫。應用程式在執行時通過系統呼叫實現與os的通訊,申請得到os提供的服務。系統呼叫也可以被os本身的程式使用。

2、系統呼叫,對應著os核心的一組實現各種功能的子程式。使用者在程式中使用系統呼叫命令就是呼叫這些子程式。

二、系統呼叫的型別

1、程序控制類系統呼叫

建立和終止程序的系統呼叫

獲得和設定程序屬性的系統呼叫

等待某事件出現的系統呼叫

2、程序通訊類系統呼叫

訊息傳遞方式通訊

共享儲存區方式通訊

3、檔案操縱類系統呼叫

建立和刪除檔案

開啟和關閉檔案

讀和寫檔案

4、裝置管理類:實現裝置管理的功能。

三、系統呼叫的實現

1、程式執行時的兩種不同狀態----使用者態、系統態; ----p294

在使用系統呼叫時,呼叫程式一般執行在使用者態,而被呼叫的子程式,由於屬於os核心,所以執行在系統態。 ----p294

2、使用系統呼叫,通常是在使用者程式中執行os的程式段,這就要借助於「陷入」機制來完成執行狀態的轉換,陷入是一類中斷。

中斷和中斷向量的概念

中斷是指cpu對系統發生突發事件的一種響應:cpu暫停正在執行的程式,保護現場,然後自動轉去執行該事件的中斷處理程式;執行完後,再返回到被中斷程式的斷點處,恢復現場,繼續執行原程式。

中斷向量是指乙個中斷處理程式的入口位址和程式開始執行時的處理機狀態字。

系統能處理的每個中斷,都配有乙個中斷處理程式,相應的也有一對中斷向量。

中斷分為外中斷(由外設事件引起的中斷,如乙個列印任務結束)和內中斷(由cpu內部事件,尤其是執行指令引起的中斷,如除0操作)。內中斷也稱為「陷入」。其中系統呼叫處理就是一種陷入。

每個系統呼叫對應「系統呼叫陷入處理程式」的乙個子程式。

系統的所有中斷和所有陷入分別組織中斷向量表和陷入向量表。

3、系統呼叫的一般處理步驟----每當程式執行到乙個系統呼叫時:

系統產生「陷入」:處理機的狀態由使用者態轉入系統態;

保護現場;

查系統的陷入向量表,找到「系統呼叫陷入處理程式」的陷入向量;

執行「系統呼叫陷入處理程式」----分析系統呼叫型別,轉入對應的系統呼叫處理子程式執行;

恢復現場或建立新程序的cpu現場,繼續執行使用者程式。

4、系統呼叫的返回

(1) 非搶占式cpu排程下的返回;

(2) 搶占式cpu排程下的返回; ----p294

5、系統呼叫的巢狀:在系統呼叫子程式的內部,允許呼叫另乙個系統呼叫。但每個系統對巢狀的深度是有一定限制的。

第4節 unix/linux使用者介面

一、unix使用者介面簡介

1、unix系統在結構上分為兩部分:

外殼:各種語言的處理程式和其他系統實用程式、shell(命令解釋程式),使用者自編程式。

核心:實現作業系統各項管理功能的程式。

外殼與核心之間的介面是系統呼叫。

2、shell命令語言

shell是os的最外層,它包括一批聯機命令和shell命令解釋程式。在os的提示符下,使用者從鍵盤上輸入一條命令,就可以完成某項功能;(常用命令湯子瀛課件p28-p48)

shell也是一種程式語言,使用者可以用shell的命令組成命令序列,構成程式檔案(批處理命令)。

shell命令的格式:

《命令名》 [— 《選項表》] [ 《參數列》]

例如:ls file1 file2

gcc -o sy1 file1

3、unix的系統呼叫

常用系統呼叫 (湯子瀛課件p60-p80)

二、linux使用者介面簡介

1、聯機命令介面

linux的聯機命令介面有兩種形式:

圖形介面形式:提供wimp技術的命令操作。

命令列形式:shell,提供豐富的操作命令。如 ls ,目錄列表命令。

在桌面上:雙擊「終端」圖示,開啟終端視窗;在終端視窗中輸入需要執行的命令/選擇、執行選單命令。

2、gedit

是linux的乙個gnome桌面環境下的乙個純文字編輯器,也可以把它用來當成是乙個整合開發環境 (ide),它會根據不同的語言高亮顯現關鍵字和識別符號等。

利用gedit書寫源程式,注意儲存檔案是要加上副檔名 .c 。

3、gcc

linux系統下的gcc(gnu c compiler)是gnu推出的功能強大、效能優越的多平台編譯器,是gnu的代表作品之一。gcc是可以在多種硬體平台上編譯出可執行程式的超級編譯器,其執行效率與一般的編譯器相比平均效率要高20%~30%。

gcc編譯器能將c、c++語言源程式、組合語言程式和目標程式編譯、連線成可執行檔案,如果沒有給出可執行檔案的名字,gcc將生成乙個名為的檔案。

gcc最基本的用法是: gcc [options] [filenames]

其中options就是編譯器所需要的引數,filenames給出相關的原始檔名稱。

簡單的作業系統

系統組成 1 boll 2 頻寬 3 極限 4 mfi 5 vol。用法 01 boll大概能包含70 以上的交易資訊,對很多人作出交易的判斷,足夠了。02 股價大部分情況下都行進在boll裡。在boll裡,很容易判斷出k的形態。03 超出boll帶的狀況為極端狀況,為加速漲或加速跌。04 上破一般...

作業系統的啟動

實驗報告 哈爾濱工程大學 電腦科學與技術學院 一 實驗概述 1.實驗名稱 2.實驗目的 1 跟蹤除錯 eos 在 pc 機上從加電復位到成功啟動的全過程,了解作業系統的啟動過程。2 檢視eos啟動後的狀態和行為,理解作業系統啟動後的工作方式。3.實驗型別 驗證4.實驗內容 1 準備實驗 啟動os l...

DBS鑽機人機介面作業系統 DBS HMI標準 功能介紹

dbs 鑽機人機介面作業系統 dbs hmi標準 功能介紹 2008 目錄dbs 鑽機操作人機介面系統 dbs hmi標準 功能介紹 1 一 歡迎介面 1 二 作業系統的功能介紹 1 起下鑽操作 3 1.介面名稱 起下鑽操作 32.介面總體說明 3 3.介面描述 3 3.1狀態列 3 3.2操作部分...