pengurusan pemproses

41
1 PENGURUSAN PEMPROSES BAB 4

Upload: taro

Post on 04-Feb-2016

61 views

Category:

Documents


0 download

DESCRIPTION

PENGURUSAN PEMPROSES. BAB 4. 4.1 Pengenalan. Dalam pengurusan pemproses, apa yang perlu diambil perhatian adalah bagaimana suatu sistem itu dapat memenuhi permintaan dalam persekitaran berbagai aturcara. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: PENGURUSAN  PEMPROSES

1

PENGURUSAN PEMPROSES

BAB 4

Page 2: PENGURUSAN  PEMPROSES

2

4.1 Pengenalan Dalam pengurusan pemproses, apa

yang perlu diambil perhatian adalah bagaimana suatu sistem itu dapat memenuhi permintaan dalam persekitaran berbagai aturcara.

Bagi pengguna tunggal, CPU hanya memproses satu kerja bagi seorang pengguna pada suatu masa.

Page 3: PENGURUSAN  PEMPROSES

3

Tidak berlaku pertindihan permintaan tetapi bagi persekitaran berbagai aturcara,

banyak kerja perlu diproses. Maka,

CPU perlu diperuntukan kepada setiap kerja dengan adil dan cekap untuk satu jangkamasa tertentu

pengurusan perlu memastikan peruntukan dilepaskan bila tempoh peruntukan telah tamat.

Page 4: PENGURUSAN  PEMPROSES

4

Pengurus Pemproses adalah kombinasi 2 entiti : Penjadual Kerja Penjadual Proses

Page 5: PENGURUSAN  PEMPROSES

5

4.2 Penjadual Kerja Matlamat utama :

meletakkan kerja–kerja dalam susunan yang boleh menggunakan sumber dengan semaksima yang mungkin.

Maka, tugas-tugas penjadual kerja : menyusun kerja-kerja untuk dimasukkan ke

dalam baris-gilir kerja, memilih kerja-kerja yang sudah berada

dalam baris-gilir untuk dimasukkan ke dalam baris-gilir proses

Page 6: PENGURUSAN  PEMPROSES

6

Penjadual Kerja (cont.) Berperanan menyusun kerja-kerja supaya

dapat mengggunakan sumber sistem dengan berkesan iaitu ia cuba mengelak keadaan di mana sumber-

sumber berada dalam keadaan terbiar. Maka, penjadual kerja akan berusaha untuk

menghasilkan keadaan dimana terdapat keseimbangan diantara kerja yang

memerlukan kekerapan penggunaan I/O dengan kerja yang memerlukan kekerapan penggunaan CPU.

Ianya juga dikenali sebagai Penjadual Aras Tinggi.

Page 7: PENGURUSAN  PEMPROSES

7

4.3 Penjadual Proses Mengkoordinasikan proses-proses yang

akan ataupun sedang dilaksanakan oleh CPU iaitu sebaik sahaja sesuatu kerja dipilih untuk dilarikan, penjadual proses akan ambil alih pengawalan fasa-fasa pemprosesan kerja tersbut.

Ianya juga dikenali sebagai Penjadual Aras Bawah

Page 8: PENGURUSAN  PEMPROSES

8

Penjadual Proses (cont.) Penjadual Proses akan memastikan aktiviti-

aktiviti berikut dijalankan. Antara aktiviti-aktivitinya ialah:

memastikan kerja mana mendapat peruntukan CPU, bila dan jangkamasa peruntukan

menentukan proses mana yang akan disampukkan

memastikan baris-gilir bagi sesuatu kerjamengenalpasti kerja mana yang telah selesai dan perlu ditamatkan

Page 9: PENGURUSAN  PEMPROSES

9

Untuk proses penjadualan CPU, ia akan mengambil kelebihan daripada kebaikan yang terdapat pada aturcara komputer iaitu proses saling tukar antara kitar CPU dan kitar I/O

Page 10: PENGURUSAN  PEMPROSES

10

Read A,B Kitar I/OC = A+BD = (A*B) – C Kitar CPUE = A-BF = D/EWrite A,B,C,D,E,F Kitar I/OStopEnd

Page 11: PENGURUSAN  PEMPROSES

11

Dalam pemilihan algoritma yang sesuai, Penjadual Proses akan kecendurangan umum daripada sesuatu pemprosesan itu seperti Terikat I/O: kitar CPU pendek, kitar I/O

panjang Terikat CPU: kitar CPU panjang, kitar

I/O pendek

Page 12: PENGURUSAN  PEMPROSES

12

Penjadualan Paras-Pertengahan boleh wujud untuk persekitaran yang terlampau interaktif yang mana penjadualan ini akan: mengurangkan kesesakan dalam darjah

berbilang aturcara dengan mengeluarkan kerja yang aktif dalam ingatan utama

Mengurus proses keluar masuk kerja yang telah dikeluarkan dari ingatan utama

Page 13: PENGURUSAN  PEMPROSES

13

4.3.1        Status Kerja dan Proses Apabila kerja memasuki sistem, ia akan

berada dalam 3 atau 5 keadaan seperti dalam gambarajah di bawah :

 Tangguh Sedia DilaksanakanTamat 

Tunggu 

Rajah 4.3.1: Penukaran Status Kerja

Page 14: PENGURUSAN  PEMPROSES

14

Turutan proses yang berlaku adalah seperti berikut:

1. Pengguna hantar kerja ke sistem2. Kerja di beri status TANGGUH dan

diletakkan di baris-gilir3. Bila sistem sudah sedia, kerja itu

diletakkan dalam status SEDIA (iaitu dimasukkan ke baris-gilir SEDIA)

Page 15: PENGURUSAN  PEMPROSES

15

4. Bila CPU sedia, kerja dihantar untuk diproses dan statusnya di tukar ke DILAKSANAKAN,

5. Kerja akan masuk ke status TUNGGU jika sumber yang diperlukan tidak sedia atau perlu menunggu sehingga operasi I/O selesai

6. Bila kerja selesai, statusnya menjadi TAMAT

Page 16: PENGURUSAN  PEMPROSES

16

Manakala transaksi tugas dari satu status ke satu status adalah seperti berikut :

Tangguh Sedia Penjadual KerjaSedia Dilaksan

a Penjadual Kerja

Dilaksana Sedia Penjadual KerjaDilaksana Tunggu Penjadual KerjaTunggu Sedia Penjadual KerjaDilaksana Tamat Penjadual Kerja

atauPenjadual Proses

Page 17: PENGURUSAN  PEMPROSES

17

4.3.1        Blok Kawalan Proses (BKP)Setiap satu proses mempunyai BKP untuk

menyimpan maklumat-maklumat berikut:Proses ID

Proses statusKeadaan Proses        Perkataan Status Proses        Kandungan Daftar        Ingatan Utama        Sumber        Keutamaan Proses

Perakaunan

Page 18: PENGURUSAN  PEMPROSES

18

ID Proses Setiap kerja ada id yang unik

Status Proses Tunjukkan status kerja (sama ada

TANGGUH, SEDIA, dll) Keadaan Proses

Tunjukkan maklumat semasa kerja

Page 19: PENGURUSAN  PEMPROSES

19

Perakaunan Semua maklumat yang digunakan

untuk mengukur prestasi atau mengira kos.

Turut ditunjukkan apakah jenis sumber yang digunakan oleh kerja dan untuk berapa lama.

Page 20: PENGURUSAN  PEMPROSES

20

Blok Kawalan Proses (cont.) Sebaik sahaja sesuatu kerja

diterima masuk oleh Penjadual Kerja, Blok Kawalan Proses akan dijanakan dan akan sentiasa dikemaskinikan sehingga kerja tersebut tamat atau ditamatkan.

Page 21: PENGURUSAN  PEMPROSES

21

Blok Kawalan Proses (cont.) Baris-gilir akan menggunakan BKP untuk

menjejak kerja yang dimasukkan. Oleh itu BKP mengandungi semua

maklumat tentang kerja yang diperlukan oleh sistem pengendalian untuk mengurus pemprosesan kerja tersebut.

Ini bermakna apabila kerja dilaksanakan oleh sistem tersebut, ianya akan dicatitkan dalam BKP.

Page 22: PENGURUSAN  PEMPROSES

22

Blok Kawalan Proses (cont.) Setiap BKP akan dipautkan untuk

membentuk baris-gilir yang mana BKP akan memasuki baris-gilir mengikut status BKP itu.

Sebagai contoh untuk BKP bagi semua kerja yang diTANGGUHkan, ianya akan dimasukkan ke dalam baris-gilir TANGGUH.

Page 23: PENGURUSAN  PEMPROSES

23

Polisi Penjadualan Proses Dalam persekitaran berbilang

aturcara, banyak kerja perlu dilarikan dan untuk itu sebelum sesuatu Sistem Pengendalian atau dengan lebih tepat penjadual pemproses itu membuat penjadualan ianya perlu menyelesaikan 3 kekangan berikut :

Page 24: PENGURUSAN  PEMPROSES

24

terdapat sumber yang terhad. terdapat sumber yang tidak boleh

dikongsi sebaik sahaja diperuntukkan seperti Pencetak.

ada sumber yang perlukan bantuan operator iaitu ianya tidak boleh melakukan kerja seterusnya melainkan dengan bantuan operator seperti pemacu cakera.

Page 25: PENGURUSAN  PEMPROSES

25

Untuk membina satu polis penjadualan yang baik, beberapa kriteria berikut perlu dipertimbangkan seperti di bawah:

1. Maksimakan Daya Pemprosesan : memaksimakan jumlah kerja dalam masa tertentu.

2. Mengurangkan masa tindakbalas : mempercepatkan permintaan interaktif.

Page 26: PENGURUSAN  PEMPROSES

26

3. Mengurangkan masa pusingbalik (kerja berkelompok) : mempercepatkan perlaksanaan semua kerja berkelompok.

3. Mengurangkan masa tunggu: mempercepatkan proses perlaksanaan untuk semua kerja yang berada dalam status SEDIA.

Page 27: PENGURUSAN  PEMPROSES

27

5. Memaksimakan kecekapan CPU : mengekalkan kesibukan CPU 100%.

6. Memastikan semua kerja mendapatkan sumber yang mencukupi.

Page 28: PENGURUSAN  PEMPROSES

28

Disamping itu terdapat 2 jenis polisi penjadualan proses iaitu: Polisi Penjadualan Secara

‘Preemptive’ membuat sampukan kerja yang tengah dilaksanakan dan

memindahkan CPU ke kerja lain seringkali digunakan dalam persekitaran

pengkomputeran konsi-masa Polisi Penjadualan Secara ‘Nonpreemptive’:

kerja diproses tanpa dikenakan sebarang sampukan sehingga selesai, baru berpindah ke kerja lain.

Page 29: PENGURUSAN  PEMPROSES

29

Algoritma Penjadualan Proses Penjadualan Proses bergantung kepada

Algoritma Penjadualan Proses berdasarkan polisi tertentu untuk memperuntukan CPU dan seterusnya memproses kerja terebut.

Antara algoritma yang wujud adalah: First Come First Serve (FCFS), Shortest Job Next(SJN), Penjadualan Berdasarkan Keutamaan, Shortest Remaining Time (SRT), Round Robin, Giliran Peringkat Berganda.

Page 30: PENGURUSAN  PEMPROSES

30

4.5.1 First Come First Serve Ianya menggunakan polisi

“nonpreemptive” dan sangat mudah hendak dilaksanakan.

Cara penjadualan kerja adalah berdasarkan masa sampai sesuatu kerja itu.

Ianya amat sesuai untuk kerja kelompok.

Page 31: PENGURUSAN  PEMPROSES

31

First Come First Serve (cont.) Kelemahannya adalah dimana

masa pusingbalik untuk kerja proses adalah tidak dapat dijangkakan.

Sebagai contoh: Kerja A ada kitar CPU 15 ms Kerja B ada kitar CPU 2 ms Kerja C ada kitar CPU 1 ms

Page 32: PENGURUSAN  PEMPROSES

32

Carta Gantt

Kerja A Kerja B

Kerja C

0 15 17 18

Page 33: PENGURUSAN  PEMPROSES

33

Kerja C

Kerja B

Kerja A

0 1 3 18

Page 34: PENGURUSAN  PEMPROSES

34

Purata masa turnaround : tertib A,B,C(15+17+18) / 3 = 16.67

Purata masa pusingbalik : tertib C,B,A(18+3+1) / 3 = 7.3

Page 35: PENGURUSAN  PEMPROSES

35

4.5.2 Shortest Job Next Ianya menggunakan polisi

“nonpreemptive”. Cara pengelolaan kerjanya adalah

berdasarkan panjang masa CPU yang akan digunakan.

Juga sesuai dilaksanakan dalam persekitaran kelompok dan susah dalam persekitaran interaktif (tidak tahu jangkamasa CPU yang akan digunakan.).

Page 36: PENGURUSAN  PEMPROSES

36

Cara perlaksanannya dapat dilihat di bawah :

Kerja : A B C DKitar CPU : 5 2 6 4

Tertib terpilih : B, D, A, C

Page 37: PENGURUSAN  PEMPROSES

37

SJN

Purata Masa Pusingbalik : (2+6+11+17) /4 = 9.0

0 2 6 11 17

Kerja B

Kerja D Kerja A Kerja C

Page 38: PENGURUSAN  PEMPROSES

38

Untuk algoritma ini melakukan penjadualan yang terbaik, ia memerlukan semua kerja mesti dalam keadaan SEDIA pada masa yang sama, jangkaan masa CPU boleh dibuat dan tepat.

Page 39: PENGURUSAN  PEMPROSES

39

4.5.3 Penjadualan Keutamaan Seperti juga SJN, ianya menggunakan

polisi “nonpreemptive” dan juga biasa digunakan untuk sistem kelompok.

Cara penjadualannya adalah ia memberi keutamaan untuk kerja yang penting (atau kerja yang berkeutamaan tinggi dahulu).

Tiada sampukan dibuat sehingga proses itu tamat ataupun ada penggunaan I/O.

Page 40: PENGURUSAN  PEMPROSES

40

Keutamaan kerja diberi oleh pentadbir sistem berdasarkan ciri kerja tersebut.

Dengan algoritma ini, kerja-kerja kebiasaannya dipautkan dengan beberapa baris-gilir SEDIA oleh Penjadual Kerja berdasarkan keutamaan mereka supaya Penjadual boleh mengurus beberapa baris-gilir SEDIA berbanding dengan menguruskan satu sahaja.

Page 41: PENGURUSAN  PEMPROSES

41

Ciri-ciri yang membezakan keutamaan sesuatu kerja adalah seperti berikut: keperluan ingatan : kerja besar mungkin

keutamaan rendah jumlah dan jenis peranti yang diperlukan masa CPU masa yang telah dihabiskan dalam sistem

Tetapi nilai keutamaan lalai boleh ditentukan oleh pengguna.