e4161 sistem komputer & aplikasi
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 PresentationTRANSCRIPT
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