Tabel proses adalah struktur data kernel yang menggambarkan keadaan proses (bersama dengan proses Area U). Ini berisi bidang yang harus selalu tersedia untuk kernel.
Ini berisi bidang-bidang berikut:
- bidang status (yang mengidentifikasi status proses)
- kolom yang memungkinkan kernel menemukan proses dan area u di memori
- UID untuk menentukan berbagai hak istimewa proses
- PID untuk menentukan hubungan b/w proses (misalnya fork)
- deskriptor peristiwa (ketika proses dalam keadaan tidur)
- parameter penjadwalan untuk menentukan urutan perpindahan proses ke status "kernel running" dan "user running"
- bidang sinyal untuk sinyal yang dikirim ke proses tetapi belum ditangani
- timer yang memberikan waktu eksekusi proses dalam mode kernel dan mode pengguna
- kolom yang memberikan ukuran proses (sehingga kernel mengetahui berapa banyak ruang yang dialokasikan untuk proses).
Singkatnya, tabel proses memberikan informasi tentang proses ke kernel.
Tabel proses di Linux (seperti di hampir setiap sistem operasi lainnya) hanyalah sebuah struktur data dalam RAM komputer. Itu menyimpan informasi tentang proses yang saat ini ditangani oleh OS.
Informasi ini mencakup informasi umum tentang setiap proses
- id proses
- pemilik proses
- prioritas proses
- variabel lingkungan untuk setiap proses
- proses induk
- penunjuk ke kode mesin yang dapat dieksekusi dari suatu proses.
Informasi yang sangat penting dalam tabel proses adalah status setiap proses saat ini. Informasi ini penting untuk OS, karena memungkinkan apa yang disebut multipemrosesan, yaitu kemungkinan untuk menjalankan beberapa proses secara virtual hanya pada satu unit pemrosesan (CPU).
Informasi apakah suatu proses sedang AKTIF, TIDUR, BERJALAN, dll. digunakan oleh OS untuk menangani eksekusi proses.
Selanjutnya ada informasi statistik seperti kapan proses MENJALANKAN terakhir kali untuk mengaktifkan penjadwalan OS untuk memutuskan proses mana yang harus dijalankan selanjutnya.
Singkatnya tabel proses adalah elemen organisasi pusat untuk OS untuk menangani semua proses yang dimulai.
Pengantar singkat dapat ditemukan di utas ini:
https://web.archive.org/web/20190817081256/http://www.linuxforums.org/forum/kernel/42062-use-process-table.html
Dan wikipedia juga memiliki informasi bagus tentang proses:
http://en.wikipedia.org/wiki/Process_management_(komputasi)#Process_description_and_control
http://en.wikipedia.org/wiki/Process_table
Setiap proses diwakili dalam sistem operasi oleh blok kontrol proses - juga dikenal sebagai blok kontrol tugas - yang berisi yang berikut
Process management
Registers
Program counter
Program status word
Stack pointer
Process state
Priority
Scheduling parameters Process ID
Parent process
Process group
Signals
Time when process started CPU time used
Children’s CPU time
Time of next alarm
Memory management
Pointer to text segment info
Pointer to data segment info
Pointer to stack segment info
File management
Root directory Working directory File descriptors User ID
Group ID
Untuk lebih lanjut, https://www.technologyuk.net/computing/computer-software/operating-systems/