2011年5月18日 星期三

100.5.17作業系統!!

利用卡諾圖將布林函數簡化為積項之和或和項之積,為加深對於此運算的概念同學可自行演算以下2個例題:
【貼心小提醒】簡化的過程有多種解法,並無絕對的答案,同學們可腦力激盪一下,嘗試從解題的過程中,將所學加以運用並找出最簡化的解答!
1)以卡諾圖將布林函數FW,X, Y, Z)=Σ m(4, 5, 6, 7 ,9,12,13,14 )d1, 3, 10)簡化為積項之和及和項之積。
2)以卡諾圖將布林函數 FW,X, Y, Z)=Σ m(3, 5, 10,14 )d0, 4, 8,11,12)簡化為積項之和及和項之積。
本週內容摘要如下:
一、作業系統(OS,operating system
    是介於電腦硬體與應用軟體之間的程式,除提供執行應用軟體的環境,還負責分配系統資源。
     功能:
○分配系統資源
○提供執行應用軟體的環境
○提供使用者介面
二、作業系統的元件
○記憶體管理元件 ○行程管理元件 ○檔案管理元件
        ○磁碟管理元件   ○輸出入裝置管理元件
        ○網路元件       ○系統安全元件
    三、作業系統的演進
        1.批次處理系統2.多元程式處理3.分時系統4.個人電腦5.多處理器系統
         6.分散式系統7.叢集式系統8.即時系統9手持系統10崁入式系統。
        分述如下:
1.批次處理系統:輸入是一疊打孔卡片,打孔卡片是由操作員整理後整批送進電腦來處理,因此稱為批次處理。
     2.多元程式處理:記憶體中可同時存放多份工作,讓這些程式依照作業系統安排的順序來爭取CPU時間。
     3.分時系統:把 CPU時間切割成許多小段,稱為時間配額或時間片段,輪流分配給每個使用者的每個時間。
4.多處理系統:擁有一個以上的CPU,這些CPU之間彼此緊密的相戶聯繫,而且共用系統時脈、匯流排、記憶體甚至是週邊裝置。
 5.分散式系統:將工作拆成幾部分,透過快速的網路通訊指派給多台電腦分別完成。
6.其他作業系統
個人電腦作業系統:比較輕巧而容易學習和使用的作業系統。
 叢集式系統:集合數台個別的系統一起完成計算工作。
 即時系統:在運作過程中必須要隨時考慮到時效性。
手持系統:硬體的記憶體比PC小很多,處理器速度也只是PC的幾分之一,螢幕尺寸也縮小 。
四、記憶體管理(memory management
邏輯位址:程式中指定的位址,相對於程式本身而非主記憶體,又稱為虛擬位址或相對位址。
實體位址:實際在主記憶體內的實體位置。
位址鏈結:將程式中的每個邏輯位址轉換成實體位址。
    五、多元程式處理(multiprogramming
在同一時間內安排多個程式在記憶體中輪流使用CPU
技術有以下幾種:1.分割法(partitioning2.分頁法(paging3.分段法(segmentaion4.虛擬記憶體(virtual memory5.需求分頁法(demand paging)。
1.分割法:將主記憶體切分成多個區塊,稱為分割區,分割區中剩下沒有用到的空間就叫做內部碎片。
1)固定分割法:分割成固定大小的分割區,作業系統用表格記錄分割區的起始位址與長度,每個分割區只能載入一個程式。
2)動態分割法:為了改善內部碎片問題,根據程式大小劃分剛好大小的分割區指派給它,同樣使用表格來記錄分割區的位址和長度。
          無論是固定或動態的分割法,程式都必須整個能放進記憶體才能執行,而且必須是連續空間。
          2.分頁法:外部碎片是無法避免的,只是程度的輕重不同,允許同一個程式可以載入到不連續的記憶體空間中,只要可用空間的總大小足夠,就可以執行此程式。
3.分段法:是把程式的邏輯記憶體分割成許多分段,使用分段表記錄分段的位置,先用分段編號在分段表裡查出對應的實體位址起點,再加上位移值。
4.虛擬記憶體:程式不必整個都在記憶體中仍然可以執行。優點是可載入更多個程式到記憶體中,記憶體的利用率與CPU的使用率都會提高。
5.需求分頁法:分頁法配合虛擬記憶體技術,與分頁法類似,差異在於程式不必全部載入。
    六、行程控制區塊(PCB
作業系統為行程儲存資訊的資料結構,建立新行程時會同時建立它的PCB,之後將一直維護這個PCB直到這個行程結束為止。
        就緒佇列:所有在「就緒」狀態等待的行程。
執行緒 (thread):把行程更進一步切分,每個執行緒有自己的控制流程,但共用同一塊程式碼區域、資料區和作業系統資源。
多執行緒 (multithreading):一種新的多工方式,允許電腦在單一程式中執行一個以上的工作。
    七、CPU排程的演算法
        1.先來先做(First-ComeFirst-Served 簡稱FCFS
          以行程到達的先後順序來執行,先來的先做。
                       
           行程所需時間單位
                  P1       40
                  P2       75
                  P3       20
                  P4       80
                  P5       25
            平均的回復時間 = (40 + 115 + 135 + 215 + 240) / 5,等於149
       
2.最短的工作先做 (Shortest Job First,簡稱SJF)
       先看一遍在就緒狀態下的所有行程,將它們的所需執行時間從小排到大,然後從時間最短的開始執行。

          承上題之行程所需時間單位得知:
平均的回復時間 = (20 + 45 + 85 + 160 + 240) / 5,等於110
3.優先權 (Priority)
  依照事先決定好的優先權定義,計算出每個行程的優先順序,然後照著優先 順序的先後給予CPU使用權。(假設執行順序為:P2,P5,P1,P3,P4
  
承上題之行程所需時間單位得知:
平均的回復時間 = (75 + 100 + 140 + 160 + 240) / 5,等於143

4.循環分配 (Round Robin,簡稱RR)
事先定義好固定的時間配額,讓每個行程輪流分配一個時間配額。假如不夠讓行程執行完成,下一次就再分配一個時間配額給它。
承上題之行程所需時間單位得知:
平均回復時間 = (60 + 120 + 165 + 220 + 240) / 5,等於161
※隨堂練習:P8-23,請同學們自行練習喔!

沒有留言:

張貼留言