MANAJEMEN MEMORY
Oleh:
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

Ferli Apriadi - Manajemen Memory

  • 1.
    MANAJEMEN MEMORY Oleh: Nama :Frli Apriadi NPM :132310080 Kelas : A1-D3-MI2
  • 2.
    LATAR BELAKANG  Memorymerupakan 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
  • 3.
    KONSEP DASAR REGISTER (Chip Processor) CacheMemory Main Memory Secondary Memory Hierarki organisasi memori pada sistem komputer
  • 4.
    REGISTER  Contoh memoriregister   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.
  • 5.
    MEMORI UTAMA  Memoriutama 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.
  • 6.
    MEMORI CACHE  Untukmengatasi 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
  • 9.
    MEMORI SEKUNDER  Memorisekunder 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
  • 10.
     Tujuan pengorganisasianmemori 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
  • 11.
    PENGALAMATAN MEMORI  Tugasuntuk 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
  • 12.
     Metode pengalamatanmemori 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.
  • 13.
     Secara garisbesar 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.
  • 14.
    2. Pengalamatan secaralogika (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
  • 15.
    ADDRESS BINDING  Alamatyang 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.
  • 16.
     Address bindingdapat 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
  • 17.
     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.
  • 18.
  • 19.
    MEMORY-MANAGEMENT UNIT (MMU)  PerangkatHardware 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
  • 20.
  • 21.
    DYNAMIC LOADING  Tidaksemua 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
  • 22.
    DYNAMIC LINKING  Konsepsama 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.
  • 23.