4


Soal

Sebuah sistem operasi memiliki beberapa proses yang berjalan dalam memori utama, namun kapasitas memori utama terbatas. Ketika memori utama hampir penuh, sistem akan memindahkan beberapa proses yang sedang idle ke memori sekunder untuk memberikan ruang bagi proses baru yang aktif. Sistem ini menggunakan algoritma First-In-First-Out (FIFO) untuk menentukan proses yang harus di-swap out.
Program harus memiliki beberapa fungsi:
- tambah_proses: Menambahkan proses baru ke memori utama jika ada ruang. Jika memori utama penuh, proses dengan waktu terlama akan di-swap out ke memori sekunder.
- hapus_proses: Menghapus proses dari memori utama atau memori sekunder berdasarkan id_proses.
- swap_in: Memindahkan proses dari memori sekunder kembali ke memori utama jika ada ruang.
- tampilkan_status: Menampilkan status saat ini dari memori utama dan memori sekunder, termasuk ID proses dan ukuran memorinya.
Asumsi:
- Memori utama memiliki kapasitas 100 MB.
- Setiap kali sebuah proses baru ditambahkan, cek apakah ada ruang di memori utama. Jika tidak ada, proses tertua akan dipindahkan ke memori sekunder.

Jawaban

???