1 作業系統概述

2021-10-13 09:41:11 字數 3537 閱讀 8074

1.1.4類別

1.1.5os kernel的特徵

1.2為什麼學習系統

1.3如何學習作業系統

1.4作業系統例項

1.5作業系統的歷史

1.6作業系統結構

作業系統(operation system,簡稱os)是管理計算機硬體與軟體資源的電腦程式。作業系統需要處理如管理與配置記憶體、決定系統資源供需的優先次序、控制輸入裝置與輸出裝置、操作網路與管理檔案系統等基本事務。

作業系統是乙個可以管理cpu、記憶體和各種外設,並管理和服務應用軟體的軟體

程式管理、資源管理、裝置管理、檔案管理cpu

每個 cpu 都有一組可以執行的特定指令集。因此,x86 的 cpu 不能執行 arm 的程式並且 arm 的 cpu 也不能執行 x86 的程式。由於訪問記憶體獲取執行或資料要比執行指令花費的時間長,因此所有的 cpu 內部都會包含一些暫存器來儲存關鍵變數和臨時結果。

記憶體多執行緒不會提供真正的並行處理。在乙個時刻只有乙個程序在執行。

儲存器系統採用一種分層次的結構,頂層的儲存器速度最高,但是容量最小,成本非常高,層級結構越向下,其訪問效率越慢,容量越大,但是造價也就越便宜。

儲存器的頂層是 cpu 中的暫存器,訪問時間最短,但是容量最小。

位於暫存器下面的是快取記憶體,主存被分割成快取記憶體行(cache lines)為64位元組,使用最頻繁的快取記憶體行儲存在位於 cpu 內部或非常靠近 cpu 的快取記憶體中。

隨機儲存器(ram):記憶體中最重要的一種,也叫主存,是與cpu直接交換資料的內部儲存器。它可以隨時讀寫(重新整理時除外),而且速度很快,通常作為作業系統或其他正在執行中的程式的臨時資料儲存介質。ram工作時可以隨時從任何乙個指定的位址寫入(存入)或讀出(取出)資訊。它與rom的最大區別是資料的易失性,即一旦斷電所儲存的資料將隨之丟失。ram在計算機和數字系統中用來暫時儲存程式、資料和中間結果。

現代 cpu 設計了兩種快取。第一級快取或者說是 l1 cache 總是位於 cpu 內部,用來將已解碼的指令調入 cpu 的執行引擎。對於那些頻繁使用的關鍵字,多數晶元有第二個 l1 cache 。典型的 l1 cache 的大小為 16 kb。另外,往往還設有二級快取,也就是 l2 cache,用來存放最近使用過的關鍵字,一般是兆位元組為單位。l1 cache 和 l2 cache 最大的不同在於是否存在延遲。訪問 l1 cache 沒有任何的延遲,然而訪問 l2 cache 會有 1 - 2 個時鐘週期的延後。

在上面的層次結構中再下一層是主存,這是記憶體系統的主力軍,主存通常叫做 ram(random access memory)

除了主存之外,許多計算機還具有少量的非易失性隨機訪問儲存器。它們與 ram 不同,在電源斷電後,非易失性隨機訪問儲存器並不會丟失內容。rom(read only memory) 中的內容一旦儲存後就不會再被修改。它非常快而且便宜。

rom (read only memory):唯讀儲存器是一種半導體儲存器,其特性是一旦儲存資料就無法改變或刪除,且內容不會因為電源關閉而消失。在電子或電腦系統中,通常用以儲存不需經常變更的程式或資料。

下乙個層次是磁碟(硬碟)

固態硬碟(solid state disk, ssd)不是磁碟

外設任何複雜的東西都可以加一層**來解決,這是計算機或者人類社會很普世的乙個解決方案

每種型別的裝置控制器都是不同的,所以需要不同的軟體進行控制。專門與控制器進行資訊交流,發出命令處理指令接收響應的軟體,稱為 裝置驅動程式(device driver)。

作業系統位於應用軟體之下,為應用軟體提供服務支援。

面向外部稱為:shell(外殼)(如gui、命令列)

面向內部稱為:kernel(核心)

kernel是研究重心,位於外殼之下。

1.1.4.1kernel–作業系統內部元件

主要包括:

cpu排程器

物理記憶體管理

虛擬記憶體管理

檔案系統管理

中斷管理與裝置驅動

1.併發

計算機系統中同時存在多個執行的程式,需要os管理和排程

併發與並行的區別

併發:一段時間,多個程式同時執行

並行:乙個時間點

2.共享

「同時」訪問

互斥共享

同時共享

3.虛擬

利用多道程式設計技術,讓每個使用者都覺得有乙個計算機專門為他服務

4.非同步

程式的執行不是一貫到底的,而是走走停停,向前推進的速度不可預知,但只要執行環境相同,os需要保證程式執行的結果也相同

*程式語言

*資料結構

*演算法*計算機體系結構

*材料*作業系統概念和原理,源**

*技能*作業系統的設計和實現

1.2.2.1需求

作業系統在不停發展中,在工控等領域有強烈的需求

作業系統**必須可靠、高效

作業系統出錯,所造成的損失很大

作業系統是系統安全的基礎

1.2.2.2作用

作業系統很酷,很有用,很有挑戰,能力提公升

挑戰性:

**量大,目標是要掌握核心

作業系統管理併發

作業系統**管理的是硬體

良好的硬體管理

合理的資源分配

了解工作原理

作業系統需要權衡:

空間與時間

效能和可**性

公平和效能

1.2.2.3重要性

電腦科學研究的基石之一

計算機系統的基本組成部分

由硬體的發展和應用需求所驅動

1.2.2.4學術和工業的持續推進

頂級會議:

sosp

usenix

了解概念與原理

實踐:閱讀**

具體取決於自己的需要

windows家族

具體應用:分析氣象、工控領域等系統

持續的發展:

電晶體、cpu、硬體、外設、網路的研發和發展

早期計算機使用紙帶傳輸程式和資料,作業系統只起到載入的作用

由順序處理到多程式處理

為了更好地利用計算機資源,並更好的與使用者進行互動,出現了分時系統

個人電腦作業系統的出現

多核多處理

雲端操作

主機性運算–>個人機計算–>網路計算–>普適計算(雲計算、移動計算)

(1)簡單的作業系統:ms-dos 不分模組的單體核心 (內部通過函式呼叫訪問,缺點,複雜,緊耦合,易受攻擊)

(2)微核心:盡可能把核心功能移植到使用者空間,缺點效能低。

(3)外核,核心分為一塊,一塊負責和硬體打交道,另一部分和應用打交道。

(4)虛擬機器

vms(虛擬機器)->vmm(虛擬機器監視器)->物理機硬體,多作業系統共享硬體資源

vmm(虛擬機器監控器),也稱為管理程式,虛擬出所有的硬體資源。

作業系統概述(1)

1 作業系統的概念 作業系統 operating system,簡稱os 是管理和控制計算機硬體與軟體資源的電腦程式,是直接執行在 裸機 上的最基本的系統軟體,任何其他軟體都必須在作業系統的支援下才能執行。作業系統是使用者和計算機的介面,同時也是計算機硬體和其他軟體的介面。作業系統的功能包括管理計算...

作業系統(1) 概述

碼文不易,希望支援,謝謝 支援原創 作業系統作業系統 英語 operating system,縮寫 os 是管理計算機硬體與軟體資源的電腦程式,同時也是計算機系統的核心與基石。作業系統 維基百科 簡單來說,為使用者使用計算機提供介面,有效的組織管理硬體軟體資源。基本觀點 碼文不易,希望支援,謝謝 支...

作業系統概述 1

1.單處理機系統中,可並行的是 程序與程序 處理機與裝置 處理機與通道 裝置與裝置 解析 此處要理解並行的概念 並行性 是指兩個或兩個以上的事件在同一時刻執行。併發性 是指兩個或兩個以上的事件在同一時間間隔執行。對於單處理機,2個程序之間只能併發,而不能並行。2.下列選項中,作業系統提供給應用程式的...