A (23161562006)
Kita telah melihat sebelumnya bahwa setiap kali program harus dijalankan, program itu
akan dipindahkan dari disk ke memori utama atau RAM. Jadi, jika harus dijalankan, akan diambil
dari hard disk ke dalam memori. Ini bisa hard disk atau perangkat penyimpanan sekunder
lainnya dan di memori ini terlihat aliran alamat yang datang dari unit pemrosesan pusat atau
prosesor. Jadi, prosesor mengirimkan alamat dan permintaan baca-tulis. Juga, jika itu
permintaan tulis, maka data juga akan dikirim oleh prosesor dan akan ditulis ke Memori Utama.
Peluang rata-rata dalam sistem komputer juga melibatkan register yang berada di dalam
prosesor dan akses ke register dapat dilakukan oleh prosesor dalam kurang dari satu siklus
clock. Namun, akses memori utama dapat memakan banyak siklus clock dan hal itu dapat
menyebabkan penundaan. Ini berarti jika memori sedang diakses dan banyak siklus clock
digunakan, prosesor harus menunggu permintaan tersebut selesai. Sekarang, daripada
menggunakan memori utama yang memerlukan waktu akses lebih lama, ada cache yang
merupakan memori berkecepatan tinggi dan ditempatkan di antara memori utama dan register
CPU.
Untuk akses yang cepat dan mudah, beberapa data dapat dipindahkan ke RAM, dari
RAM ke cache, dan kemudian CPU dapat dengan cepat mengakses cache untuk mempermudah
akses instruksi dan data. RAM ini memiliki beberapa proses yang dimuat dan kita tahu bahwa
perlindungan memori ini diperlukan untuk memastikan operasi yang benar. Apa artinya ini? Ini
berarti bahwa tidak boleh ada proses yang dapat mengakses ruang alamat dari proses lain. Jadi
perlindungan ini diperlukan untuk operasi dan eksekusi proses yang benar.
Konsep ruang alamat logis dan ruang alamat fisik sangat penting untuk manajemen
memori yang tepat. Jadi, ruang alamat logis ini adalah ruang yang biasanya dilihat oleh
program-program dan ini adalah alamat yang dihasilkan oleh CPU. Ini juga disebut sebagai
alamat virtual.
Alamat fisik adalah alamat yang dilihat oleh unit memori, jadi kita tahu bahwa CPU akan
menghasilkan alamat logis di sini yang akan diubah menjadi alamat fisik, dan alamat fisik inilah
yang akan dilihat oleh memori utama. Penyatuan instruksi dan data ke alamat memori. Ini
berarti penyatuan alamat logis ke alamat fisik dapat dilakukan pada setiap langkah. Entah itu
bisa dilakukan pada waktu kompilasi atau waktu pemuatan. Dalam hal ini, alamat logis dan fisik
akan sama. Tetapi jika dilakukan pada waktu eksekusi, saat program sedang dieksekusi, maka
ini akan menghasilkan alamat logis dan fisik yang berbeda. Jadi, pemetaan waktu eksekusi dari
alamat virtual ke fisik dilakukan oleh perangkat keras yang disebut Unit Pengelolaan Memori
atau MMU.
Tugas MMU, selain fungsi atau tugas-tugas lainnya yang dilakukannya, memiliki satu
register relokasi. Di sini, pada MMU, nilai dalam register relokasi ini akan ditambahkan ke setiap
alamat yang dihasilkan oleh proses pengguna. Jadi jika CPU menghasilkan alamat logis A
sebesar 346 dan jika pemetaan runtime sedang dilakukan dari alamat virtual ini, maka ini
adalah alamat logis atau alamat virtual dan ini adalah register relokasi untuk proses tertentu.
Jadi, alamat ini akan ditambahkan dengan 346 untuk menghasilkan alamat fisik dan inilah
alamat fisik yang akan terlihat di memori utama, yang berarti dalam ruang logis program,
alamat 346 ini sebenarnya dipetakan ke alamat tertentu, yaitu 14346 di memori utama
sebenarnya, jadi pemetaan ini dilakukan oleh unit manajemen memori.
Febriana D.A (23161562006)
Tergantung pada di mana proses harus diberikan ruang di RAM. Sekarang, untuk proses
lain, nilai dalam register relokasi akan berbeda. Jadi, untuk setiap proses, nilai dalam register
relokasi berbeda berdasarkan di mana proses tersebut ditempatkan dalam RAM. Jadi, jika
proses P1 ditempatkan di sini, maka register relokasi-nya akan memiliki nilai tertentu. Jika
proses P2 ditempatkan di alamat lain di RAM dan jika sekarang P3 mulai berjalan, maka nilai
dan register relokasi akan berubah tergantung pada di mana proses ini harus diberikan ruang di
memori utama. MMU sangat penting untuk manajemen memori. Dan pemetaan ini juga
memastikan bahwa pengguna tidak menyeberang, memasuki, atau mengakses ruang dari
proses lain.
Febriana D.A (23161562006)
Memori adalah tempat penyimpananan pada computer, dan bias dikatakan pusat
kegiatan pada sebuah computer.
Sisten operasi untuk mengatur penggunaan memori dalam banyaknya proses
diperlukan.
Manajemen memori adalagh mengolah computer untuk menyediakan cara secara
dinamis mengalokasikan bagian-bagian dari memori untuk program atas permintaan, dan
membebaskan untuk digunakan kembali ketika tidak lagi diperlukan.
Tujuan manajemen memori :
Relokasi : ketika prosesor dan sistem operasi harus mentransfer memori referensi
(dalam bentuk kode program) ke alamat fisik yang mengalokasikan program dalam
memori utama
Proteksi: user tidak boleh mengakses beberapa bagian dari wilayah sistem operasi
Sharing: memori sekunder pada manajemen memori dapat mengontrol sharing area
pada memori utama
Organisasi logika: sistem operasi dan hardware berusaha untuk dapat berhubungan
dengan user program dalam satu modul
Organisasi fisik: mengharuskan adanya pengaturan yang jelas antara memori utama
dengan memori sekunder pada longterm scheduling.
Teknik – teknik partisi :
Dibuat oleh linker karena setiap program memiliki Salinan dari seluruh rutin dan data yang
dibuatkan. Biasanya partisi ini digabungkan dengan executable file, contohnya : EXE Delphi dan
C/C++
Partisi Tetap (Fixed Partition/Static Partition)
Ciri – ciri :
Pembagian memori ditentukan di awal dan tidak dapat diubah
Ukuran partisi bias sama(equel-size) atau berbeda (unequal-size)
• Equal Partisi (Partisi Sama)
Ciri – cirinya:
Setiap proses yang ukurannya lebih kecil atau sama dengan ukuran partisi dapat
menempati partisi tersebut
Jika semua partisi telah terisi, maka sistem operasi akan melakukan swap
terhadap proses yang sudah tidak aktif
Dimungkinkan adanya program yang ukurannya > ukuran partisi yang terssedia,
maka programmer harus merancang program dengan overlay
Penggunaan memori sangat tidak efisien
Partisi tetap
Kelebihan:
Library pasti ada dan versinya pasti benar
Mudah pendistribusian file
Febriana D.A (23161562006)
Kekurangan:
Ukuran file besar
Ukuran program lebih besar dari ukuran partisi
Penggunaan memori yang tidak efisien
Partisi dinamis
Kelebihan:
Ukuran file kecil
Penyimpanannya lebih irit tidak memakan ruang yang banyak
Dapat dipakai bersama
Kekurangan:
Dapat terjadi fragmentasi eksternal
Ruang kosong dimemori banyak,, tetapi terbagi-bagi
Konsep paging
Perbedaan paging dengan partisi tetep
Segmentasi
Kelebihan Segmentasi :
programmer dapat membagi-bagi programnya dan menempatkannya pada segment-
segment berbeda di dalam memori sehingga lebih fleksibel dalam tujuan modularitas.
Kelemahan Segmentasi :
Programmer harus mengetahui ukuran maksimum dari segment dan implementasi
translasi ke dalam hardware yang lebih kompleks
Konversi alamat