Linux IO系統 基本知識

2022-06-28 10:57:14 字數 2000 閱讀 2026

注:本文件主要整理了linux下io系統的基本知識,是整理的網易雲課堂的學習筆記,老師講得很不錯,鏈結如下:linux io系統

1.linux作業系統的基本構成

核心:作業系統的核心,負責管理系統的程序、記憶體、裝置驅動程式、檔案和網路系統;控制系統和硬體之間的相互通訊;決定著系統的效能和穩定性。

shell:提供給使用者介面的軟體。

檔案系統、應用程式

1.1 基本術語

1.檔案和檔案系統

檔案:資料或裝置的一種邏輯組織;

檔案系統:檔案間關係管理的一種邏輯組織。

2.程式和程序

程式:計算機執行的指令集合;

程序:程式的乙個執行例項,作業系統資源分配的最小單位。

3.執行緒(輕量級程序)

程式執行的基本單位,乙個程序內部可以有乙個或若干執行緒同時執行。

4.訊號

linux系統中程序通訊的一種技術,非同步程式設計的基礎。

5.客戶端和伺服器

2 啟動流程

晶元和部分外圍電路的初始化

載入核心

載入最小檔案系統

載入硬碟上的根檔案系統

啟動1號程序/sbin/init

bootloader:就是在作業系統核心執行之前執行的一段小程式,主要功能有:初始化硬體裝置、建立記憶體空間的對映圖,從而將系統的軟硬體環境帶到乙個合適的狀態,以便為最終呼叫作業系統核心準備好正確的環境。它是嚴重依賴於硬體,在嵌入式開發中建立乙個通用的bootloader幾乎是不可能的。在linux中稱為grub。

3記憶體管理

3.1 功能

1.程序隔離

保護獨立的程序,防止互相的干涉資料和儲存空間。

2.自動分配和管理

動態的分配,分配對管理員是透明的。

3.支援模組化的程式設計

能夠定義程式模組,並且動態的建立、銷毀模組,改變模組大小。

4.保護和訪問控制

允許一部分記憶體可以由各種使用者以各種方式進行訪問。

5.長期儲存

關電後長時間保護資訊

虛擬定址:

3.2 記憶體管理

3.2.1段頁式記憶體管理

(1)程序在虛擬記憶體中分為**段、資料段和堆疊段;

(2)程序在段中有許多固定大小的塊組成,這些塊稱為頁;

(3)虛擬位址由段號、頁號和頁中偏移量構成;

(4)虛位址和儲存中實位址(實體地址)的動態對映(以頁為單位,一般為4kb);

(5)缺頁:消除了程序全部載入記憶體中、按需調頁。

4.系統呼叫

系統呼叫是指作業系統提供給使用者程式的一組"特殊"介面,使用者程式可以通過這組介面來獲

得作業系統核心提供的特殊服務。

5. linux程序的執行狀態

核心態:程序執行在核心空間;

執行態:程序執行在使用者空間。

6. unix標準

(1)iso c(標準c)

(2)ieee posix:在linux中使用者程式設計介面(api)遵循了unix最流行的應用程式設計介面標準posix標準,這些系統呼叫程式設計介面主要通過c庫(libc)實現的。

作業系統基本知識

1 因為系統資源不足。2 程序執行推進的順序不合適。3 資源分配不當等。如果系統資源充足,程序的資源請求都能夠得到滿足,死鎖出現的可能性就很低,否則就會因爭奪有限的資源而陷入死鎖。其次,程序執行推進順序與速度不同,也可能產生死鎖。1 互斥條件 乙個資源每次只能被乙個程序使用。2 請求與保持條件 乙個...

MAC系統的基本知識

作業系統是執行在計算機硬體裝置之上,應用軟體執行在作業系統之上 應用軟體的本質 1.按照順序呼叫介面 2.應用軟體是執行在作業系統上面的乙個軟體 作業系統的作用 1.管理 用來管理計算機的硬體裝置 2.協調 協調計算機硬體之間和諧工作 3.提供介面 因為我們用01操作硬體很不方便,作業系統提供給人 ...

作業系統基本知識

1 併發 併發指同一時間內同時執行多個程式 並行指同一時間內同時執行多條指令 並行需要硬體支援比如 流水線,多核處理器,分布式作業系統 併發作業系統通過引入程序和執行緒,從而實現併發 2 共享 共享是指系統中的資源可以被多個併發程序共同使用。有兩種共享方式 互斥共享和同時共享。互斥共享的資源稱為臨界...