計算機作業系統第四版第一章知識點歸納總結
第一章、作業系統引論
一、作業系統基礎
1、作業系統的定義:作業系統(Operating System, OS)是指控制和管理整個計算機系統的硬體和軟體資源,併合理的組織排程計算機的工作和資源的分配,以提供給使用者和其他軟體方便的介面和環境的程式集合。2、作業系統的目標: 方便、有效(提高系統資源的利用率,提高系統的吞吐量)、可擴充(模組化,層次化,微核心)、開放3、作業系統的作用:做使用者和計算機硬體系統之間的介面(命令,系統呼叫,圖示-視窗),管理資源(處理機,儲存器,I/O裝置,檔案),資源的抽象4、作業系統發展動力:提高利用率、更加方便、應用需求/體系結構/硬體不斷髮展二 計算機發展史
1、無作業系統:人工操作三、作業系統的基本特徵
1、併發
a、併發和並行巨集觀上一樣併發:兩個或多個事件在同一時間間隔內發生。單處理機系統,微觀上交替執行並行:兩個或多個事件在同一時刻2、共享
概念:系統中資源可供記憶體中多個併發執行的程序共同使用。a.互斥共享方式描述:提出申請,資源空閒使用,不然等待例子:印表機、磁帶機等臨界資源(同一時間只允許一個程序訪問)b.同時訪問方式描述:允許多個程序“同時”訪問,微觀還是交替進行例子:磁碟裝置共享以程序的併發為條件,系統不能對共享有效管理,影響程序的併發
3、虛擬
概念:通過某種技術讓一個物理實體變成若干邏輯上的對應物的功能。(虛擬處理機,虛擬記憶體,虛擬外部裝置,虛擬通道)(多重影分身之術)
a.時分複用技術描述:利用某裝置為一使用者服務的空閒時間,為其他使用者服務,使裝置得到最充分的利用
虛擬處理機技術:利用多道程式設計,每個程式至少一個程序,讓多道程式併發虛擬裝置技術:將I/O裝置虛擬為多臺邏輯上的I/O裝置
平均速度<=1/Nb.空分複用技術描述:利用儲存器的空閒空間分割槽域存放和執行其他的多道程式,以此提高記憶體的利用率虛擬儲存技術:通過分時複用記憶體,100M的程式執行在30M記憶體中,各部分分時進入記憶體執行空間佔用<=1/N4、非同步描述:就是為了讓程序更好的併發,系統會分配程序的執行順序(走走停停)四、作業系統的主要功能
處理機管理,儲存器管理,I/O裝置管理,檔案管理,提供介面1、處理機管理
a.程序控制:為作業建立程序、撤銷已結束的程序,控制程序在執行中的狀態轉換
b.程序同步:為多個程序(含執行緒)的執行進行協調(程序互斥方式,程序同步方式)c.程序通訊:實現相互合作程序之間的資訊交換
d.排程:作業排程(從後備佇列選出作業,建立程序,插入就緒佇列)和程序排程(從程序的就緒佇列選出程序分配處理機,投入執行)
2、儲存器管理
記憶體分配和回收、記憶體保護、地址對映、記憶體擴充
a.記憶體分配:任務:分配空間,減少碎片記憶體,追加記憶體空間
實現:靜態分配,裝入記憶體時確定,不允許追加,不允許移動;動態分配,裝入記憶體時確定,可以追加和移動b.記憶體保護
任務:在自己空間執行,互不干擾;不允許使用者程式訪問作業系統的程式和資料,也不允許使用者程式轉移到非共享的其他使用者程式中執行記憶體保護機制:設定兩個界限暫存器(上界和下界),對每條指令要訪問的地址進行檢查,如果越界就停止該程式
c.地址對映任務:將地址空間中的邏輯地址轉為記憶體空間的實體地址。在硬體的支援下完成d.記憶體擴充任務:用虛擬儲存技術,從邏輯上擴充記憶體容量
記憶體擴充機制:
請求調入(裝入部分使用者程式和資料就能啟動程式,後續再將其他部分調入記憶體),置換(若記憶體不夠,將暫時不用的程式和資料調至硬碟)3、裝置管理
任務1:完成使用者程序提出的I/O請求,為使用者程序分配所需的I/O裝置,並完成指定的I/O操作任務2:提高CPU和I/O裝置的利用率,提高I/O速度,方便使用者使用I/O裝置
緩衝管理,裝置分配,裝置處理,虛擬裝置
a.緩衝管理作用:有效地緩和CPU和I/O裝置速度不匹配的矛盾,提高了CPU的利用率,進而提高系統吞吐量
手段:在記憶體中設定緩衝區,增加緩衝區容量緩衝區機制:單緩衝,雙緩衝(能實現雙向同時傳送資料),公用緩衝池(能供多個裝置同時使用)
b.裝置分配任務:根據使用者程序的I/O請求。系統現有資源情況以及按照某種裝置分配策略,為之分配所需的裝置
手段:系統中設定裝置控制表、控制器控制表等資料結構,用以記錄裝置及控制器等識別符號和狀態。根據這些表就能知道指定裝置是否可用,是否忙碌。針對不同的裝置型別採用不同的裝置分配方式。對獨佔裝置的分配還應考慮分配出去後系統是否安全。c.裝置處理
任務:用於實現CPU和裝置控制器之間的通訊(CPU向裝置控制器發出I/O命令,要求他完成指定的I/O操作;CPU接收從控制器發來的中斷請求,並給予迅速的響應和處理)處理過程:檢查I/O請求的合法性、裝置狀態是否空閒,讀取有關引數、設定裝置的工作方式,然後向裝置控制器發出I/O命令,啟動I/O裝置完成指定的I/O操作。
4、檔案管理任務:對使用者檔案和系統檔案進行管理以便使用者使用,並保證檔案的安全性
檔案儲存空間的管理,目錄管理,檔案的讀寫管理,檔案的共享和保護
a.檔案儲存空間的管理背景:多使用者環境,使用者自己管理檔案儲存,困難且低效
任務1:為每個檔案分配額外的外存空間,提高外存利用率,進而提高存取速度任務2:設定相應的資料結構,記錄檔案儲存空間使用情況,以供分配時參考
任務3:分配和回收儲存空間
b.目錄管理為了使使用者能方便地在外存上找到自己所需的檔案,通常由系統為每個檔案建立一個目錄項。目錄項包括檔名、檔案屬性、檔案在磁碟上的物理位置等。由若干個目錄項又可構成一個目錄檔案
任務1:為每個檔案建立一個目錄項,並對眾多的目錄項加以有效的組織,以實現方便的按名存取(即使用者只需提供檔名,就能對該檔案進行存取)任務2:實現檔案共享,只需在外存保留一份該共享檔案的副本
任務3:提供快速的目錄查詢手段,以提高對檔案的檢索速度c.檔案讀寫管理
任務:根據使用者的請求,從外存讀取資料或將資料寫入外存過程:根據檔名檢索檔案目錄獲得外存地址,利用讀寫指標對檔案進行讀寫,然後修改讀寫指標,等待下一次讀寫。讀寫不會同時進行,所以共用一個指標
d.檔案保護1.防止未經核准的使用者存取檔案
2.防止冒名頂替存取檔案3.防止以不正確的方式使用檔案5、作業系統與使用者間的介面a.使用者介面描述:方便使用者直接或間接地控制自己的作業
1、聯機使用者介面:由一組鍵盤操作命令及命令解釋程式組成。使用者通過先後鍵入不同的命令來實現對作業的控制。2、離線使用者介面:為批處理作業的使用者提供,由作業控制語言JCL組成。使用者把對作業進行控制和干預的命令寫在作業說明書中,和作業一起提供給系統。呼叫命令解釋程式按照說明書執行,遇到作業結束語句停止。3、圖形使用者介面:把各項功能、應用等封裝成圖示,選種圖示即可執行相應操作。
b.程式介面:描述:為使用者程式在執行中訪問系統資源而設定,是使用者取得作業系統服務的唯一途徑。它是由一組系統呼叫組成,每一個系統呼叫都是一個能完成特定功能的子程式,每當應用程式要求OS提供某種功能時,便呼叫具有相應功能的系統呼叫
第二章 程序的描述和控制
一、程序的基本概念程式有順序執行和併發執行順序執行:單道批處理系統,使用者獨佔資源併發執行:多道程式系統,多道程式併發執行,共享資源,引入程序的概念1、程式的順序執行及其特徵
僅當前一操作(程式段)執行完後,才能執行後繼操作。S1: a∶=x+y; S2: b∶=a-5; S3: c∶=b+1;