View
36
Download
2
Category
Preview:
Citation preview
MANAJEMEN MEMORYOleh:
Nama : Frli Apriadi
NPM :132310080
Kelas : A1-D3-MI2
LATAR BELAKANG
Memory merupakan tempat menampung data dan kode instruksi program
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
Manajemen memory berkaitan dengan aktifitas pengelolaan penggunaan memori pada saat komputer aktif dan menjalankan proses-proses
KONSEP DASAR
REGISTER(Chip Processor)
Cache Memory
Main Memory
Secondary Memory
Hierarki organisasi memori pada sistem komputer
REGISTER
Contoh memori register IR (instruction Register) untuk menampung
kode instruksi yang akan dieksekusi AX,BX,CX,DX dan lainnya untuk menampung
data dan informasi. Kapasitas memori register sangat terbatas
agar ukuran chip processor tetap kecil. Itulah sebabnya diperlukan memori utama.
MEMORI UTAMA
Memori utama pada umumnya dapat diakses secara random RAM (Random Access Memory) dan volatile.
Namun sayangnya kecepatan transfer data dari memori utama ke prosesor sangat lambat jika dibandingkan dengan eksekusi prosesor
Contoh: Pentium IV 1.7GHz memiliki front bus 400MHz, artinya terdapat selisih kecepatan 4X, berarti setiap kali terjadi transfer data dari memori utama ke register prosesor, prosesor harus menunggu sebanyak 4 siklus eksekusi.
MEMORI CACHE
Untuk mengatasi perbedaan kecepatan, digunakan teknik caching untuk memori utama dengan menggunakan memori cache.
Umumnya berada dalam prosessor Kapasitas jauh lebih kecil dari memori utama Kecepatan transfer mengikuti clock processor Prinsip kerja sebagai salinan bayangan dari
data dan kode instruksi di memori utama
MEMORI SEKUNDER
Memori sekunder umumnya berupa disk dan bersifat non-volatile
Kecepatan transfer jauh lebih lambat dari memori utama
Untuk mengatasi kekurangan tempat pada ruang memori utama teknik virtual memory
Tujuan pengorganisasian memori komputer: Meningkatkan kecepatan akses kode instruksi
dan data oleh prosesor Mengurangi waktu menganggur(idle) prosesor Memperbesar kapasitas penyimpanan sistem
memori komputer Secara umum, semakin bawah tingkatan
pada hirarki organisasi komputer, maka: Harga per satuan byte semakin rendah Kapasitas penyimpanan semakin besar Frekuensi pengaksesan semakin kurang Kecepatan akses semakin lambat
PENGALAMATAN MEMORI
Tugas untuk mereferensi kode instruksi atau data di memori utama secara tepat merupakan tanggung jawab dari compiler
Compiler berfungsi mengubah source code yang ditulis programmer menjadi file yang berisi kode instruksi program yang dapat dijalankan prosessor
Dalam menentukan alamat instruksi atau data, compiler mengacu pada metode pengalamatan memori yang dipakai sistem komputer
Metode pengalamatan memori mendefinisikan: Model alamat yang dituliskan pada kode instruksi
program Mekanisme penyalinan Kapan dan bagaimana alamat dalam kode
instruksi program diterjemahkan dalam alamat fisik memori sesungguhnya.
Secara garis besar metode pengalamatan memori dapat dibedakan atas :
1. Pengalamatan secara fisik (Physical / absolute address)alamat yang ditulis pada kode instruksi adalah alamat fisik memori utama yang sesungguhnya.
2. Pengalamatan secara logika (Logical Addressing)
perlu ditranslasikan ke alamat fisik memori utama.
Pada saat eksekusi, pengaksesan alamat akan ditranslasi dengan menjumlahkan alamat referensi awal pada instruksi dengan isi register alokasi untuk mendapatkan alamat fisik memori
Relokasi program dapat dilakukan secara fleksibel
ADDRESS BINDING
Alamat yang terdapat dalam kode instruksi tidak selamanya berupa alamat fisik, tapi dapat berupa alamat logika yang perlu ditranslasi lebih dahulu.
Aktivitas translasi alamat ini disebut dengan address binding.
Address binding dapat terjadi pada saat: Compile Time
apabila dimungkinkan letak / alamat fisik memori diketahui sebelum diekseskusi agar langsung dapat ditulis pada source code.
Kelemahan: program tidak dapat direlokasi selama eksekusi.
Loading Time Dilakukan pada saat loading program ke memori
utama Hasil kompilasi disimpan dalam file yang berisi
alamat fisik. Jika terjadi perubahan relokasi maka code di-load ulang
Execution Time membutuhkan perangkat keras seperti MMU (Memory
Management Unit) MMU bertanggung jawab membantu proses
perhitungan transasi alamat logika ke alamat fisik pada saat eksekusi.
Dimungkinkan suatu proses berpindah alamat sewaktu dieksekusi.
Tahapan Pemrosesan User rogram
MEMORY-MANAGEMENT UNIT (MMU) Perangkat Hardware yang memetakan alamat
logik (virtual) ke alamat fisik.
Dalam skema MMU Menyediakan perangkat register yang dapat di set
oleh setiap CPU: setiap proses mempunyai data set register tsb (disimpan di PCB). Base register dan limit register.
Harga dalam register base/relokasi ditambahkan ke setiap address proses user pada saat run di memori
Program user hanya berurusan dengan address logik saja
RELOKASI DINAMIK MENGGUNAKAN REGISTER RELOKASI
DYNAMIC LOADING
Tidak semua bagian program diambil ke memori. Dengan dynamic loading, Routine yang tidak digunakan
tak akan pernah di-load ke memori. Mekanisme dasar:
Program utama di-load dan dieksekusi. Pada saat suatu routine butuh memanggil routine yang
lain, maka pertama routine pemanggil mengecek apakah rotine yang dibutuhkan sudah pernah diambil. Jika belum, maka routine yang dipanggil tersebut akan diambil dan dialokasikan di memori utama
Keuntungan dynamic loading : Rutin yang tidak digunakan tak akan pernah di-load ke
memori. Untuk menghindari pemakaian rutin yang salah dalam
program dengan jumlah kode yang besar. Tidak memerlukan bantuan sistem operasi. Metode ini
menjadi tanggung jawab user/programmer. SO hanya menyediakan routine library
DYNAMIC LINKING
Konsep sama dengan dynamic loading, hanya saja penekanan pada proses linking.
Dimungkinkan adanya share library yang dibuat oleh suatu aplikasi untuk digunakan oleh aplikasi lainnya. Mengurangi pemakaian space: satu routine library di
memory digunakan secara bersama oleh sekumpulan proses.
dapat digunakan untuk pembaharuan library secara otomatis bila ada versi yang lebih baru.
File yang mendukung dynamic linking:.dll (Dynamic Link Libraries), .sys , .drv
sistem operasi dibutuhkan untuk memeriksa apakah routine yang diperlukan ada di ruang memori proses yang lain.
TERIMA KASIH
Recommended