Proses dalam Sistem Operasi
Pengertian Proses
Dalam sistem operasi, proses adalah program yang sedang dieksekusi. Proses mencakup program code, aktivitas CPU, data, dan informasi status eksekusi. Sistem operasi bertanggung jawab untuk membuat, menjadwalkan, dan mengelola proses-proses ini.
Elemen-Elemen Proses
- Program Counter (PC): Menunjukkan instruksi berikutnya yang akan dieksekusi oleh CPU.
- Register: Menyimpan variabel dan data sementara selama eksekusi.
- Stack: Menyimpan informasi seperti parameter fungsi dan alamat pengembalian.
- Data Section: Menyimpan variabel global dan informasi statis program.
- Heap: Area memori untuk alokasi dinamis selama runtime.
State (Keadaan) Proses
- New: Proses sedang dibuat.
- Ready: Proses siap untuk dijalankan oleh CPU.
- Running: Proses sedang dieksekusi oleh CPU.
- Waiting: Proses menunggu peristiwa seperti input/output.
- Terminated: Proses telah selesai dieksekusi.
PCB (Process Control Block)
PCB adalah struktur data yang digunakan oleh sistem operasi untuk menyimpan semua informasi tentang proses, termasuk status, PC, register, prioritas, dan informasi manajemen memori. PCB memungkinkan sistem untuk melanjutkan proses setelah dihentikan sementara (context switching).
Manajemen Proses oleh Sistem Operasi
- Penciptaan dan Penghentian Proses: Sistem dapat membuat proses baru (fork) dan mengakhiri proses (exit).
- Penjadwalan Proses: CPU dialokasikan ke proses berdasarkan algoritma penjadwalan seperti FCFS, Round Robin, atau Priority Scheduling.
- Sinkronisasi: Mengatur interaksi antar proses agar tidak terjadi konflik.
- Komunikasi Antar-Proses (IPC): Proses dapat saling bertukar data melalui message passing atau shared memory.
Contoh Studi Kasus
Kasus: Suatu sistem menjalankan pemutar musik, aplikasi chat, dan browser secara bersamaan. Bagaimana CPU mengelola proses ini?
Jawaban: Sistem operasi menggunakan penjadwalan waktu (time-sharing) untuk membagi waktu CPU antar proses. Context switching dilakukan untuk berpindah antar proses secara cepat, sehingga pengguna merasa semuanya berjalan bersamaan (multitasking).