e4161 sistem komputer & aplikasi

37
E4161 SISTEM KOMPUTER & APLIKASI UNIT 4 PENGURUSAN PROSES

Upload: erica

Post on 20-Mar-2016

60 views

Category:

Documents


3 download

DESCRIPTION

E4161 SISTEM KOMPUTER & APLIKASI. UNIT 4 PENGURUSAN PROSES. KONSEP PENGURUSAN DALAM OS. Definisi istilah yang sering digunakan dalam OS : PROSES : Melakukan operasi / siri operasi pada sesuatu supaya menghasilkan kesudahan PROGRAM : - PowerPoint PPT Presentation

TRANSCRIPT

E4161SISTEM KOMPUTER & APLIKASI

UNIT 4PENGURUSAN

PROSES

KONSEP PENGURUSAN DALAM OS

Definisi istilah yang sering digunakan dalam OS :

PROSES : Melakukan operasi / siri operasi pada sesuatu supaya menghasilkan kesudahan

PROGRAM :Set kenyataan atau arahan yang sesuai utk pemprosesan oleh komputer

PEMPROSES :Perkakas yg mentafsir & laksana arahan

KONSEP PENGURUSAN DALAM OS

2 sebab proses boleh hilang kawalannya ke atas pemproses ialah :

i. Permintaan i/o oleh proses ituii. Sampukan dari mana-mana sumber

Konsep proses Selaraskan kawalan program-program yang dilaksanakan

KONSEP PENGURUSAN DALAM OS

Sistem Multiuser

• Tidak efisien kerana :

Setiap pengguna memuatkan program (compiler yang sama) dalam ingatan Sepatutnya program dimuatkan sekali dan pengguna berkongsi menggunakannya.

CPA CPBCPC CPD

Ingatan

C=Compiler

PENGKOMPIL (COMPILER) Perisian sistem yang menukarkan bahasa-bahasa

pengaturcaraan kepada kod mesin

Aturcara yg membaca aturcara (aturcara sumber) yang ditulis dalam satu bahasa dan kemudiannya diterjemahkan ke bahasa aturcara lain (aturcara target)

Pengkompil akan melaporkan pada pengguna sekiranya terdapat ralat dalam aturcara

PENGKOMPIL (COMPILER)

Contoh bahasa pengaturcaraan bagi aturcara sumber :* Fortran* Pascal* Basic

Contoh bahasa pengaturcaraan bagi aturcara target :* Bahasa Mesin* Bahasa Himpunan

COMPILERAturcara Sumber Aturcara Target

Mesej Ralat

KONSEP PENGURUSAN DALAM OS

Kongsi Program

• Cara pengkompil compiling adalah serentak.• Cara kerja ini dikatakan ‘re-entrant’ 1 program

dilaksanakan sebanyak 2 kali atau lebih secara serentak

O.S

Data Pengguna A

Compiler C (Berkongsi)

Data Pengguna BData Pengguna CData Pengguna D

PAPBPCPD

KONSEP PENGURUSAN DALAM OS

Kongsi Program* Syarat yang penting dalam konteks ini ialah :

- Kod-kod arahan mesin dalam ingatan mesti tidak boleh diubah semasa perlaksanaan- Kawasan data berasingan mesti dikekalkan semasa perlaksanaan

KONSEP PENGURUSAN DALAM OS

Pengurusan Proses Pengurusan Ingatan Pengurusan Input Output Pengurusan Sistem Fail

PENGURUSAN PROSES Bila berlaku proses perlaksanaan atau

menambah proses yang baru :* OS bina struktur data yang dipanggil Process Control Block (PCB)* OS sediakan ruang alamat untuk digunakan oleh

proses itu

PENGURUSAN PROSES MOD PERLAKSANAAN

* Mod Pengguna* Mod Sistem/Mod Kawalan/Mod Kernell

PROCESS CONTROL BLOCK (PCB) KEADAAN-KEADAAN PROSES

* Model Tiga Keadaan Proses* Model Lima Keadaan Proses

PENJADUALAN* Penjadualan Paras Tinggi (HLS)* Penjadualan Paras Tengah (ILS)* Penjadualan Paras Bawah (LLS)

POLISI PENJADUALAN PARAS BAWAH* Yang Dahulu Didahulukan (FCFS)* Kerja Ringkas Didahulukan (SJF)* Pusingan Robin (Round Robin)

PENGURUSAN PROSESMod Perlaksanaan

MOD PENGGUNA- Biasanya program-program pengguna dilaksanakan

dalam mod ini.

MOD SISTEM / MOD KAWALAN / MOD KERNEL- Hak keistimewaan lebih daripada mod pengguna- Mod Kernel Perisian mempunyai kawalan yang

lengkap terhadap pemproses dan segala arahan-arahannya, register dan ingatan.

PENGURUSAN PROSESProcess Control Block (PCB)

Struktur Data yang mengandungi maklumat penting proses iaitu :

i. Keadaan semasa proses ii. Pengenalan yg unik terhadap prosesiii. Penunjuk kepada induk prosesiv. Penunjuk kepada anak proses v. Keutamaan prosesvi. Penunjuk yg menunjuk proses dlm ingatan

vii. Penunjuk yg tentukan sumber bahan viii. Pendaftar yg mempunyai kawasan selamat

PENGURUSAN PROSESKeadaan-keadaan Proses

Terbahagi kepada 3 iaitu :i. Running : Program sedang dilaksanakanii. Ready : Boleh dilaksanakan tetapi kena tunggu

sementara proses lain dilaksanakaniii. Blocked : Tidak boleh dilaksanakan sehingga

mendapat i/o dari luar

Model Tiga Keadaan Proses Proses 1 : berlaku apabila proses

mendapati ianya tidak boleh dilaksanakan.

Proses 2 : berlaku apabila penjadualan mendapati proses tersebut telah berlangsung terlalu lama dan benarkan proses lain guna CPU.

Proses 3 : berlaku apabila proses lain sudah laksanakan program dan benarkan program yang pertama dilaksanakan.

Proses 4 : berlaku apabila masukan dari luar untuk proses yang sedang menunggu terjadi. Apabila tiada proses yang sedang dilaksanakan ketika itu, program akan terus dilaksanakan

Running

Blocked Ready

1 23

4

Kitar Hayat Proses

Blocked

Running

Ready

dispatchtimeout

i/o complete

i/o wait

TERMINATION

PROCESS ENTRY

Pengguna memulakan program

OS create proses dgn bina PCB

Proses diletak dalam ready queue (READY)

Proses diambil dari ready queue oleh penjadual(RUNNING)

Proses dilaksanakan (execute)

Proses dikembalikan ke ready queue

dan proses seterusnya diambil

Proses tamat (Terminate)

• (BLOCKED)• Proses diletakkan dlm blocked queue.• Proses seterusnya diambil dari ready queue• Apabila i/o tamat, proses diletak dlm ready queue

Tempoh masa tamat

Panggilan i/o

Model Lima Keadaan Proses Suspended :

Proses terhenti & tunggu hingga ia dipanggil oleh sistem atau pengguna

Resume : Proses yg terhenti tidak boleh aktif sehingga proses lain resume

Ready

Ready Suspended

Blocked Suspended

4

Blocked

Running

Masuk i/o selesai

resumesuspend

i/o selesai

suspend

resumesuspend

timeout

dispatch

i/o tunggu

* Suspended & resume penting kerana ia melancarkan perjalanan sistem

Model Lima Keadaan Proses Kenapa proses suspend & resume perlu ?

* jika sistem bermasalah* pengguna suspended proses kerana keputusan proses diragui* sistem terlampau digunakan* ingatan terpaksa dikosongkan utk proses lain yg lebih utama* proses suspend mungkin diperlukan kerana terdapat proses yang dicipta untuk memantau sistem pada masa-masa tertentu

PENGURUSAN PROSESKeadaan-keadaan Proses

Proses-proses yang di dalam keadaan Ready, Running atau Blocked boleh suspended

Ia mungkin berada dalam keadaan Ready Suspended dan Blocked Suspended.

Bagi proses yang sedang Running di suspended, ia akan berada dalam keadaan Ready suspended.

Proses yang suspended akan dipulihkan semula dan masuk ke keadaan Resume

Sistem Unipemproses : Proses yang running mungkin suspend dirinya

Sistem Multipemproses : Proses yang running mungkin disuspend oleh proses yang lain pada satu masa daripada pemproses yang lain

PENGURUSAN PROSESPenjadualan

Tugas-tugas Penjadualan adalah seperti berikut : Kenalkan proses baru kepada sistem

- Penciptaan proses yang utama dilakukan oleh penjadual.

Kumpulkan keutamaan bagi tiap-tiap proses- Penjadual akan tetapkan keutamaan sesuatu proses apabila ia dicipta

Implementasikan Polisi Penyediaan sumber bahan- Polisi berkaitan dgn usaha mengatasi masalah kebuntuan (deadlock) dan perseimbangan dalam sistem.- Pastikan tidak ada 1 sumber bahan pun yang tak digunakan atau terlampau digunakan.

PENGURUSAN PROSESPenjadualan

Beberapa kriteria untuk menilai keseimbangan : Keadilan

- Pastikan setiap proses gunakan pemproses yang adil Keberkesanan

- Bagi pastikan pemproses digunakan sepenuhnya

Masa tindakbalas- meminimumkan masa tindakbalas, terutamanya pd pengguna masa nyata

Meminimumkan masa yang diperlukan bagi pengguna Daya pemprosesan

- Maksimumkan bilangan kerja yang diproses per jam

PENGURUSAN PROSESPenjadualan

Deadlock

* Keadaan di mana 2 proses memohon untuk menggunakan sumber yang telah diperuntukkan kepada proses lain.* Apabila ini berlaku, 2 proses ini berada dalam keadaan menunggu untuk masa yang infiniti

Penyelesaian

* Proses terlebih dahulu tentukan sumber yang diperlukan* OS akan pilih 1 proses yang kecil dan keluarkan dari rantaian deadlock

PENGURUSAN PROSESPenjadualan

Pemproses 1

Sumber B

Pemproses 2

Sumber A

minta guna

mintaguna

DEADLOCK

PENGURUSAN PROSESPenjadualan

Terdapat 3 paras penjadualan : Penjadualan Paras Tinggi (HLS)

(High Level Schedule) Penjadualan Paras Tengah (ILS)

(Intermediate Level Schedule) Penjadualan Paras Bawah (LLS)

(Low Level Schedule)

PENGURUSAN PROSESPenjadualan

Penjadualan Paras Tinggi (High Level Schedule) - HLS

- Tentukan kerja (task) yang mana dibenarkan bersaing utk dapatkan sumber bahan- Apabila kerja tersebut telah mendapat sumber bahan, kerja itu dipanggil sebagai proses / kumpulan proses- Ia mengendalikan kerja-kerja yang baru supaya masuk ke dalam giliran- Ia memastikan sistem tidak overload - Jika pemberatan sistem ditahap maksima, maka proses baru akan diterima apabila proses semasa tamat- Jika pemberatan sistem di bawah maksima, proses yang sedang menunggu akan dipilih berdasarkan skima algoritma yang ditentukan

PENGURUSAN PROSESPenjadualan

Penjadualan Paras Tengah (Intermediate Level Schedule) - ILS

- Tentukan proses yang mana dulu bersaing utk dapatkan sumber bahan- Bertindakbalas terhadap sistem proses akan berada ditahap suspending dan resume semula jika berlaku system load / proses akan dikeluarkan ke cakera- Bila berada dalam cakera, proses adalah ready suspended atau blocked suspended. Proses blocked apabila ada i/o wait- ILS bertindak sebagai penimbal (buffer) di antara kemasukan

kerja baru dalam sistem dan assign kerja-kerja kepada CPU

PENGURUSAN PROSESPenjadualan

Penjadualan Paras Bawah (Low Level Schedule) - LLS

- Tentukan proses yang mana sedang ready diumpukkan oleh dispatcher dan ianya sentiasa diperlukan

- Beroperasi banyak kali dalam setiap minit/saat (kekerapan yang tinggi)- Dispatcher dipanggil apabila berlaku perubahan keadaan :

* satu sumber bahan diminta* satu sumber bahan dilepaskan* proses-proses yang baru tiba ke dalam sistem

PENGURUSAN PROSESPolisi Penjadualan Paras Bawah

2 Jenis penjadualan :

* Non Preemptive - Proses yang diambil dari giliran penjadualan akan dilayan sehingga selesai - Contoh : SJF, FIFO, HRRN

* Preemptive - Proses yang diambil mengikut tertib dan diperolehi

selama masa kuantum yang ditetapkan (Menyediakan pembahagian masa pada setiap proses dan beri masa yang sesuai dengan jumlah masa CPU)

- Contoh : Round Robin

PENGURUSAN PROSESPolisi Penjadualan Paras Bawah

Yang Dahulu Didahulukan – FCFS (First Come First Serve)

- Jenis Penjadualan Non Preemptive- Berdasarkan ketibaan proses ke dalam sistem dengan proses yang datang dahulu berada di hadapan- Cara paling mudah diimplemen dan kebanyakannya digunakan

dalam kehidupan seharian- Masalah : Proses kecil yang berada di belakang proses besar

terpaksa menunggu lama

PENGURUSAN PROSESPolisi Penjadualan Paras Bawah

Yang Dahulu Didahulukan – FCFS (First Come First Serve)

Berikan penyelesaian bagi beban kerja di bawah menggunakan FCFS

Proses Masa Layan (diperlukan)1 102 203 54 13

PENGURUSAN PROSESPolisi Penjadualan Paras Bawah

Yang Dahulu Didahulukan – FCFS (First Come First Serve)

Penyelesaian :

Proses Masa Menunggu1 02 103 304 35

Jumlah 75

P1 P2 P3 P40 10 30 35 48

Purata = 75 / 4= 18.75

PENGURUSAN PROSESPolisi Penjadualan Paras Bawah

Kerja Ringkas Didahulukan – SJF (Short Job First)

- Jenis Penjadualan Non Preemptive- Dilakukan dengan tetapkan giliran penjadualan disusun mengikut masa proses- Proses yang memerlukan masa yang singkat akan diberi keutamaan yang lebih tinggi masa menunggu proses kecil dikurangkan- Bagi mengelakkan proses besar dari tidak diproses langsung,

keutamaan bagi kerja-kerja besar ditambah setiap kali 1 kerja diproses

PENGURUSAN PROSESPolisi Penjadualan Paras Bawah

Kerja Ringkas Didahulukan – SJF (Short Job First)

Berikan penyelesaian bagi beban kerja di bawah menggunakan SJF

Proses Masa Layan (diperlukan)1 102 203 54 13

PENGURUSAN PROSESPolisi Penjadualan Paras Bawah

Kerja Ringkas Didahulukan – SJF (Short Job First)

Penyelesaian :

Proses Masa Menunggu1 52 283 04 15

Jumlah 48

P3 P1 P4 P20 5 15 28 48

Purata = 48 / 4= 12

PENGURUSAN PROSESPolisi Penjadualan Paras Bawah

Pusingan Robin (Round Robin)

- Jenis Penjadualan Preemptive- Setiap proses disusun dalam 1 giliran bulat tanpa menggunakan

sebarang keutamaan- 1 proses akan diambil mengikut tertibnya dan diperolehi selama

masa kuantum yang ditetapkan- Setiap kali masa kuantum, context switch berlaku

* context switch : tindakan memegang status semasa suatu proses yang tertahan sementara dan

permulaan proses yang lain

PENGURUSAN PROSESPolisi Penjadualan Paras Bawah

Pusingan Robin (Round Robin)

CPU

timeout

dispatch

giliran ready

• Proses yang baru dipilih berdasarkan First In First Out (FIFO)• Proses ini dilaksanakan berdasarkan masa kuantum (masa yang diperuntukkan dalam jangka masa yang ditetapkan.• Apabila melebihi masa kuantum, proses akan kembali ke giliran ready