SISTEM OPERASI : PROSESS CONTROL BLOCK
11/27/2018
Edit
PROSESS CONTROL BLOCK
Process Control Block adalah informasi-informasi lain yang diperlukan SO untuk mengendalikan dan koordinasi beragam proses aktif, termasuk ini:
- Keadaan proses: Keadaan mungkin, new ,ready ,running, waiting, halted, dan juga banyak lagi.
- Program counter: Counter mengindikasikan address dari perintah selanjutnya untuk dijalankan untuk ditambah code information pada kondisi apapun. Besertaan dengan program counter, keadaan/ status informasi harus disimpan ketika gangguan terjadi, untuk memungkinkan proses tersebut berjalan/bekerja dengan benar setelahnya.
- Informasi manajemen memori: Informasi ini dapat termasuk suatu informasi sebagai nilai dari dasardan batas register. tabel page/ halaman, atau tabel segmen tergantung pada sistem memori yangdigunakan oleh sistem operasi (ch 9).
- Informasi pencatatan: Informasi ini termasuk jumlah dari CPU dan waktu riil yang digunakan bataswaktu, jumlah akun, jumlah job atau proses, dan banyak lagi.
- Informasi status I/O: Informasi termasuk daftar dari perangkat I/O yang di gunakan pada proses ini,suatu daftar open file dan banyak lagi.
- PCB hanya berfungsi sebagai tempat menyimpan/gudang untuk informasi apapun yang dapatbervariasi dari prose ke proses.proses ini.
- CPU register: Register bervariasi dalam jumlah dan jenis, tergantung pada rancangan komputer.Register tersebut termasuk accumulator, index register, stack pointer, general-puposes register,
Element-elemen PCB antara lain:
Identifikasi Proses yaitu Identifier numerik yang meliputi
- Identifier proses
- Identifier proses yang menciptakan
- Identifier pemakai
Informasi Status Pemroses
Informasi Status Pemroses yang meliputi:
- Register-register yang terlihat pemakai yaitu Register-register yang dapat ditunjuk instruksi bahasa assembly untuk diproses pemroses
- Register-register kendali dan status yaitu Register-register yang digunakan untuk mengendalikan operasi pemroses, a.l. :
- Program counter
- PSW, dsb. - Pointer stack yaitu Tiap proses mempunyai satu stack atau lebih. Stack digunakan untuk parameter atau alamat prosedur pemanggil dan system call. Pointer stack menunjuk posisi paling atas dari stack
Informasi Kendali Pemroses
Informasi Kendali Pemroses meliputi
- Informasi penjadwalan dan status yaitu Informasi-informasi yang dipakai untuk menjalankan fungsi penjadwalan a.l :
- Status proses. Mendefinisikan status proses (running,ready,block, dsb)
- Prioritas. Menjelaskan prioritas proses
- Informasi berkaitan penjadwalan. Informasi ini seperti lama menunggu, lama proses terakhir dieksekusi dsb.
- Kejadian (Event). Identitas kejadian yang ditunggu proses - Penstrukturan data yaitu Suatu proses dapat dikaitkan dengan proses lain dalam satu antrian atauring, atau struktur lainnya. PCB harus memiliki pointer untuk mendukung struktur ini.
- Komunikasi antar proses yaitu Beragam flag, sinyal dan pesan dapat diasosiasikan dengan komunikasi antara dua proses yang terpisah. Informasi ini disimpan dalam PCB
- Kewenangan proses yaitu Proses dapat mempunyai kewenangan berkaitan dengan memori dan tipe instruksi yang dapat dijalankan
- Manajemen memori Bagian ini berisi pointer ke tabel segmen atau page yang menyatakan memori virtual proses
- Kepemilikan dan utilisasi sumber daya yaitu Sumber daya yang dikendalikan proses harus diberi tanda, misalnya :
- Berkas yang dibuka
- Pemakaian pemroses
- Pemakaian sumberdaya lainnya
Informasi yang terdapat pada setiap proses meliputi :
- Status Proses = New, ready, running, waiting dan terminated.
- Program Counter = Menunjukkan alamat berikutnya yang akan dieksekusi oleh proses tersebut.
- CPU Registers = Register bervariasi tipe dan jumlahnya tergantung arsitektur komputer yang bersangkutan. Register-register tersebut terdiri-atas: accumulator, index register, stack pointer, dan register serbaguna dan beberapa informasi tentang kode kondisi. Selama Program Counter berjalan, status informasi harus disimpan pada saat terjadi interrupt. Gambar 3-3 menunjukkan switching proses dari satu proses ke proses berikutnya.
- Informasi Penjadwalan CPU = Informasi tersebut berisi prioritas dari suatu proses, pointer ke antrian penjadwalan, dan beberapa parameter penjadwalan yang lainnya.
- Informasi Manajemen Memori = Informasi tersebut berisi nilai (basis) dan limit register, page table, atau segment table tergantung pada sistem memory yang digunakan oleh SO.
- Informasi Accounting = Informasi tersebut berisi jumlah CPU dan real time yang digunakan, time limits, account numbers, jumlah job atau proses, dll
- Informasi Status I/O = Informasi tersebut berisi deretan I/O device (seperti tape driver) yang dialokasikan untuk proses tersebut, deretan file yang dibuka, dll.
Context Switch
Context switch adalah komputasi proses untuk menyimpan dan memulihkan keadaan ( konteks ) dari sebuah CPU sehingga eksekusi yang dapat dilanjutkan dari titik yang sama di lain waktu. Hal ini memungkinkan beberapa proses untuk berbagi satu CPU. Context switch adalah fitur penting sebagai multitasking sistem operasi .
Ada tiga situasi di mana sebuah context switch perlu terjadi, yaitu :
- Mutitasking : Paling sering, dalam beberapa penjadwalan skema, satu proses perlu diaktifkan keluar dari CPU sehingga proses lain dapat berjalan. Dalam preemptive multitasking sistem operasi, scheduler memungkinkan setiap tugas untuk menjalankan untuk beberapa waktu tertentu, disebut sebagai irisan waktu. Jika suatu proses tidak sukarela hasil CPU (misalnya, dengan melakukan I / O operasi), timer kebakaran mengganggu, dan jadwal sistem operasi proses lain untuk eksekusi sebagai gantinya. Hal ini memastikan bahwa CPU tidak dapat dimonopoli oleh satu aplikasi prosesor-intensif.
- Penanganan Interrup : Ini berarti bahwa jika permintaan CPU data dari disk, misalnya, tidak perlu sibuk-menunggu sampai selesai membaca, ia dapat mengeluarkan permintaan tersebut dan melanjutkan dengan beberapa eksekusi lain, ketika membaca selesai, CPU dapat terganggu dan disajikan dengan membaca. Untuk menyela, sebuah program disebut interrupt handler terinstal, dan itu adalah interrupt handler yang menangani interrupt dari disk.
- User dan Kernel Mode Switching : Ketika transisi antara mode pengguna dan mode kernel diperlukan dalam suatu sistem operasi, sebuah context switch tidak diperlukan, sebuah transisi mode tidak dengan sendirinya sebuah context switch. Namun, tergantung pada sistem operasi, sebuah context switch juga dapat terjadi pada saat ini.