Bab 9. Memori Linux

Daftar Isi

Pendahuluan
Memori Fisik
Slab
Memori Virtual
Umur Memori Virtual
Swap
Pemetaan Memori Program
Link Statis dan Dinamis
Rangkuman
Rujukan

Pendahuluan

Alokasi memori pada Linux menggunakan dua buah alokasi yang utama, yaitu algoritma buddy dan slab. Untuk algoritma buddy, setiap routine pelaksanaan alokasi ini dipanggil, maka blok memori berikutnya akan diperiksa. Jika ditemukan dia dialokasikan, namun jika tidak maka daftar tingkat berikutnya akan diperiksa. Jika ada blok bebas, maka akan dibagi jadi dua, yang satu dialokasikan dan yang lain dipindahkan ke daftar yang dibawahnya. Sedangkan algoritma slab menggunakan slab yang dibentuk dari halaman-halaman memori fisik yang berdekatan dan digunakan terutama untuk kegiatan pengalokasian memori fisik.

Linux juga menggunakan variasi dari algoritma clock. Thread dari kernel Linux akan dijalankan secara periodik. Jika jumlah halaman yang bebas lebih sedikit dari batas atas halaman bebas, maka thread tersebut akan berusaha untuk membebaskan tiga halaman. Jika lebih sedikit dari batas bawah halaman bebas, thread tersebut akan berusaha untuk membebaskan enam halaman dan tidur untuk beberapa saat sebelum berjalan lagi.

Rujukan

[Silberschatz2005] Avi Silberschatz, Peter Galvin, dan Grag Gagne. 2005. Operating Systems Concepts. Seventh Edition. John Wiley & Sons.

[Tanenbaum1997] Andrew S Tanenbaum dan Albert S Woodhull. 1997. Operating Systems Design and Implementation . Second Edition. Prentice-Hall.

[WEBAmirSch2000] Yair Amir dan Theo Schlossnagle. 2000. Operating Systems 00.418: Memory Management – http://www.cs.jhu.edu/ ~yairamir/ cs418/ os5/ . Diakses 29 Mei 2006.

[WEBFunkhouser2002] Thomas Funkhouser. 2002. Computer Science 217 Introduction to Programming Systems: Memory Paging – http://www.cs.princeton.edu/courses/archive/spring02 /cs217/lectures/paging.pdf . Diakses 28 Juni 2006.

[WEBGottlieb2000] Allan Gottlieb. 2000. Operating Systems: Page tables – http://allan.ultra.nyu.edu/ ~gottlieb/courses/1999-00-spring/os lecture-11.html . Diakses 28 Juni 2006.

[WEBSolomon2004] Marvin Solomon. 2004. CS 537 Introduction to Operating Systems: Lecture Notes Part 7 – http://www.cs.wisc.edu/ ~solomon/ cs537/ paging.html . Diakses 28 Juni 2006.

[WEBWIKI2007] Wikipedia. 2007. Slab Allocator - Wikipedia, the free encyclopedia http://en.wikipedia.org/wiki/slab_allocator . Diakses 11 April 2007.

[WEBilmukomputer2007] M Zainal Arifin. 2007. Manajemen Proses dan Memori di Linux. http://ilmukomputer.com/ 2006/08/28/ manajemen-proses-dan-memori-di-linux/ . Diakses 11 April 2007.