Anda di halaman 1dari 5

MANAJEMEN MEMORI

Tri Mulyana Oktarina Jurusan Sistem Komputer Fakultas Ilmu Komputer Universitas Sriwijaya e-mail : thrie_mesha@yahoo.com

ABSTRAK Memori utama atau lebih dikenal sebagai memori adalah sebuah array yang besar dari word atau byte yang ukurannya mencapai ratusan, ribuan, atau bahkan jutaan. Setiap word atau byte mempunyai alamat tersendiri. Memori utama berfungsi sebagai tempat penyimpanan instruksi/data yang akses datanya digunakan oleh CPU dan perangkat M/K. Memori utama termasuk tempat penyimpanan data yang yang bersifat volatile(tidak permanen), yaitu data akan hilang kalau komputer dimatikan. Sistem komputer modern memiliki sistem hirarki memori, artinya memori yang ada di komputer disusun dengan tingkatan kecepatan dan kapasitas yang berbeda. Memori yang memiliki kecepatan sama dengan kecepatan prosesor memiliki kapasitas yang kecil, berkisar hanya dari ratusan KB hingga 4 MB dengan harga yang sangat mahal. Sedangkan memori utama yang kecepatannya jauh di bawah kecepatan prosesor memiliki kapasitas yang lebih besar, berkisar dari 128 MB hingga 4 GB dengan harga yang jauh lebih murah. Tujuan dari manajemen memori utama adalah agar utilitas CPU meningkat dan untuk meningkatkan efisiensi pemakaian memori. Memori managemen merupakan salah satu bagian terpenting dalam sistem operasi. Karena adanya keterbatasan memori, diperlukan suatu strategi dalam menangani masalah ini. Jalan keluarnya adalah dengan menggunakan memori virtual. Dengan memori virtual, memori tampak lebih besar daripada ukuran yang sebenarnya. Keyword: Konsep Binding, Overlay, Swapping, Paging, Segmentasi

PENDAHULUAN Memori adalah pusat kegiatan pada sebuah komputer, karena setiap proses yang akan dijalankan, harus melalui memori terlebih dahulu. Sistem Operasi bertugas untuk mengatur peletakan banyak proses pada suatu memori. Memori harus digunakan dengan baik, sehingga dapat memuat banyak proses dalam suatu waktu [1]. Managemen Memori Fisik yaitu pada bagian ini menjelaskan bagaimana linux menangani memori dalam sistem. Memori managemen merupakan salah satu bagian terpenting dalam sistem operasi. Karena adanya keterbatasan memori, diperlukan suatu strategi dalam menangani masalah ini. Jalan keluarnya adalah dengan menggunakan memori virtual. Dengan memori virtual, memori tampak lebih besar daripada ukuran yang sebenarnya [2].

PEMBAHASAN Memori sebagai tempat penyimpanan instruksi/ data dari program. Memori adalah pusat kegiatan pada sebuah komputer, karena setiap proses yang akan dijalankan, harus melalui memori terlebih dahulu. Supaya untuk dapat dieksekusi, program harus dibawa ke memori dan menjadi suatu proses. Jenis-jenis memori :

-Memori Kerja : ROM/PROM/EPROM/EEPROM, RAM, dan Cache memory -Memori Dukung : Floppy, harddisk, CD, dan lain-lain. Manajemen memori adalah salah satu bagian sistem operasi yang mempengaruhi dalam menentukan proses untuk mengelola memori komputer. Pada umunmnya, fungsi Manajemen Memori antara lain: -Melacak pemakaian memori (siapa dan berapa besar) -Memilih program mana yang akan diload ke memori -Mengalokasikan memori ke proses yang memerlukan -Mendealokasikan memori dari proses telah selesai -Mengelola swapping atau paging antara memori utama dan disk.

Beberapa bagian dalam Manajemen Memori adalah : 1) KONSEP BINDING

Sebelum eksekusi, program berada di dalam disk, dan saat dieksekusi program tersebut perlu berada pada suatu lokasi dalam memori fisik. Address Binding adalah cara instruksi dan data (yang berada di disk sebagai file executable) dipetakan ke alamat memori. Alamat (address) pada source program umumnya merupakan alamat simbolik. Sebuah compiler biasanya membutuhkan mengikat (bind) alamat simbolik ke alamat relokasi. Address Binding dapat berlangsung dalam 3 tahap yang berbeda, yaitu : kompilasi, load, atau eksekusi dari suatu program [3]. Bagian-bagian dalam konsep binding: - Dynamic Loading Untuk memperoleh utilitas ruang memori, dapat menggunakan dynamic loading. Dengan dynamic loading, sebuah rutin tidak disimpan di memori sampai dipanggil.Semua rutin disimpan pada disk dalam format relocatable load. untuk mekanisame dasar dapat di uraikan sebagai berikut: -Program utama diload dahulu dan dieksekusi Bila suatu routine perlu memanggil routine yang lain, routine yang dipanggil lebih dahulu diperiksa apakah routine yang dipanggil sudah diload. Jika tidak, relocatable linking loader dipanggil untuk meload routine yang diminta ke memori dan mengupdate tabel alamat dari program yang mencerminkan perubahan ini [4]. Keuntungan dari dynamic loading adalah : -Rutin yang tidak digunakan tidak pernah di-load -Cocok untuk kode dalam jumlah besar -Digunakan untuk menangani kasus-kasus yang jarang terjadi seperti error routine -Tidak memerlukan dukungan khusus dari sistem operasi. Sistem operasi hanya perlu menyediakan beberapa rutin pustaka untuk implementasi dynamic loading. - Dynamic Linking

Konsep dynamic linking sama dengandynamic loading. Pada saat loading, linking ditunda sampai waktu eksekusi. Terdapat kode kecil yang disebut stub digunakan untuk meletakkan rutin library di memoridengan tepat. Stub diisi dengan alamat rutin dan mengeksekusi rutin. Sistem operasi perlu memeriksa apakah rutin berada di alamat memori. contoh file dynamic linking: *.dll, *.sys, *.drv [5]. - Overlay Teknik Overlay biasanya digunakan untuk memungkinkan sebuah proses mempunyai jumlah yang lebih besar dari memori fisik daripada alokasi memori yang diperuntukkan. Ide dari overlay adalah menyimpan di memori hanya instruksi dan data yang diperlukan pada satu waktu. Jika intruksi lain diperlukan, maka instruksi tersebut diletakkan di ruang memori menggantikan instruksi yang tidak digunakan lagi [6]. 2) RUANG ALAMAT LOGIKA DAN RUANG ALAMAT FISIK Alamat yang dibangkitkan oleh CPU disebut alamat logika (logical address) dimana alamat terlihat sebagai uni memory yang disebut alamat fisik (physical address). Tujuan utama manajemen memori adalah konsep meletakkan ruang alamat logika ke ruang alamat fisik [5].

Memory Manajement Unit (MMU) adalah perangkat keras yang memetakan alamat virtual ke alamat fisik. Pada skema MMU, nilai register relokasi ditambahkan ke setiap alamat yang dibangkitkan oleh proses user pada waktu dikirim ke memori.

Gambar diatas merupakan skema yang membutuhkan dukungan perangkat keras. Register basis disebut register relokasi. Nilai dari register relokasi ditambahkan ke setiap alamat yang dibangkitkan oleh proses user pada waktu dikirim ke memori. sebagai contoh, apabila basis 14000, maka user mencoba menempatkan ke alamat lokasi 0 dan secara dinamis direlokasi ke lokasi 14000. Pengaksesan ke lokasi logika 346, maka akan dipetakan ke lokasi 14346. Sistem operasi MS-DOS yang masih keluarga intel 80X86 menggunakan empat register relokasi ketika proses loading dan running. 3) SWAPPING

Sebuah proses harus berada di memori untuk dieksekusi. Proses juga dapat ditukar (swap) sementara keluar memori ke backing store dan kemudian dibawa kembali ke memori untuk melanjutkan eksekusi. Backing store berupa disk besar dengan kecepatan tinggi yang cukup untuk meletakkan copy dari semua memory image untuk semua user, sistem juga harus menyediakan akses langsung ke memory image tersebut. Contohnya, sebuah lingkungan multiprogramming dengan penjadwalan CPU menggunakan algoritma round-robin [3]. 4) PENGALOKASIAN BERURUTAN (CONTIGUOUS ALLOCATION) Pada Multiprogramming memori utama harus mengalokasikan tempat untuk sistem operasi dan beberapa user proses. Memori harus mengakomodasi baik OS dan proses user. Memori dibagi menjadi 2 partisi : -Untuk OS yang resident -Untuk Proses User [6]

Ada 2 tipe Contiguos Allocation : a. Single Partition (Partisi Tunggal) b. Multiple Partition (Partisi Banyak) [3] 5) PENGALOKASIAN TIDAK BERURUTAN (NON CONTIGUOUS ALLOCATION) A. Paging Paging adalah solusi untuk permasalahan fragmentasi external. Memori fisik dibagi ke dalam blok-blok ukuran tetap yang disebut frame. Memori logika dibagi ke dalam blok-blok dengan ukuran yang sama yang disebut page. Untuk menjalankan program berukuran n page, harus dicari frame kosong sebanyak n untuk meload program. Page table digunakan untuk translasikan alamat lojik ke alamat fisik [4]. Alamat yang dibangkitkan CPU dibagi menjadi : a) Page number digunakan sebagai index ke page table. Page table berisi alamat basis dari setiap page pada memori fisik. b) Page Offset dikombinasikan dengan alamat basis untuk mendefinisikan alamat memori fisik yang dikirim ke unit memori. B. Segmentasi Segmentasi adalah skema pengaturan memori yang mendukung user untuk melihat memori tersebut Tiap-tiap segmen memiliki nama dan panjang.

KESIMPULAN Memori merupakan sumber daya yang paling penting untuk dijaga sebaik-baiknya karena merupakan pusat dari kegiatan di komputer. Terdapat proteksi perangkat keras yang dilakukan dengan menggunakan dua register, yaitu base dan limit register sehingga proses hanya bisa mengakses di alamat yang dilegalkan. Alamat yang dihasilkan oleh CPU disebut alamat logika yang kemudian dipetakan oleh MMU menjadi alamat fisik yang disimpan di memori. Untuk mendapatkan utilitas memori yang baik, maka diperlukan metode pemuatan dinamis, linking dinamis, dan pustaka bersama [1]. Ide dasar dari semua memori adalah kemampuan untuk menyimpan informasi. Tentu saja informasi yang disimpan dapat dipanggil atau diolah kembali bila diperlukan. Sebagai analogi, memori dimisalkan sebagai sekelompok kotak surat dalam suatu apartemen yang besar. Seseorang dapat meletakkan informasi dalam suatu kotak surat dengan nomor tertentu yang tertera. Jika pemilik ingin mengambil informasi tersebut, pemilik dapat melihat ke kotak suratnya dengan nomor yang tepat dan mengambil informasinya [2].

DAFTAR PUSTAKA [1] Tananbaum, Andrew S. (2008). Modern Operating Systems. Pearson Prentice Hal: California. ISBN: 9780138134594 [2] Dhotre I.A. (2009) OPERATING SYSTEMS. Technical Publications Pune, India. ISBN: 9788184316445 [3] Silberschatz, Avi and Galvin, Peter and Gagne, Grag. 2005. Operating Systems Concepts. Seventh Edition. John Wiley & Sons. [4] Tanenbaum, Andrew S and Woodhull, Albert S. 1997 . Operating Systems Design and Implementation . Second Edition. Prentice-Hall. [5] Tanenbaum, Andrew S. 2001 . Modern Operating Systems. Second Edition. Prentice-Hall. [6] Stallings, William. 2001 . Operating Systems: Internal and Design Principles. Fourth Edition. Prentice-Hall International. New Jersey .

Anda mungkin juga menyukai