作業系統基礎

2022-06-12 14:21:17 字數 1412 閱讀 7564

1.什麼是io 操作?

作業系統的作用 : 分配硬體資源,使應用程式使用硬體有序化

把不同的程式記憶體隔離開,用演算法分別排程cpu給程式使用

2.cpu工作效率:

希望目標 100%工作

cpu工作效率 50000條指令/ms

cpu工作 :做計算(對記憶體中的資料進行操作)的時候工作

cpu不工作: io操作的時候(讓作業系統呼叫硬體執行)

3.作業系統的歷史

多道作業系統

乙個程式io操作的時候就把cpu讓給別人

優點 : 整體上節省了時間  缺點:程式之間的切換浪費時間

分時作業系統 :  把時間分成時間片,每個程式輪流執行乙個時間片,時間片的輪轉

優點:提高了使用者體驗 缺點 :並沒有提高cpu的效率

實時系統 :多用於飛機,飛彈

實時資訊處理系統 :多用於外匯實時變化

優點 : 及時響應,高可靠性

網路作業系統 :增加了一些網路處理模組

分布式作業系統 : 處理大批量資料,把大任務拆分成小任務

python中有celery框架處理分布式

4.程序: 進行中的程式就是程序,可以通過任務管理器檢視當前程序

程序是計算機中最小的資源分配單位 ****** (記住這句話)

程序在啟動之後,關閉之前,會獲得唯一標識pid,隨機分配的

5.執行緒: 必須存在在程序中,不能脫離程序存在,負責執行程式,可以多執行緒

執行緒是能被作業系統分配給cpu執行的最小單位 *******

6.併發 , 並行 ,同步,非同步,阻塞,非阻塞的概念

併發: 假如只有乙個cpu , 多個程式輪流在cpu上執行(多道作業系統)

巨集觀上(你看到的): 多個程式同時執行,(肉眼察覺不到程式的切換)

微觀上: 多個程式在乙個cpu上輪流執行,切換速度特別快

並行 :(多cpu,多核)多個程式在多個cpu上同時執行

同步 : 在做a事件的時候發起b事件,必須等待b事件結束之後才能繼續a事件

eg: 主程式呼叫了乙個函式,主程式要獲取函式返回值才能繼續執行,這時就必須等函式執行完

非同步: 在做a事件的時候發起b事件,不需要等b事件結束,可以繼續a事件

eg: 主程序 開啟了多個子程序 ,不需要等子程序結束,主程序繼續執行

阻塞 : cpu不工作  input accpt sleep recv recvfrom 等都會把cpu讓出去,造成阻塞

非阻塞:cpu工作

7.程序 三狀態圖 

8. 作業系統排程演算法:多級反饋演算法

作業系統基礎

乙個計算機系統主要包括處理器 記憶體 硬碟 鍵盤 滑鼠等輸入輸出裝置。但是硬體的操作十分複雜繁瑣,程式設計師無法全部掌握,因此需要使用作業系統處理這些硬體。作業系統位於計算機硬體和應用軟體之間,本質是乙個軟體。它有作業系統的核心以及系統呼叫兩部分構成。核心 執行於核心態,管理硬體資源 系統呼叫 執行...

作業系統基礎

作業系統 當系統執行起來時,記憶體首先載入bios,完成加電自檢 檢測有哪些裝置可用 然後載入作業系統核心,剩下的記憶體用來分配給其他應用程式的。這裡有乙個問題,比如乙個應用程式啟動需要2mb,過一會需要載入一些東西,又需要2mb,然後又重新申請空間,而這兩部分記憶體是不連續的,這就造成了碎片 sh...

作業系統基礎

1.作業系統的概念 功能和目標 2.作業系統的特徵 3.作業系統的發展和分類 4.作業系統的執行機制與體系結構 5.中斷和異常 6.系統呼叫 7.程序的定義 組成 組織方式 特徵 8.程序的狀態與轉換 9.程序控制 10.程序通訊 11.執行緒概念和多執行緒模型 12.處理機排程的概念 層次 13....