作業系統常見問題 面試必備

2021-10-03 05:43:43 字數 1634 閱讀 3499

整理作業系統中常見的知識點,面試問題

1、程序和執行緒的區別和關係

2、邏輯位址、線性位址、虛擬位址、實體地址的區別和關係

3、程序的狀態有哪些

4、程序和程式的區別和關係

程式是靜態的**,程序是動態的工作程式。程式和程序的關係等同於類與物件的關係。

5、程序間的通訊方式

6、程序間同步

在多道程式環境下,程序是併發執行的,不同程序之間存在著不同的相互制約關係。

經典的程序同步問題:生產者-消費者問題;哲學家進餐問題;讀者-寫者問題

常見的程序同步解決方法:訊號量mutex和管程

7、死鎖是什麼?舉例說明

8、死鎖產生的條件有哪些?

9、解決死鎖的方法

銀行家演算法:每次分配資源給程序之前,執行一次安全監測演算法,檢視按照此種分配方式整個系統是否處於安全狀態

10、中斷是什麼

中斷是指在程式執行過程中,遇到急需處理的事件時,暫時停止該程式,轉而去執行相應的事件處理程式,執行完畢之後再返回繼續執行之前的程式。

中斷分為軟中斷和硬中斷,軟中斷是軟體實現的中斷,也就是程式執行時其他程式對它的中斷,如程式出錯(非法指令、位址越界);硬中斷是硬體實現的中斷,是程式執行時硬體裝置對程式的中斷,如通常的磁碟中斷、印表機中斷。

11、中斷和異常的區別

12、系統呼叫是什麼,和中斷的關係是什麼

13、分段和分頁的區別

14、程序排程策略有哪些?

先了解兩個概念:

先來先服務排程演算法fcfs:按作業或者程序到達的先後順序依次排程;(平均周轉時間可能會很長 )

短作業優先排程演算法sjf:演算法從就緒佇列中選擇估計時間最短的作業進行處理,直到得出結果或者無法繼續執行(周轉時間短,但是響應時間長 )

高相應比演算法hrn:響應比=(等待時間+要求服務時間)/要求服務時間;

時間片輪轉排程rr:按到達的先後對程序放入佇列中,然後給隊首程序分配cpu時間片,時間片用完之後計時器發出中斷,暫停當前程序並將其放到佇列尾部,迴圈 ;(響應時間可以得到保證)

多級反饋佇列排程演算法:目前公認較好的排程演算法;設定多個就緒佇列並為每個佇列設定不同的優先順序,第乙個佇列優先順序最高,其餘依次遞減。優先順序越高的佇列分配的時間片越短,程序到達之後按fcfs放入第乙個佇列,如果排程執行後沒有完成,那麼放到第二個佇列尾部等待排程,如果第二次排程仍然沒有完成,放入第三佇列尾部…。只有當前乙個隊列為空的時候才會去排程下乙個佇列的程序。

15、頁面排程演算法

物理記憶體可能比較小,不能同時放很多程序進來。解決思路:把要執行的**移到記憶體,暫時不用的**移入磁碟,記憶體置換。

秋招面試常見問題 作業系統

一.作業系統 1.執行緒程序區別?2.程序通訊方式?2.1 管道pipe 管道是一種半雙工的通訊方式,資料只能單向流動,而且只能在具有親緣關係的程序間使用。程序的親緣關係通常是指父子程序關係。2.2 命名管道fifo 有名管道也是半雙工的通訊方式,但是它允許無親緣關係程序間的通訊。2.3 訊息佇列m...

作業系統常見問題2

3 usm自動部署sles10sp1不成功,kvm報missing oerating system 現象描述 trying to load pxelinux.cfg 01 00 18 82 booting from local disk.pxe m0f exiting broadcom pxe ro...

作業系統常見問題4

5 atae允許xmanager圖形化登陸 修改 opt kde3 share config kdm kdmrc檔案,把false改為true,把port 177的 去掉。如下 vi etc opt kde3 share config kdm kdmrc 修改 xdmcp 下面的enable和por...