- 操作系統提供給應用程序的接口是:系統調用
【系統調用】是OS提供給編程人員的唯一接口
- 導致創建新的進程的操作是:1. 用戶登錄成功 2. 啟動程序執行
用戶登錄成功后,OS將啟動與用戶有關的初始程序,此時需要創建新的進程。啟動程序毫無疑問會啟動新進程。
設備分配是針對現有進程的,所以不會創建新的進程。
- 設與某資源關聯的信號量初始值為3,當前值為1。若M表示該資源的可用個數,N表示等待該資源的進程數,則可用資源數位1,等待進程數0
信號量的當前值為1,說明可用資源個數為1.由於當前還有可用資源數,等待進程數為0.
- 降低進程優先級的合理時機是:【進程時間片用完】
進程時間片用完可以降低其優先級,完成I/O的進程應該提升其優先級,處於就緒隊列等待調度的進程一般不會改變其優先級。
- 本地用戶通過鍵盤登錄系統時,首先獲得鍵盤輸入信息的程序是【中斷處理程序】
當用戶使用鍵盤輸入信息時,每次輸入都會產生一個中斷(break)。
- 進程調度算法: 1.時間片輪轉算法 2.先來先服務算法 3.短進程優先算法 4.最高響應比算法
綜合考慮進程等待時間和執行時間的是【最高響應比算法】
- 分區分配內存管理方式的主要保護措施是【界地址保護】
在分區分配內存管理方式中,主要用上、下界寄存器保護分區,也稱為界地址保護。
- 時間片輪轉算法是為了【多個用戶能及時干預系統】
時間片輪轉的目的: 使得多個交互的用戶能夠得到及時響應。使得用戶直觀感覺“獨占”整個計算機。
- 【先來先服務調度算法(First-In First-Service)】有利於CPU繁忙性的作業,而不利於I/O繁忙型的作業。
- 照顧短作業用戶應該采用【短作業優先(Short Job First】
- 實現人機交互應該采用【時間片輪轉(Round Robin】
- 既能夠讓短作業用戶滿意也能是長作業用戶滿意應該采用【最高響應比】調度算法
- 進程調度算法采用固定時間片輪轉調度算法,當時間片過大的時候,就會使用時間片輪轉算法轉化為【FCFS】
- 在調度算法中,對短進程不利的是【FCFS】調度算法
- ★ 滿足短任務優先而且不會發生飢餓現象的調度算法是【最高響應比HRRN】最有利於提高系統吞吐量的調度算法是【短作業優先(Short Job First)】
響應比 = (等待時間 + 服務時間) / 服務時間。 所以等待時間相同的時候,短作業的響應比更大,能優先獲得時間片。
- 不可能導致飢餓現象的調度算法是【時間片輪轉(Round Robin)】
★★★14. 一個進程的讀磁盤操作完成之后,OS針對進程比作的是【修改進程進入就緒態】
進程申請讀磁盤操作的時候,因為【等待I/O完成,將自身阻塞】,進入阻塞態。當I/O完成之后,【從阻塞態進入就緒態】
- 對資源采用按順序分配策略能夠達到【預防死鎖】的目的。
對死鎖的預防可以采取3中措施:
采用資源的靜態預分配,破壞“部分分配”條件;
允許進程剝奪使用其他進程占有的資源,從而破壞“不可剝奪”條件;
采用資源有序分配算法,破壞“循環等待”條件;
- 【銀行家算法】是一種【避免死鎖】的算法
銀行家算法是一種最具有代表性的避免死鎖的算法。在避免死鎖方法中允許進程動態地申請資源,但是系統在進行資源分配之前
應該先計算此次分配資源地安全性,若分配不會導致系統進入不安全狀態則執行分配操作。
- 若系統有n台互斥使用地同類設備,三個並發進程分別需要3、4、5台設備,可確保系統不發生死鎖地設備數n最小為: 10
極端狀態下: 進程1(3台): 申請到2台,無法工作; 進程2(4台): 申請到3台,無法工作; 進程3(5台): 申請到4台,無法工作; 申請總數: 2 + 3 + 4 = 9(台) 此時若有9台,3個進程持續申請不到,造成死鎖。所以必須空出一台。
- 死鎖與安全狀態的關系是: 死鎖狀態一定是不安全狀態。