PROSES PELANJUTAN KEMBALI (RESUME A PROCESS )
Jika sistem berfungsi secara buruk dan mungkin gagal
maka proses-proses dapat di- suspendagar di-resume setelah masalab
diselesaikan.
Pemakai yang ragu/khawatir mengenai basil proses dapat
men-suspend proses [bukanmembuang (abort) proses]. Saat pemakai yakin proses
akan berfungsi secara benar makadapat me-resume (melanjutkan kembali di instruksi
saat di-suspend) proses yang di-suspend.
Sebagai tanggapan terhadap fluktuasi jangka pendek
beban sistem, beberapa proses dapal di-suspend dan di- resume saat beban
kembali ke tingkat normal.5.
Induk terus
menerus untuk mengeksekusi secara bersama-sama dengan anaknya.
Induk menunggu
sampai sebagian dari anaknya telah diakhiri/terminasi.
Anak proses
adalah duplikat dari induk proses.
Anak proses
memiliki program yang terisikan didalamnya.
Penghancuran/Terminasi Proses
Jika sistem
berfungsi secara buruk dan mungkin gagal maka proses-proses
dapat disuspend
agar diresume setelah masalah diselesaikan. Contoh :Pada proses pencetakan,
bila tiba-tiba kerta habis maka proses disuspend. Setelah kertas dimasukkan
kembali, proses pun dapat diresume.
Pemakai yang
ragu/khawatir mengenai hasil prose dapat mensuspend proses (bukan membuang (abort)
proses). Saat pemakai yakin proses akan berfungsi secara benar maka dapat
me-resume (melanjutkan kembali di instruksi saat disuspend) proses yang
disuspend.
Sebagai
tanggapan terhadap fluktuasi jangka pendek beban sistem, beberapa proses dapat
disuspend dan diresume saat beban kembali ke tingkat normal.
Suspended ready
Suspended blocked
Pada
sistem monoprocessor, proses running dapat mensuspend dirinya sendiri
karena tak ada proses lain yang juga running yang dapat memerintahkan suspend.
Pada
sistem multiprocessor, proses running dapat disuspend proses running lain
pada pemroses berbeda. Proses ready hanya dapat di suspend oleh proses lain.
Pada proses
blocked terdapat transisi menjadi suspendedblocked. Pilihan ini dirasa
aneh.Apakah tidak cukup menunggu selesainya operasi masukan/keluaran
atau kejadian yangmembual proses ready atau suspendedready? Bukankah
state blocked, readyblocked,suspendedblocked sama-sama
tidak mendapatjatah waktu pemroses ?Kenapa dibedakan ?JAWABAN
Proses blocked
di-suspend sistem atau secara manual menjadi suspendedblocked.
Bilaakhirnya operasi masukan/keluaran berakhir maka segera proses
suspendedblockedmengalami transisi. Karena resume dan suspend mempunyai
prioritas tinggi maka transisisegera dilakukan. Suspend dan resume
dapat digunakan untuk menyeimbangkan bebansistem saat mengalami lonjakan
di atas normal.7.
Proses dapat
berubah status dan berpindah dari satu antrian ke antrian yang laina.
Proses dengan
status “ready” berada di ReadyQueue
Menurut Tanenbaum, Diagram State terdiri dari 3 keadaan:
Menurut Tanenbaum
Ready: proses diberhentikan sementara karena menunggu proses lain untuk
dieksekusi.
Running: proses dijalankan dengan menggunakan CPU pada suatu waktu.
Blocked: tidak dijalankan sampai
event dari luar yang berhubungan dengan proses tersebut terjadi.
Menurut Silberschatz, Diagram
State terdiri dari 5 keadaan
1. New: status yang dimiliki pada saat proses baru saja dibuat.
2. Running: status yang dimiliki pada saat instruksi-instruksi dari sebuah
proses dieksekusi.
3. Waiting: status yang dimiliki pada saat proses menunggu suatu event
(contohnya: proses I/O).
4. Ready: status yang dimiliki pada saat proses siap untuk dieksekusi oleh prosesor.
5. Terminated: status yang dimiliki pada saat proses telah selesai dieksekusi.
Operasi-operasi pada Proses
> Penciptaan proses (create a process).
> Penghancuran/terminasi proses (destroy a process).
> Penundaan proses (suspend a process).
> Pelanjutan kembali proses (resume a process).
> Penjadwalan proses (schedule a process).
> Pengubahan prioritas proses (change schedule)
> Mem-block proses (blocking a process)
> Interaksi proses
Suatu proses dapat membuat beberapa proses baru, melalui
sistem pemanggilan pembuatan proses, selama jalur eksekusi. Pembuatan proses
dinamakan induk proses, sebagaimana proses baru di sebut anak dari proses
tersbut. Tiap proses baru tersebut dapat membuat proses lainnya, membentuk
suatu pohon proses.
Secara umum, suatu proses akan
memerlukan sumber tertentu (waktu CPU, memori, berkas, perangkat I/O) untuk
menyelesaikan tugasnya. Ketika suatu proses membuat sebuah subproses, sehingga
subproses dapat mampu untuk memperoleh sumbernya secara langsung dari sistem
operasi. Induk mungkin harus membatasi sumber diantara anaknya, atau induk
dapat berbagi sebagian sumber (seperti memori berkas) diantara beberapa dari
anaknya. Membatasi suatu anak proses menjadi subset sumber daya induknya
mencegah proses apa pun dari pengisian sistem yang telalu banyak dengan
menciptakan terlalu banyak subproses.
Sebagai tambahan pada berbagai sumber fisik dan logis bahwa suatu proses
diperoleh ketika telah dibuat, data pemula (masukan) dapat turut lewat oleh
induk proses sampai anak proses. Sebagai contoh, anggap suatu proses yang
fungsinya untuk menunjukkan status sebuah berkas, katakan F1, pada layar
terminal. Ketika dibuat, akan menjadi sebagai sebuah masukan dari proses
induknya, nama dari berkas F1, dan akan mengeksekusi menggunakan kumpulan data
tersebut untuk memperoleh informasi yang diinginkan. Proses tersebut juga
mendapat nama dari perangkat luar. Sebagian sistem operasi melewati
sumber-sumber ke anak proses. Pada sistem tersebut, proses baru bisa mendapat
dua berkas terbuka yang baru, F1 dan perangkat terminal dan hanya perlu untuk
mentransfer data antara kedua berkas tersebut.
Ketika suatu proses membuat proses baru, dua kemungkinan ada dalam term
eksekusi:
Juga ada dua kemungkinan dalam term dari address space pada proses
baru:
Penghancuran proses melibatkan
pembebasan proses dari sistem,yaitu :
· sumber daya – sumber daya yang
dipakai dikembalikan
· proses dihancurkan dari
senarai atau tabel sistem
· PCB dihapus (ruang
memori PCB dikembalikan ke pool memori bebas)
Penghancuran lebih rumit bila proses
telah menciptakan prose-proses lain.terdapat 2 pendekatan,yaitu:
- Pada beberapa
sistem,proses-proses turunan dihancurkan saat proses induk di hancurkan secara
otomatis.
- Beberapa sistem lain
menganggap proses anak independen terhadap proses induk sehingga proses anak
tidak secara otomatis di hancurkan saat proses induk di hancurkan.
Alasan-alasan
penghancuran proses (penyebab terminasi):
1.selesainya
proses secara normal
Proses mengeksekusi panggilan layanan sistem operasi untuk menandakan bahwa
proses telah berjalan secara lengkap.
2.batas waktu terlewati
Proses telah berjalan melebihi batas waktu total yg
dispesifikasikan.
3.Memori tidak tersedia
Proses memerlukan memori lebih banyak dari pada yang dapat disediakan sistem.
4.Pelanggaran terhadap batas memori
Proses mencoba mengakses lokasi memori yang tidak di
izinkan di akses
5.Terjadi kesalahan karena pelanggaran proteksi
Proses berusaha menggunakan sumber daya atau file yang tidak di ijinkan di
pakainya,atau proses mencoba menggunakannya tidak untuk peruntukkannya,seperti
menulis file read-only.
6.Terjadi kesalahan aritmatika
Proses mencoba perhitungan terlarang,seperti pembagiaan dengan nol atau mencoba
menyimpan angka yang lebih besar dari pada yang di akomodasi oleh perangkat
keras.
7.Waktu tel;ah kadaluwarsa
Proses telah menunggu lebih lama dari pada maksimum yang di tentukan untuk
terjadinya suatu kejadian spesifik.
8.Terjadi kegagalan masukan/keluaran
Kesalahan muncul pada masukan atau keluaran,seperti ketidakmampuan menemukan
file,kegagalan membaca atau menulis setelah sejumlah maksimum percobaan di
tentukan (misal : area rusak didapatkan pada disk,atau operasi tak valis seperti
membaca dari line printer).
Penundaan
(suspend)
adalah operasi penting dan telah diterapkan dengan beragam cara.
Penundaan biasanya berlangsung singkat. Penundaan sering dilakukan sistem untuk
memindahkan proses-proses tertentu guna mereduksi beban sistem selama beban
puncak.
Proses yang ditunda (suspended blocked) tidak berlanjut sampai proses lain
meresume. Untuk jangka panjang, sumber daya-sumber daya proses dibebaskan
(dilucuti). Keputusan membebaskan sumber daya-sumber daya bergantung sifat masing-masing
sumber daya. Memori utama seharusnya segera dibebaskan begitu proses tertunda
agar dapat dimanfaatkan proses lain. Resuming (pengaktifan kembali) proses,
yaitu menjalankan proses dari titik (instruksi) dimana proses ditunda.
Operasi suspend dan resume penting, sebab :
Dua state baru dimasukkan sehingga membentuk diagram 5 state, yaitu :
Penundaan dapat diinisialisasi oleh proses itu sendiri atau proses lain.
PROSES
PELANJUTAN KEMBALI (RESUME A PROCESS )
· Jika sistem berfungsi secara
buruk dan mungkin gagal maka proses-proses dapat di- suspendagar di-resume
setelah masalab diselesaikan.
· Pemakai yang ragu/khawatir
mengenai basil proses dapat men-suspend proses [bukanmembuang (abort)
proses]. Saat pemakai yakin proses akan berfungsi secara benar makadapat
me-resume (melanjutkan kembali di instruksi saat di-suspend) proses yang
di-suspend.
· Sebagai tanggapan terhadap
fluktuasi jangka pendek beban sistem, beberapa proses dapal di-suspend dan di-
resume saat beban kembali ke tingkat normal.5.
PROSES BLOCKED
"Karena penyelesaian operasi masukan/keluaran bagi proses blocked mungkin
tak pernahterjadi atau dalam waktu tak terdefinisikan sehingga lebih
baik di-suspend agar sumber daya-sumber daya yang dialokasikan
untuk proses tersebut dapat digunakan proses-proses lain."
MENJADWALKAN
PROSES
Menunggu giliran/dipilih oleh scheduler => menggunakan CPUb.
2. Selama eksekusi (status
“run”) events yang dapat terjadi:
I/O request => I/O wait berada pada DeviceQueueii.
Create “child” proses => Jalankan proses “child”, tunggu sampai proses
selesai
(wait)iii.
Time slice expired => Waktu pemakaian CPU habis, interrupt oleh
scheduler,proses akan berpindah ke ReadyQueue8.
KOMUNIKASI
ANTAR PROSES
—
(1)(
Inter Process Communinication / IPC)
x
Menurut Tanenbaum, Diagram State terdiri dari 3 keadaan:
Menurut Tanenbaum
Ready: proses diberhentikan sementara karena menunggu proses lain untuk dieksekusi.
Running: proses dijalankan dengan menggunakan CPU pada suatu waktu.
Blocked: tidak dijalankan sampai event dari luar yang berhubungan dengan proses tersebut terjadi.
Menurut Silberschatz, Diagram State terdiri dari 5 keadaan
1. New: status yang dimiliki pada saat proses baru saja dibuat.
2. Running: status yang dimiliki pada saat instruksi-instruksi dari sebuah proses dieksekusi.
3. Waiting: status yang dimiliki pada saat proses menunggu suatu event (contohnya: proses I/O).
4. Ready: status yang dimiliki pada saat proses siap untuk dieksekusi oleh prosesor.
5. Terminated: status yang dimiliki pada saat proses telah selesai dieksekusi.
Operasi-operasi pada Proses
> Penciptaan proses (create a process).
> Penghancuran/terminasi proses (destroy a process).
> Penundaan proses (suspend a process).
> Pelanjutan kembali proses (resume a process).
> Penjadwalan proses (schedule a process).
> Pengubahan prioritas proses (change schedule)
> Mem-block proses (blocking a process)
> Interaksi proses
Suatu proses dapat membuat beberapa proses baru, melalui sistem pemanggilan pembuatan proses, selama jalur eksekusi. Pembuatan proses dinamakan induk proses, sebagaimana proses baru di sebut anak dari proses tersbut. Tiap proses baru tersebut dapat membuat proses lainnya, membentuk suatu pohon proses.
Secara umum, suatu proses akan memerlukan sumber tertentu (waktu CPU, memori, berkas, perangkat I/O) untuk menyelesaikan tugasnya. Ketika suatu proses membuat sebuah subproses, sehingga subproses dapat mampu untuk memperoleh sumbernya secara langsung dari sistem operasi. Induk mungkin harus membatasi sumber diantara anaknya, atau induk dapat berbagi sebagian sumber (seperti memori berkas) diantara beberapa dari anaknya. Membatasi suatu anak proses menjadi subset sumber daya induknya mencegah proses apa pun dari pengisian sistem yang telalu banyak dengan menciptakan terlalu banyak subproses.
Sebagai tambahan pada berbagai sumber fisik dan logis bahwa suatu proses diperoleh ketika telah dibuat, data pemula (masukan) dapat turut lewat oleh induk proses sampai anak proses. Sebagai contoh, anggap suatu proses yang fungsinya untuk menunjukkan status sebuah berkas, katakan F1, pada layar terminal. Ketika dibuat, akan menjadi sebagai sebuah masukan dari proses induknya, nama dari berkas F1, dan akan mengeksekusi menggunakan kumpulan data tersebut untuk memperoleh informasi yang diinginkan. Proses tersebut juga mendapat nama dari perangkat luar. Sebagian sistem operasi melewati sumber-sumber ke anak proses. Pada sistem tersebut, proses baru bisa mendapat dua berkas terbuka yang baru, F1 dan perangkat terminal dan hanya perlu untuk mentransfer data antara kedua berkas tersebut.
Ketika suatu proses membuat proses baru, dua kemungkinan ada dalam term eksekusi:
Juga ada dua kemungkinan dalam term dari address space pada proses baru:
Penghancuran proses melibatkan pembebasan proses dari sistem,yaitu :
· sumber daya – sumber daya yang dipakai dikembalikan
· proses dihancurkan dari senarai atau tabel sistem
· PCB dihapus (ruang memori PCB dikembalikan ke pool memori bebas)
Penghancuran lebih rumit bila proses telah menciptakan prose-proses lain.terdapat 2 pendekatan,yaitu:
- Pada beberapa sistem,proses-proses turunan dihancurkan saat proses induk di hancurkan secara otomatis.
- Beberapa sistem lain menganggap proses anak independen terhadap proses induk sehingga proses anak tidak secara otomatis di hancurkan saat proses induk di hancurkan.
Alasan-alasan penghancuran proses (penyebab terminasi):
1.selesainya proses secara normal
Proses mengeksekusi panggilan layanan sistem operasi untuk menandakan bahwa proses telah berjalan secara lengkap.
2.batas waktu terlewati
Proses telah berjalan melebihi batas waktu total yg dispesifikasikan.
3.Memori tidak tersedia
Proses memerlukan memori lebih banyak dari pada yang dapat disediakan sistem.
4.Pelanggaran terhadap batas memori
Proses mencoba mengakses lokasi memori yang tidak di izinkan di akses
5.Terjadi kesalahan karena pelanggaran proteksi
Proses berusaha menggunakan sumber daya atau file yang tidak di ijinkan di pakainya,atau proses mencoba menggunakannya tidak untuk peruntukkannya,seperti menulis file read-only.
6.Terjadi kesalahan aritmatika
Proses mencoba perhitungan terlarang,seperti pembagiaan dengan nol atau mencoba menyimpan angka yang lebih besar dari pada yang di akomodasi oleh perangkat keras.
7.Waktu tel;ah kadaluwarsa
Proses telah menunggu lebih lama dari pada maksimum yang di tentukan untuk terjadinya suatu kejadian spesifik.
8.Terjadi kegagalan masukan/keluaran
Kesalahan muncul pada masukan atau keluaran,seperti ketidakmampuan menemukan file,kegagalan membaca atau menulis setelah sejumlah maksimum percobaan di tentukan (misal : area rusak didapatkan pada disk,atau operasi tak valis seperti membaca dari line printer).
Penundaan (suspend)
adalah operasi penting dan telah diterapkan dengan beragam cara. Penundaan biasanya berlangsung singkat. Penundaan sering dilakukan sistem untuk memindahkan proses-proses tertentu guna mereduksi beban sistem selama beban puncak.
Proses yang ditunda (suspended blocked) tidak berlanjut sampai proses lain meresume. Untuk jangka panjang, sumber daya-sumber daya proses dibebaskan (dilucuti). Keputusan membebaskan sumber daya-sumber daya bergantung sifat masing-masing sumber daya. Memori utama seharusnya segera dibebaskan begitu proses tertunda agar dapat dimanfaatkan proses lain. Resuming (pengaktifan kembali) proses, yaitu menjalankan proses dari titik (instruksi) dimana proses ditunda.
Operasi suspend dan resume penting, sebab :
Dua state baru dimasukkan sehingga membentuk diagram 5 state, yaitu :
Penundaan dapat diinisialisasi oleh proses itu sendiri atau proses lain.
PROSES PELANJUTAN KEMBALI (RESUME A PROCESS )
· Jika sistem berfungsi secara buruk dan mungkin gagal maka proses-proses dapat di- suspendagar di-resume setelah masalab diselesaikan.
· Pemakai yang ragu/khawatir mengenai basil proses dapat men-suspend proses [bukanmembuang (abort) proses]. Saat pemakai yakin proses akan berfungsi secara benar makadapat me-resume (melanjutkan kembali di instruksi saat di-suspend) proses yang di-suspend.
· Sebagai tanggapan terhadap fluktuasi jangka pendek beban sistem, beberapa proses dapal di-suspend dan di- resume saat beban kembali ke tingkat normal.5.
PROSES BLOCKED
"Karena penyelesaian operasi masukan/keluaran bagi proses blocked mungkin tak pernahterjadi atau dalam waktu tak terdefinisikan sehingga lebih baik di-suspend agar sumber daya-sumber daya yang dialokasikan untuk proses tersebut dapat digunakan proses-proses lain."
MENJADWALKAN PROSES
Menunggu giliran/dipilih oleh scheduler => menggunakan CPUb.
2. Selama eksekusi (status
“run”) events yang dapat terjadi:
I/O request => I/O wait berada pada DeviceQueueii.
Create “child” proses => Jalankan proses “child”, tunggu sampai proses selesai
(wait)iii.
Time slice expired => Waktu pemakaian CPU habis, interrupt oleh scheduler,proses akan berpindah ke ReadyQueue8.
KOMUNIKASI ANTAR PROSES
—
(1)(
Inter Process Communinication / IPC)
Tidak ada komentar:
Posting Komentar