淺析計算CPU的使用率
(2010-10-17 19:29:12)
轉載▼
标簽: cpu使用率計算習題校園 | 分類: unix |
我想,對于計算機專業的學生,無論是考研還是就業,CPU的計算題應該都會碰到,我在這篇部落格裡面就用圖示把原理給大家曬曬。
順序執行時,cpu總時間除以所有時間的總和。
并發執行時,需要畫圖處理更清晰。
下面就詳解一道在并發執行時有關CPU計算的試題
在單CPU和兩台I/O(I1,I2)裝置的多道程式設計環境下,同時投入三個作業運作。他們的執行軌迹如下:
Jobl : I2 ( 30ms )、CPU ( 10rns )、I1 ( 30ms )、CPU ( 10ms )
Job2 : I1 ( 20ms )、CPU ( 20ms )、I2 ( 40ms )
Job3 : CPU ( 30ms )、I1 ( 20ms )
如果CPU、I1和I2都能并發工作,優先級從高到低為Job1、Job2和Job3,優先級高的作業可以搶占優先級低的作業的CPU。
試求:
(1)每個作業從投入到完成分别所需的時間。
(2)每個作業投入到完成CPU的使用率。
(3)I/O裝置使用率。
解析:
三個作業并發工作圖如下
注釋:圖中白色為CPU的空閑狀态,紅色為CPU的工作狀态,綠色為I1的工作狀态,藍色為I2的工作狀态。
(1)Job1從投入到運作完成需80ms,Job2從投入到運作完成需90ms,Job3從投入到運作完成需90ms。
(2)CPU空閑時間段為:60ms至70ms,80ms至90ms,是以CPU使用率為(90-20)/90=77.78%
(3)裝置I1空閑時間段為:30ms至50ms,故I1的使用率為(90-20)/90=77.78%;裝置I2空閑時間段為40ms至60ms,故I2的使用率為(90-20)/90=77.78%。