作業系統知識點彙總

2021-10-06 06:37:46 字數 1152 閱讀 9098

1.2 狀態轉換

1.3 程序排程

1.4 中斷

1.5 程序併發

1.6 程序死鎖

1.7 程序的通訊方式

2 使用者態和核心態

3 批處理系統和分時系統

4 程式記憶體結構

程序是系統進行分配和排程的基本單位

程序=程式+資料+pcb

pcb:程序控制模組

執行緒減少系統管理的開銷,使併發更快

執行緒共享程序資源

建立和終止花費時間更少,執行緒切換開銷更小

運用了交換技術,在記憶體中暫時不能執行的程序轉移到外存,騰出空間讓可以執行的新程序進入記憶體

保護現場

更新pcb狀態

移動pcb到就緒或阻塞

排程新的程序

系統設定響應哪些中斷(linux32類),遇到中斷訊號後,系統儲存當前執行緒,通過中斷入口位址跳轉到中斷子程式,在執行完中斷後,再返回恢復現場,繼續執行。

某一時刻只允許乙個生產者或者消費者訪問快取

讀取可以同時進行,寫入必須使用互斥

採用i/o復用

使用臨界資源的**,不能被中斷

臨界區的互斥方法:

互斥條件

請求與保持條件

非剝奪條件

迴圈等待條件

預防死鎖

限制死鎖的條件,但會降低系統效率

避免死鎖

**當前資源分配是否會造成死鎖

檢測死鎖

實時檢測,出現死鎖,及時解決

管道無名管道:用於父子程序通訊

命名管道:允許無親緣關係的程序通訊

系統ipc

訊息佇列

訊號:用於通知某個事件已經傳送

共享記憶體:依靠互斥鎖,共用一塊記憶體

套接字socket

主要用於不同主機間的程序通訊

從使用者態到核心態的轉換叫模式切換,需要軟中斷,程序切換一定有模式切換

批處理系統:乙個程序長時間占用cpu

分時系統:乙個程序只能在乙個時間片內占用cpu

**段:存放程式的二進位制**

資料段:存放已經初始化的全域性變數

bss端:存放未初始化的全域性變數

堆區:new/malloc分配

檔案對映區:mmap分配或動態鏈結庫

棧區:區域性變數

系統核心

作業系統知識點

tcp的擁塞控制由4個核心演算法組成。https 把資料進行非對稱加密,然後客戶端從第三方伺服器獲取證書 加密後的公鑰 http完整請求 建立tcp連線,傳送http命令請求頭,web伺服器應答,關閉tcp連線 tcp 三次握手 缺陷 洪氾攻擊 解決辦法 四次揮手 長連線 短連線 程序 執行緒 併發...

作業系統知識點

協程 coroutines 是一種比執行緒更加輕量級的存在,正如乙個程序可以擁有多個執行緒一樣,乙個執行緒可以擁有多個協程。協程不是被作業系統核心所管理的,而是完全由程式所控制,也就是在使用者態執行。這樣帶來的好處是效能大幅度的提公升,因為不會像執行緒切換那樣消耗資源。程序與執行緒見 分頁與分段 分...

作業系統知識點

計算機系統資源分為硬體資源和軟體資源 按資訊交換方式和加接裝置的特性種類不同,通道分為 位元組多路通道 選擇通道 陣列多路通道 兩個交往的併發程序可能出現與時間有關的錯誤,這些錯誤表現為結果不唯一和永遠等待兩種情況 unix檔案可以分成普通檔案 目錄檔案和特殊檔案 從資源管理的觀點上來看,os的功能...