批處理系統(tǒng)(batch processing system)中,一個作業(yè)可以長時間地占用cpu。而分時系統(tǒng)中,一個作業(yè)只能在一個時間片(Time Slice,一般取100ms)的時間內(nèi)使用cpu。
批處不是嚴格意義上的操作系統(tǒng),雖然可用Monitor監(jiān)督,可用匯編語言開發(fā),但也只是操作系統(tǒng)的原型。
所謂批處理(batch processing )就是將作業(yè)按照它們的性質(zhì)分組(或分批),然后再成組(或成批)地提交給計算機系統(tǒng),由計算機自動完成后再輸出結(jié)果,從而減少作業(yè)建立和結(jié)束過程中的時間浪費。根據(jù)在內(nèi)存中允許存放的作業(yè)數(shù),批處理系統(tǒng)又分為單道批處理系統(tǒng)和多道批處理系統(tǒng)。早期的批處理系統(tǒng)屬于單道批處理系統(tǒng),其目的是減少作業(yè)間轉(zhuǎn)換時的人工操作,從而減少CPU的等待時間。它的特征是內(nèi)存中只允許存放一個作業(yè),即當(dāng)前正在運行的作業(yè)才能駐留內(nèi)存,作業(yè)的執(zhí)行順序是先進先出,即按順序執(zhí)行。
由于在單道批處理系統(tǒng)中,一個作業(yè)單獨進入內(nèi)存并獨占系統(tǒng)資源,直到運行結(jié)束后下一個作業(yè)才能進入內(nèi)存,當(dāng)作業(yè)進行I/O操作時,CPU只能處于等待狀態(tài),因此,CPU利用率較低,尤其是對于I/O操作時間較長的作業(yè)。為了提高CPU的利用率,在單道批處理系統(tǒng)的基礎(chǔ)上引入了多道程序設(shè)計(multiprogramming)技術(shù),這就形成了多道批處理系統(tǒng),即在內(nèi)存中可同時存在若干道作業(yè),作業(yè)執(zhí)行的次序與進入內(nèi)存的次序無嚴格的對應(yīng)關(guān)系,因為這些作業(yè)是通過一定的作業(yè)調(diào)度算法來使用CPU的,一個作業(yè)在等待I/O處理時,CPU調(diào)度另外一個作業(yè)運行,因此CPU的利用率顯著地提高了。
現(xiàn)在的批處理系統(tǒng)主要指多道批處理系統(tǒng),它通常用在以科學(xué)計算為主的大中型計算機上,由于多道程序能交替使用CPU,提高了CPU及其他系統(tǒng)資源的利用率,同時也提高了系統(tǒng)的效率。多道批處理系統(tǒng)的缺點是延長了作業(yè)的周轉(zhuǎn)時間,用戶不能進行直接干預(yù),缺少交互性,不利于程序的開發(fā)與調(diào)試。
批處理系統(tǒng)的特點:
多道-在內(nèi)存中同時存放多個作業(yè),使之同時處于運行狀態(tài),這些作業(yè)共享CPU和外部設(shè)備等資源。
成批-用戶和他的作業(yè)之間沒有交互性。用戶自己不能干預(yù)自己的作業(yè)的運行,發(fā)現(xiàn)作業(yè)錯誤不能及時改正。
批處理系統(tǒng)的目的是提高系統(tǒng)吞吐量和資源的利用率。
多道處理系統(tǒng)的優(yōu)點是由于系統(tǒng)資源為多個作業(yè)所共享,其工作方式是作業(yè)之間自動調(diào)度執(zhí)行。并在運行過程中用戶不干預(yù)自己的作業(yè),從而大大提高了系統(tǒng)資源的利用率和作業(yè)吞吐量。其缺點是無交互性,用戶一旦提交作業(yè)就失去了對其運行的控制能力,而且是批處理的,作業(yè)周轉(zhuǎn)時間長,用戶使用不方便。