一道騰訊的筆試題

16. 假定我們有3個程序,每個程序花費80%的時間進行cpu,20%的時間進行IO,每個程序的啓動時間以及使用cpu進行計算的分鐘數如下,不考慮進程切換時間:

            啓動時間         CPU

任務1:  00:00            3.5(min)

任務2:  00:10  2(min)

任務3:  00:15  1.5(min)

請問,在多線程/進程環境下,系統的總響應時間爲()

A. 22.5B. 23.5C. 24.5D. 25.5

這道題目的解題思路如下:

IO佔比例p的話,那麼多道程序CPU佔用率爲1-p^n(n爲多道程序的個數)。

所以:

0-10分鐘CPU時間10*0.2=2

10-15分鐘CPU時間爲5*(1-0.8^2)=1.8

15分鐘之後CPU利用率1-0.8^3=0.488

0-10提供2分鐘CPU,10-15提供1.8分鐘CPU,15分鐘-18.7分鐘提供1.8分鐘的CPU,18.7-21.5提供1分鐘CPU,21.5-23.5提供0.4分鐘的CPU時間,所以總共花費23.5分鐘


17. 在所有非搶佔CPU調度算法中,系統平均響應時間最優的是()

A.實時調度     B.短任務優先        C.時間片輪轉        D.先來先服務

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章