Kamis, 31 Maret 2011

Tugas Sistem Operasi Bagian II

Process control block
Process Control Block (PCB) mengandung banyak bagian dari informasi yang berhubungan dengan sebuah proses yang spesifik, termasuk hal-hal di bawah ini:
1.     Status Proses
2.    Program counter
3.    CPU Register
4.    Informasi Manajemen Memori
5.    Informasi pencatatan


Pengertian thread?
Thread adalah unit dasar dari penggunaan CPU, yang terdiri dari Thread_ID, program counter,register set,  dan stack.
Sebuah thread berbagi code section, data section, dan sumber daya sistem operasi dengan Thread lain yang dimiliki oleh proses yang sama . Thread juga sering disebut lightweight process.

Penjelasan model tread many to one, one to on, & many to many
     Many to One Model memetakan beberapa user-level threads ke satu kernel threads.
     



           Contohnya yaitu   SolarisGreen Threads dan GNU Portable Threads
 Kelemahan:    Satu block semua block One to One model memetakan setiap user thread ke kernel thread.

Ini adalah contoh gambar dari one to one

          Contontohnya pada penggunaan
            Windows NT/XP/2000
             Linux
             Solaris 9 and later
             Keuntungannya yaitu adanya Konkurensi, Butuh space, waktu, Tidak blocking, Terbatas


Many to many model memetakan banyak user-level thread ke kernel thread yang lebih sedikit atau sama.


User dapat membuat banyak thread, masing2 kernel thread dpt jalan di lingkungan multiprocessor
                
Contohnya Solaris prior to version 9 dan Windows NT/2000 with the ThreadFiber packa



Fungsi  dari Fork
fork memiliki fungsi untuk menduplikasi proses dimana proses anak yang dihasilkan bersifat independent.
Penjadwalan preemptive dan non preemptive!
Penjadwalan Preemptive merupakan proses yg sdg dieksekusi dpt diinterupsi dan dipaksa utk menyerahkan CPU.
Penjadwalan Non-preemptive
Proses yg sdg dieksekusi menggunakan CPU hingga proses tsb menyerahkannya secara sukarela

Terjadinya Deadlock.
Deadlock ialah suatu kondisi dimana proses tidak berjalan lagi atau pun tidak ada komunikasi lagi antar proses. Deadlock disebabkan karena proses yang satu menunggu sumber daya yang sedang dipegang oleh proses lain yang sedang menunggu sumber daya yang dipegang oleh proses tersebut. Dengan kata lain setiap proses dalam set menunggu untuk sumber yang hanya dapat dikerjakan oleh proses lain dalam set yang sedang menunggu.
Proses P1 Proses P2
..... .....
..... .....
Receive (P2); Receive (P1);
..... .....
..... .....
Send (P2, M1); Send (P1, M2);
Deadlock selalu tidak lepas dari sumber daya, seperti kita lihat dari contoh-contoh diatas, bahwa hampir seluruhnya merupakan masalah sumber daya yang digunakan bersama-sama. Oleh karena itu, kita juga perlu tahu tentang jenis sumber daya, yaitu: sumber daya dapat digunakan lagi berulang-ulang dan sumber daya yang dapat digunakan dan habis dipakai atau dapat dikatakan sumber daya sekali pakai.
empat kondisi yang dapat mengakibatkan terjadinya Deadlock, yaitu:

1.     Mutual Eksklusif: hanya ada satu proses yang boleh memakai sumber daya, dan proses lain yang ingin memakai sumber daya tersebut harus menunggu hingga sumber daya tadi dilepaskan atau tidak ada proses yang memakai sumber daya tersebut.
2.    Memegang dan menunggu: proses yang sedang memakai sumber daya boleh meminta sumber daya lagi maksudnya menunggu hingga benar-benar sumber daya yang diminta tidak dipakai oleh proses lain, hal ini dapat menyebabkan kelaparan sumber daya sebab dapat saja sebuah proses tidak mendapat sumber daya dalam waktu yang lama
3.    Tidak ada Preemption: sumber daya yang ada pada sebuah proses tidak boleh diambil begitu saja oleh proses lainnya. Untuk mendapatkan sumber daya tersebut, maka harus dilepaskan terlebih dahulu oleh proses yang memegangnya, selain itu seluruh proses menunggu dan mempersilahkan hanya proses yang memiliki sumber daya yang boleh berjalan
4.    Circular Wait: kondisi seperti rantai, yaitu sebuah proses membutuhkan sumber daya yang dipegang proses berikutnya


Cara menanggulangi Deadlock
1.     Mengabaikan masalah Deadlock.
2.    Mendeteksi dan memperbaiki
3. Penghindaran yang terus menerus dan pengalokasian yang baik dengan menggunakan protokol untuk memastikan sistem tidak pernah memasuki keadaan Deadlock. Yaitu dengan Deadlock avoidance sistem untuk mendata informasi tambahan tentang proses mana yang akan meminta dan menggunakan sumber daya.
4.    Pencegahan yang secara struktur bertentangan dengan empat kondisi terjadinya Deadlock dengan Deadlock prevention sistem untuk memasti- kan bahwa salah satu kondisi yang penting tidak dapat menunggu.





0 komentar:

Posting Komentar

About me

Foto saya
Sistem Komputer 09 Universitas Sriwijaya