《計算機作業系統》總結(一) 作業系統簡介

2022-06-07 04:36:10 字數 2851 閱讀 2525

計算機系統自下而上可以粗略分為四個部分:硬體、作業系統、應用程式、使用者。

作業系統是計算機系統資源的管理者。

作業系統管理各種計算機硬體,為應用程式提供基礎,並充當計算機硬體系統與使用者之間的介面。

作業系統是指控制和管理整個計算機系統的硬體和軟體資源,並合理地組織排程計算機的工作和資源的分配,以提供給使用者和其他軟體方便的介面和環境的程式集合。

裸機:沒有任何軟體支援的計算機。

擴充機器(虛擬機器):覆蓋了軟體的機器。

分時技術:把處理器的執行時間分成很短的時間片,按時間片輪流把處理器分配給各聯機作業使用。

分時系統:是指實現人機互動的系統。

分時作業系統:是使一台計算機採用時間片輪轉的方式同時為幾個、幾十個甚至上百各使用者服務的一種作業系統。分時作業系統將系統處理機時間與記憶體空間按一定的時間間隔,輪流地切換給各終端使用者的程式使用。由於時間間隔很短,每個使用者的感覺就像他獨佔計算機一樣。分時作業系統的特點是:可以有效增加資源的使用率。

實時作業系統:為了能在某個時間限制內完成某些緊急而不需時間片排隊,誕生了實時作業系統(實時作業系統的特點:及時性、可靠性)。

多道批處理:是指實現作業自動控制而無需人工干預的系統。

特權指令:是指計算機中不允許使用者直接使用的指令,如i/o指令、置中斷指令等。

核心:是指計算機上配置的底層軟體,是計算機功能的延伸。

作業系統核心工作在核心態,而使用者程式工作在使用者態。

在計算機作業系統中,通常cpu執行兩種不同性質的程式:作業系統核心程式、使用者自編程式或系統外層的應用程式。

作業系統的各項功能分別被設定在不同的層次上。一些與硬體關聯較密切的模組,例如:時鐘管理、中斷管理、裝置驅動等處於最底層;其次是執行頻率較高的程式,例如:程序管理、儲存器管理、裝置管理等;這兩部分內容構成了作業系統的核心。

併發:併發是指兩個或多個事件在同一時間間隔內發生。作業系統的併發性是指計算機作業系統中同時存在多個執行著的程式,因此它具有處理和排程多個程式同時執行的能力。在作業系統中引入程序的目的是使系統能併發執行。作業系統的併發性是通過分時得以實現的。

共享:資源共享即共享,是指系統中的資源可供記憶體中多個併發執行的程序共同使用。互斥共享方式——僅當程序a訪問完並釋放該資源後,才允許另乙個程序對該資源進行訪問。把在一段時間內只允許乙個程序訪問的資源稱為臨界資源或獨佔資源。同時訪問方式——系統中有另一類資源,允許在一段時間內由多個程序「同時」對它們進行訪問。這裡所謂的「同時」往往是巨集觀上的,而微觀上,這些程序可能是交替地對該資源進行訪問,即「分時共享」。

虛擬:是指把乙個物理上的實體變成若干個邏輯上的對應物。作業系統中利用了多種虛擬技術,分別用來實現虛擬處理器、虛擬記憶體、虛擬外部裝置等。虛擬處理器——是通過多道程式設計技術,把乙個物理上的cpu虛擬為多個邏輯上的cpu。虛擬儲存技術——將一台機器的物理儲存器變為虛擬儲存器,以便從邏輯上來擴充儲存器的容量。虛擬裝置技術——將一台物理i/o裝置虛擬為多台邏輯上的i/o裝置,並允許每個使用者占用乙個邏輯上的i/o裝置,變為在一段時間內允許多個使用者同時訪問的共享裝置。

非同步:在多道程式環境下,允許多個程式併發執行,但由於資源有限,程序的執行不是一貫到底,而是走走停停,以不可預知的速度向前推進,這就是程序的非同步性。

**併發和共享是作業系統兩個最基本的特徵,這兩者是互為存在條件。資源的共享是以程式的併發為條件的,若系統不允許程式併發執行,則自然不存在資源共享問題;若系統不能對資源共享實施有效的管理,也必將影響程式的併發執行,甚至根本無法併發執行。**

作業系統的功能包括:處理機管理、儲存器管理、裝置管理、檔案管理、使用者介面……

處理機管理:在多道程式環境下,處理機的分配和執行都以程序為基本單位,因而對處理機的管理可以歸納為對程序的管理。併發時,在計算機內同時執行多個程序,所以,程序何時建立、撤銷、如何管理、如何避免衝突、合理共享是程序管理的最主要的任務。程序管理的主要功能有:程序控制、程序同步、程序通訊、死鎖處理、處理機排程等。

裝置管理:主要任務是:完成使用者的i/o請求、方便使用者使用各種裝置、並提高裝置利用率等。

檔案管理:計算機中的資訊都是以檔案的形式存在的,作業系統中負責檔案管理的部分稱為檔案系統。檔案管理包括:檔案儲存空間的管理、目錄管理、檔案讀寫管理和保護等。

聯機命令介面(互動式命令介面):適用於分時或實時系統的介面,由一組鍵盤操作命令組成。使用者通過控制台或終端輸入操作命令。

離線命令介面(批處理命令介面):適用於批處理系統,它由一組作業控制命令組成。離線使用者不能直接干預作業的執行。

程式介面由一組系統呼叫命令組成,使用者通過在程式中使用這些系統呼叫命令來請求作業系統為其提供服務。「最為流行的是圖形使用者介面」,即圖形介面:使用者通過滑鼠和鍵盤,在圖形介面上單擊或使用按鍵就能很方便地使用作業系統。

核心包括如下四個方面:

時鐘管理:作業系統需要通過時鐘管理,向使用者提供標準的系統時間;通過時鐘中斷的管理,可以實現程序的切換。

中斷機制:初衷是提高多道程式執行環境中cpu的利用率,而且主要針對外部裝置。例如:鍵盤或滑鼠的資訊輸入、程序的管理和排程、系統功能的呼叫、裝置驅動、檔案訪問等,無不依賴於中斷機制,可以說,現代作業系統是靠中斷驅動的軟體。

原語:處於作業系統的最底層,是最接近硬體的部分、程式的執行具有原子性(即操作只能一氣呵成)、程式的執行時間都較短、而且呼叫頻繁…具有以上這些特點的程式稱為原語。系統中的裝置驅動、cpu切換、程序通訊等功能中的部分操作都可以定義為原語。

系統控制的資料結構及處理。

系統呼叫按功能分類:

裝置管理:完成裝置的請求或釋放、以及裝置啟動等功能。

檔案管理:完成檔案的讀、寫、建立及刪除等功能。

程序管理:完成程序的建立、撤銷、阻塞及喚醒等功能。

程序通訊:完成程序之間的資訊傳遞或訊號傳遞等功能。

記憶體管理:完成記憶體的分配、**以及獲取作業占用記憶體大小及始址等功能。

計算機作業系統 作業系統概述

最近在學習計算機作業系統,記錄一些筆記在部落格上,以供再次學習 1.計算機硬體 軟體資源的管理者 2.使用者使用計算機硬體 軟體的介面 提高計算機資源利用率和系統效能 方便使用者,人機互動 物理器件發展 cpu的位寬度 快速外存 光器件等,以及計算機體系結構的不斷發展。1.多個使用者分時 單個使用者...

計算機作業系統

為什麼要有作業系統 計算機系統是乙個複雜的系統,如果每位程式設計師在程式設計時都必須掌握計算機系統的所有細節,就會嚴重影響程式設計師的開發效率 作業系統可以對計算機硬體加以管理和優化使用,為使用者程式提供更好的執行環境。作業系統以及其位置 作業系統組成 作業系統功能 應用程式直接與作業系統及其抽象打...

計算機作業系統

實驗一 熟悉linux作業系統 程序觀測 實驗目的 1 了解在linux作業系統中程序的特點和表現形式 2 掌握linux檢視程序的方式與方法 3 在乙個程序中建立另乙個程序的方法 4 掌握父程序和子程序的關係和fork的用法 實驗內容 1 編寫乙個簡單的程式,使用ps或top工具觀察該程序的的id...