內容源自:
(一)請分別簡單說一說程序和執行緒以及它們的區別。
(二)執行緒同步的方式有哪些?
(三)程序的通訊方式有哪些?
主要分為:管道、系統ipc(包括訊息佇列、訊號量、共享儲存)、socket
管道主要分為:普通管道pipe 、流管道(s_pipe)、命名管道(name_pipe)
(四)什麼是緩衝區溢位?有什麼危害?其原因是什麼?
緩衝區溢位是指當計算機向緩衝區填充資料時超出了緩衝區本身的容量,溢位的資料覆蓋在合法資料上。
危害有以下兩點:
造成緩衝區溢位的主要原因是程式中沒有仔細檢查使用者輸入。
(五)什麼是死鎖?死鎖產生的條件?
在兩個或者多個併發程序中,如果每個程序持有某種資源而又等待其它程序釋放它或它們現在保持著的資源,在未改變這種狀態之前都不能向前推進,稱這一組程序產生了死鎖。通俗的講就是兩個或多個程序無限期的阻塞、相互等待的一種狀態。
死鎖產生的四個條件(有乙個條件不成立,則不會產生死鎖)
(六)程序有哪幾種狀態?
(七)分頁和分段有什麼區別?
(八) 作業系統中程序排程策略有哪幾種?
fcfs(先來先服務),優先順序,時間片輪轉,多級反饋
(九)說一說程序同步有哪幾種機制。
原子操作、訊號量機制、自旋鎖管程、會合、分布式系統
(十)說一說死鎖的處理基本策略和常用方法。
解決死鎖的基本方法如下:
預防死鎖、避免死鎖、檢測死鎖、解除死鎖
解決四多的常用策略如下:
鴕鳥策略、預防策略、避免策略、檢測與解除死鎖
作業系統面試題
一 linux下程序間通訊的幾種主要手段簡介 管道 pipe 及有名管道 named pipe 管道可用於具有親緣關係程序間的通訊,有名管道克服了管道沒有名字的限制,因此,除具有管道所具有的功能外,它還允許無親緣關係程序間的通訊 訊號 signal 訊號是比較複雜的通訊方式,用於通知接受程序有某種事...
作業系統面試題
作業系統 1.select,poll和epoll 其實所有i o都是輪詢的方法,只不過實現的層面不同罷了 基本select有三個缺點 1.連線受限 2.查詢配對速度慢 3.資料由核心態拷貝到使用者態 poll改善了第乙個缺點 epoll改善了第三個缺點 2.排程演算法 實時排程演算法 1.最早截至時...
作業系統面試題彙總
死鎖?死鎖產生的原因?死鎖的必要條件?怎麼處理死鎖?解析 1 什麼是死鎖?死鎖是相互等待資源而產生的一種僵持狀態,如果沒有外力的干預將一直持續這個狀態 2 死鎖產生的原因?系統資源不足 相互競爭資源 請求資源順序不當 3 死鎖的必要條件?互斥 不可搶占 迴圈等待 請求與保持 4 怎麼處理死鎖?因為互...