有過面試經歷的人都知道作業系統是面試官必問的幾大型別題目之一,在上一期我們已經更新另一大板塊的題目常見面試題整理--資料庫篇
(一)請分別簡單說一說程序和執行緒以及它們的區別。
如果你對程序或者執行緒不太熟悉,建議閱讀:程序與執行緒的乙個簡單解釋
(二)執行緒同步的方式有哪些?
經兩位大大的指正,現已刪除臨界區。感謝:@真姬醬
@安陽如果你對執行緒同步的方式不太熟悉,建議閱讀:執行緒同步的幾種方式
(三)程序的通訊方式有哪些?
主要分為:管道、系統ipc(包括訊息佇列、訊號量、共享儲存)、socket
管道主要分為:普通管道pipe、流管道(s_pipe)、命名管道(name_pipe)
如果你對程序的通訊方式不太熟悉,建議閱讀: 程序間的幾種通訊方式
(四)什麼是緩衝區溢位?有什麼危害?其原因是什麼?
緩衝區溢位是指當計算機向緩衝區填充資料時超出了緩衝區本身的容量,溢位的資料覆蓋在合法資料上。
危害有以下兩點:
造成緩衝區溢位的主要原因是程式中沒有仔細檢查使用者輸入。
如果你想深入了解緩衝區溢位,推薦閱讀:緩衝區溢位攻擊
(五)什麼是死鎖?死鎖產生的條件?
在兩個或者多個併發程序中,如果每個程序持有某種資源而又等待其它程序釋放它或它們現在保持著的資源,在未改變這種狀態之前都不能向前推進,稱這一組程序產生了死鎖。通俗的講就是兩個或多個程序無限期的阻塞、相互等待的一種狀態。
死鎖產生的四個條件(有乙個條件不成立,則不會產生死鎖)
如果對死鎖還不是太熟悉,建議閱讀:死鎖產生的原因和解鎖的方法
(六)程序有哪幾種狀態?
如果你對程序的幾種狀態以及中間的裝換不太了解,建議閱讀:程序的三種狀態及轉換
(七)分頁和分段有什麼區別?
如果你對分頁和分段還不太了解,建議閱讀:分段和分頁
(八) 作業系統中程序排程策略有哪幾種?
fcfs(先來先服務),優先順序,時間片輪轉,多級反饋
如果你想深入的了解這幾種排程策略,推薦閱讀:幾個常用的作業系統程序排程演算法
(九)說一說程序同步有哪幾種機制。
原子操作、訊號量機制、自旋鎖管程、會合、分布式系統
如果你想深入的了解這幾種機制,推薦閱讀:程序同步的幾種機制
(十)說一說死鎖的處理基本策略和常用方法。
解決死鎖的基本方法如下:
預防死鎖、避免死鎖、檢測死鎖、解除死鎖
解決四多的常用策略如下:
鴕鳥策略、預防策略、避免策略、檢測與解除死鎖
如果你對死鎖的處理策略不是太熟悉,推薦閱讀:產生死鎖的原因和必要條件+解決死鎖的基本方法
這兩日整理了很多程式設計方面的資料,希望這些資料可以對你們有些幫助,資料主要包括下圖所示的語言範疇,每乙個資料都是精心整理的。資料獲取步驟如下說明
本文參考文獻和文章:
「1」作業系統常見面試題總結 - youngchang的開發部落格
「2」 作業系統面試題 - iwan
「3」程序間的幾種通訊方式
「4」作業系統各大公司筆試題彙總
「5」解決死鎖的基本方法
常見面試題整理 作業系統篇
一 請分別簡單說一說程序和執行緒以及它們的區別。如果你對程序或者執行緒不太熟悉,建議閱讀 程序與執行緒的乙個簡單解釋 二 執行緒同步的方式有哪些?經兩位大大的指正,現已刪除臨界區。感謝 真姬醬 安陽如果你對執行緒同步的方式不太熟悉,建議閱讀 執行緒同步的幾種方式 三 程序的通訊方式有哪些?主要分為 ...
常見面試題整理(作業系統)
一 請分別簡單說一說程序和執行緒以及它們的區別。如果你對程序或者執行緒不太熟悉,建議閱讀 程序與執行緒的乙個簡單解釋 二 執行緒同步的方式有哪些?經兩位大大的指正,現已刪除臨界區。感謝 真姬醬 安陽如果你對執行緒同步的方式不太熟悉,建議閱讀 執行緒同步的幾種方式 三 程序的通訊方式有哪些?主要分為 ...
作業系統常見面試題整理
常用命令集錦 cat 由第一行開始顯示內容,並將所有內容輸出 tac 從最後一行倒序顯示內容,並將所有內容輸出 more 根據視窗大小,一頁一頁的現實檔案內容 less 和more類似,但其優點可以往前翻頁,而且進行可以搜尋字元 head 只顯示頭幾行 tail 只顯示最後幾行 nl 類似於cat ...