Jelaskan secara singkat pengertian dan fungsi PCB

Agar setiap program berpartisipasi dalam eksekusi bersamaan, termasuk data dapat berjalan secara independen, struktur data khusus harus dikonfigurasi untuk itu di sistem operasi, yang disebut blok kontrol proses (PCB, Blok Kontrol Proses). Ada korespondensi satu-ke-satu antara proses dan PCB, dan proses pengguna tidak dapat dimodifikasi.

ipcb

Peran blok kontrol proses PCB:

Untuk memudahkan deskripsi sistem dan manajemen operasi proses, struktur data secara khusus ditentukan untuk setiap proses di inti OS-Process Control Block PCB (Process Control Block). Sebagai bagian dari entitas proses, PCB mencatat semua informasi yang dibutuhkan oleh sistem operasi untuk menggambarkan situasi proses saat ini dan mengelola operasi proses. Ini adalah struktur data yang tercatat paling penting dalam sistem operasi. Peran PCB adalah untuk membuat program (termasuk data) yang tidak dapat berjalan secara independen dalam lingkungan multi-program menjadi unit dasar yang dapat berjalan secara independen, suatu proses yang dapat dijalankan secara bersamaan dengan proses lainnya.

(2) PCB dapat mewujudkan mode operasi intermiten. Dalam lingkungan multi-program, program berjalan dalam mode operasi intermiten stop-and-go. Ketika suatu proses ditangguhkan karena pemblokiran, itu harus menyimpan informasi situs CPU saat sedang berjalan. Setelah memiliki PCB, sistem dapat menyimpan informasi situs CPU di PCB dari proses yang terputus untuk digunakan saat situs CPU dipulihkan saat proses dijadwalkan untuk dieksekusi kembali. Oleh karena itu, dapat diperjelas lagi bahwa dalam lingkungan multi-program, sebagai program statis dalam pengertian tradisional, karena tidak memiliki sarana untuk melindungi atau menyimpan situs operasinya sendiri, ia tidak dapat menjamin reproduktifitas hasil operasinya. , sehingga kehilangan operasinya. makna.

(3) PCB menyediakan informasi yang dibutuhkan untuk manajemen proses. Ketika penjadwal menjadwalkan proses untuk dijalankan, penjadwal hanya dapat menemukan program dan data yang sesuai sesuai dengan penunjuk alamat awal program dan data yang direkam dalam PCB proses di memori atau penyimpanan eksternal; selama proses berjalan, ketika file perlu diakses Ketika file atau perangkat I/O dalam sistem, mereka juga perlu mengandalkan informasi di PCB. Selain itu, menurut daftar sumber daya di PCB, semua sumber daya yang diperlukan untuk proses dapat dipelajari. Dapat dilihat bahwa selama seluruh siklus hidup suatu proses, sistem operasi selalu mengontrol dan mengelola proses sesuai dengan PCB.

(4) PCB menyediakan informasi yang dibutuhkan untuk penjadwalan proses. Hanya proses dalam keadaan siap yang dapat dijadwalkan untuk dieksekusi, dan PCB memberikan informasi tentang keadaan proses tersebut. Jika proses dalam keadaan siap, sistem memasukkannya ke dalam antrian siap proses dan menunggu penjadwal untuk menjadwalkan ; selain itu, seringkali perlu mengetahui informasi lain tentang proses saat penjadwalan. Misalnya, dalam algoritma penjadwalan prioritas, Anda perlu mengetahui proses Prioritas. Dalam beberapa algoritma penjadwalan yang lebih adil, Anda juga perlu mengetahui waktu tunggu proses dan peristiwa yang telah dieksekusi.

(5) PCB mewujudkan sinkronisasi dan komunikasi dengan proses lain. Mekanisme sinkronisasi proses digunakan untuk mewujudkan operasi terkoordinasi dari berbagai proses. Ketika mekanisme semaphore diadopsi, itu membutuhkan semaphore yang sesuai untuk sinkronisasi diatur dalam setiap proses. PCB juga memiliki area atau penunjuk antrian komunikasi untuk proses komunikasi.

Informasi dalam blok kontrol proses:

Di blok kontrol proses, ini terutama mencakup informasi berikut:

(1) Pengidentifikasi proses: Pengidentifikasi proses digunakan untuk secara unik menunjukkan suatu proses. Sebuah proses biasanya memiliki dua jenis pengidentifikasi: pengidentifikasi eksternal. Untuk memfasilitasi proses pengguna untuk mengakses proses, pengenal eksternal harus ditetapkan untuk setiap proses. Ini disediakan oleh pencipta dan biasanya terdiri dari huruf dan angka. Untuk menggambarkan hubungan keluarga dari proses, ID proses induk dan ID proses anak juga harus ditetapkan. Selain itu, ID pengguna dapat diatur untuk menunjukkan pengguna yang memiliki proses. Pengidentifikasi internal. Untuk memfasilitasi penggunaan proses oleh sistem, pengenal internal ditetapkan untuk proses di OS, yaitu, setiap proses diberi pengenal digital unik, yang biasanya berupa nomor seri suatu proses.

(2) Status prosesor: Informasi status prosesor juga disebut konteks prosesor, yang terutama terdiri dari isi berbagai register prosesor. Register-register ini meliputi: Register tujuan umum, juga dikenal sebagai register yang terlihat oleh pengguna, yang dapat diakses oleh program pengguna dan digunakan untuk menyimpan informasi sementara. Di sebagian besar prosesor, ada 8 hingga 32 register tujuan umum. Di komputer berstruktur RISC Ada lebih dari 100; Penghitung instruksi, yang menyimpan alamat instruksi berikutnya yang akan diakses; Kata status program PSW, yang berisi informasi status, seperti kode kondisi, mode eksekusi, flag mask interupsi, dll.; Penunjuk tumpukan pengguna, Ini berarti bahwa setiap proses pengguna memiliki satu atau beberapa tumpukan sistem terkait, yang digunakan untuk menyimpan parameter proses dan panggilan sistem serta alamat panggilan. Penunjuk tumpukan menunjuk ke bagian atas tumpukan. Ketika prosesor dalam keadaan eksekusi, banyak informasi yang diproses ditempatkan di register. Ketika proses diaktifkan, informasi status prosesor harus disimpan di PCB yang sesuai, sehingga eksekusi dapat dilanjutkan dari breakpoint saat proses dijalankan kembali.

(3) Informasi penjadwalan proses: Ketika OS menjadwalkan, perlu untuk memahami status proses dan informasi tentang penjadwalan proses. Informasi ini meliputi: Status proses, menunjukkan status proses saat ini, yang digunakan sebagai dasar untuk penjadwalan dan pertukaran proses Prioritas proses adalah bilangan bulat yang digunakan untuk menggambarkan tingkat prioritas proses menggunakan prosesor. Proses dengan prioritas lebih tinggi harus mendapatkan prosesor terlebih dahulu; Informasi lain yang diperlukan untuk penjadwalan proses, yang terkait dengan algoritma penjadwalan proses yang digunakan Misalnya, jumlah waktu proses menunggu CPU, jumlah waktu proses telah dieksekusi, dan sebagainya; Event mengacu pada event yang menunggu proses berubah dari status eksekusi ke status pemblokiran, yaitu penyebab pemblokiran.

(4) Informasi kontrol proses: Mengacu pada informasi yang diperlukan untuk kontrol proses, yang meliputi: Alamat program dan data, memori atau alamat memori eksternal program dan data dalam entitas proses, sehingga dapat dijadwalkan untuk dijalankan ketika proses dijalankan. , Program dan data dapat ditemukan dari PCB; Proses sinkronisasi dan mekanisme komunikasi, yang merupakan mekanisme yang diperlukan untuk sinkronisasi dan komunikasi proses, seperti penunjuk antrian pesan, semafor, dll., mereka dapat ditempatkan di PCB secara keseluruhan atau sebagian; Daftar sumber daya, di mana semua sumber daya (kecuali CPU) yang diperlukan oleh proses selama operasinya terdaftar, dan ada juga daftar sumber daya yang dialokasikan untuk proses tersebut; Link pointer, yang memberikan proses ( PCB) Alamat pertama dari PCB dari proses selanjutnya dalam antrian.