作業系統 中

2022-09-10 07:51:08 字數 1972 閱讀 6075

1.什麼是虛擬記憶體?

2.作業系統是如何管理虛擬位址與實體地址之間的關係?

記憶體分頁(固定大小的頁):頁號+頁內偏移量。將虛擬記憶體和物理記憶體切成乙個個固定尺寸的大小,通過乙個中間值"頁表"來對應,每乙個頁表有固定數量的"頁表項"。 每乙個程序對應乙個頁表,所以每乙個頁表都是"固定的"大小,linux佔4kb。可以說每乙個程序都有大小相同的頁。

3.實體地址、邏輯位址、有效位址、線性位址、虛擬位址的區別

1.程序

什麼是程序表?程序的狀態:5種

程序的控制結構:在作業系統中,是用程序控制塊(process control block,pcb)資料結構來描述程序的,pcb 是程序存在的唯⼀標識。

2.執行緒

3.cpu上下文切換

cpu的上下文切換還分為不同的場景:

中斷上下文切換:為了快速響應硬體的事件,中斷處理會打斷程序的正常排程和執行,轉而呼叫中斷處理程式,響應裝置事件

4.程序終止的方式:

5.程序間的通訊方式

訊息佇列:訊息佇列實際上是儲存在核心的「訊息鍊錶」

共享記憶體:它直接分配⼀個共享空 間,每個程序都可以直接訪問。可以解決訊息佇列通訊中⽤戶態與核心態之間資料拷貝過程帶來的開銷。

訊號量:來保護共享資源,以確保任何時刻只能有⼀個程序訪問共享資源,這種方式就是互斥訪問。訊號量不僅可以實現訪問的互斥性,還可以實現程序間的同步,訊號量其實是⼀個計數器,表示的是資源個數,其值可以通過兩個原⼦操作來控制,分別是 p 操作和 v 操作。

訊號:是程序間通訊機制中唯 ⼀的非同步通訊機制,訊號可以在應⽤程序和核心之間直接互動,核心也可以利用訊號來通知使用者空間的進 程發生了哪些系統事件。

socket:要想跨網路與不同主機上的程序之間通訊,就需要 socket 通訊了

6.影響排程程式的指標是什麼

作業系統 作業系統介面

介面表現為函式呼叫,由作業系統提供,連線作業系統和應用軟體。出於安全性考慮,應用程式不能直接在記憶體中任意訪問 將核心程式和使用者程式隔離 通過比較訪問資料段cpl和rpl的特權級和當前段dpl的特權級之間的關係 應用程式呼叫庫函式printf printf呼叫庫中的write函式 write將函式...

作業系統(作業系統引論)

方便性 方便使用者進行操作計算機 有效性提高系統資源的利用率 提高系統的吞吐量,加速程式的執行 可擴充性 方便地增添新的模組和功能,以及對原有的功能模組進行修改 開放性能夠遵循世界標準規範 os作為使用者和計算機硬體系統之間的介面 使用者能夠通過作業系統來使用計算機系統 os作為計算機資源的管理者 ...

作業系統 作業系統 一 作業系統概述

好好學習,天天向上本文已收錄至我的github倉庫daydayup 歡迎star 之前一直沒有系統地學過作業系統,感覺自己在平時的學習過程中對於某些概念理解得一塌糊塗,比如中斷 記憶體 程序和執行緒等。所以打算系統的學習一下作業系統。一開始我是在b站看哈工大的李治軍老師講的,但是一上來就開始從彙編 ...