1. Jelaskan definisi beberapa istilah berikut ini:
(a) virtual memory (b) page fault (c) demand paging (d) page replacement Jawab: (a) Virtual memory: teknik manajemen memori di mana memori sekunder dapat digunakan seolah-olah itu adalah bagian dari memori utama. Memori virtual adalah teknik umum yang digunakan dalam sistem operasi komputer (OS). Memori virtual menggunakan hardware dan software untuk memungkinkan komputer mengkompensasi kekurangan memori fisik, mentransfer data sementara dari random access memory (RAM) ke penyimpanan disk. Pemetaan potongan memori ke file disk memungkinkan komputer untuk memperlakukan memori sekunder seolah-olah itu adalah memori utama. (b) Page fault: Page fault adalah gangguan yang terjadi ketika program software mencoba mengakses blok memori yang saat ini tidak tersimpan dalam RAM sistem. Hal ini memberi tahu sistem operasi untuk menemukan blok dalam memori virtual sehingga dapat dikirim dari penyimpanan perangkat ke RAM. (c) Demand Paging: Demand Paging atau permintaan pemberian halaman adalah salah satu implementasi dari memori virtual yang paling umum digunakan. Sistem Demand Paging pada prinsipnya hampir sama dengan sistem permintaan halaman (paging) yang menggunakan swapping, hanya saja pada sistem demand paging, halaman tidak akan dibawa ke dalam memori fisik sampai ia benar-benar diperlukan. Oleh sebab itu dibutuhkan bantuan perangkat keras (hardware) untuk mengetahui lokasi dari halama saat ia diperlukan. (d) Page replacement: Page replacement adalah skenarion yang mengacu di mana sebuah halaman dari memori utama harus digantikan oleh sebuah halaman dari memori sekunder. Page replacement terjadi karena page fault. Berbagai algoritma page replacement seperti FIFO, Optimal page replacement, LRU, LIFO, dan Random page replacement membantu sistem operasi untuk memutuskan halaman mana yang akan diganti. 2. Jelaskan perbedaan antara equal allocation dan proportional allocation. Equal allocation adalah alokasi frame dalam sistem dengan x frame dan y proses, setiap proses mendapatkan jumlah frame yang sama, yaitu x/y. Misalnya, jika sistem memiliki 48 frame dan 9 proses, setiap proses akan mendapatkan 5 frame. Tiga frame yang tidak dialokasikan untuk proses apa pun dapat digunakan sebagai kumpulan buffer frame bebas. Sedangkan proportional allocation adalah alokasi dimana frame dialokasikan ke setiap proses sesuai dengan ukuran proses. Untuk proses pi dengan ukuran si, jumlah frame yang dialokasikan adalah ai = (si/S)*m, di mana S adalah jumlah ukuran semua proses dan m adalah jumlah frame dalam sistem. Misalnya, dalam sistem dengan 62 frame, jika ada proses 10KB dan proses lain 127KB, maka proses pertama akan dialokasikan (10/137)*62 = 4 frame dan proses lainnya akan mendapatkan (127/137)*62 = 57 frame. 3. Jelaskan perbedaan antara global replacement dan local replacement. Local replacement terjadi ketika sebuah proses membutuhkan halaman yang tidak ada di memori, proses tersebut dapat membawa halaman baru dan mengalokasikannya sebuah frame dari kumpulan frame yang dialokasikannya sendiri saja. Sedangkan global replacement ketika sebuah proses membutuhkan sebuah halaman yang tidak ada di memori, ia dapat membawa halaman baru dan mengalokasikannya sebuah frame dari himpunan semua frame, bahkan jika frame itu saat ini dialokasikan untuk beberapa proses lain; yaitu, satu proses dapat mengambil frame dari proses lain. 4. Jelaskan algoritma untuk page replacement berikut ini: (a) FIFO (b) Optimal (c) LRU Jawab: (a) FIFO: Algoritma FIFO merupakan algoritma paling sederhana. Algoritma FIFO diasosiasikan dengan sebuah page bila page tersebut dibawa ke memori. Bila ada suatu page yang akan ditempatkan, maka posisi page yang paling lama yang akan digantikan. Algoritma ini tidak perlu menyimpan waktu pada saat sebuah page dibawa ke memori. Meskipun algoritma FIFO mudah dipahami dan diimplementasikan, performansi tidak selalu bagus karena algoritma FIFO menyebabkan Belady’s anomaly. Belady’s anomaly mematahkan fakta bahwa untuk beberapa algoritma page replacement, bila rata-rata page fault meningkat, akan meningkatkan jumlah alokasi frame. (b) Optimal: Algoritma optimal merupakan hasil penemuan dari Belady’s anomaly. Algoritma ini mempunyai rata-rata page fault terendah. Algoritma optimal akan mengganti page yang tidak akan digunakan untuk periode waktu terlama. Algoritma ini menjamin rata-rata page fault terendah untuk jumlah frame tetap tetapi sulit implementasinya. (c) LRU: Algoritma LRU merupakan perpaduan dari algoritma FIFO dan optimal. Prinsip dari algoritma LRU adalah mengganti page yang sudah tidak digunakan untuk periode waktu terlama. Untuk mengimplementasikan algoritma LRU, digunakan dua model yaitu: Counter: setipa entry page table diasosiasikan dengan sebuah ‘time of-use’ dan sebuah clock logika atau counter ditambahkan ke CPU. Stack: Stack dari nomor page diatur. Jika sebuah page digunakan acuan, maka page dihapus dari stack dan meletakkan pada top of stack. Dengan car aini, stack selalu digunakan page dan bagian bawag untuk page LRU. 5. Jelaskan kapan terjadi thrashing. Thrashing terjadi ketika ada terlalu banyak halaman dalam memori, dan setiap halaman merujuk ke halaman lain. Memori yang sebenarnya menjadi memperpendek kapasitasnya untuk memiliki semua halaman di dalamnya, sehingga menggunakan virtual memory. 6. Jelaskan pengertian memory compression. Memory compression adalah teknik manajemen memori yang mengurangi ukuran data yang tidak aktif dalam Random Access Memory (RAM) untuk mengosongkan ruang yang tidak terpakai dan memungkinkan lebih banyak program untuk dijalankan sekaligus. Ini dirancang untuk sepenuhnya menggunakan memori fisik yang tersedia dan dengan demikian meningkatkan kinerja sistem. Kompresi memori dapat diterapkan pada komputer, smartphone dan sistem tertanam.