Ferli Apriadi - Manajemen Memory
-
Upload
belajarkomputer -
Category
Software
-
view
36 -
download
2
Transcript of Ferli Apriadi - Manajemen Memory
![Page 1: Ferli Apriadi - Manajemen Memory](https://reader036.fdocument.pub/reader036/viewer/2022081422/55b6b3e2bb61eb0a338b4627/html5/thumbnails/1.jpg)
MANAJEMEN MEMORYOleh:
Nama : Frli Apriadi
NPM :132310080
Kelas : A1-D3-MI2
![Page 2: Ferli Apriadi - Manajemen Memory](https://reader036.fdocument.pub/reader036/viewer/2022081422/55b6b3e2bb61eb0a338b4627/html5/thumbnails/2.jpg)
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
![Page 3: Ferli Apriadi - Manajemen Memory](https://reader036.fdocument.pub/reader036/viewer/2022081422/55b6b3e2bb61eb0a338b4627/html5/thumbnails/3.jpg)
KONSEP DASAR
REGISTER(Chip Processor)
Cache Memory
Main Memory
Secondary Memory
Hierarki organisasi memori pada sistem komputer
![Page 4: Ferli Apriadi - Manajemen Memory](https://reader036.fdocument.pub/reader036/viewer/2022081422/55b6b3e2bb61eb0a338b4627/html5/thumbnails/4.jpg)
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.
![Page 5: Ferli Apriadi - Manajemen Memory](https://reader036.fdocument.pub/reader036/viewer/2022081422/55b6b3e2bb61eb0a338b4627/html5/thumbnails/5.jpg)
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.
![Page 6: Ferli Apriadi - Manajemen Memory](https://reader036.fdocument.pub/reader036/viewer/2022081422/55b6b3e2bb61eb0a338b4627/html5/thumbnails/6.jpg)
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
![Page 7: Ferli Apriadi - Manajemen Memory](https://reader036.fdocument.pub/reader036/viewer/2022081422/55b6b3e2bb61eb0a338b4627/html5/thumbnails/7.jpg)
![Page 8: Ferli Apriadi - Manajemen Memory](https://reader036.fdocument.pub/reader036/viewer/2022081422/55b6b3e2bb61eb0a338b4627/html5/thumbnails/8.jpg)
![Page 9: Ferli Apriadi - Manajemen Memory](https://reader036.fdocument.pub/reader036/viewer/2022081422/55b6b3e2bb61eb0a338b4627/html5/thumbnails/9.jpg)
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
![Page 10: Ferli Apriadi - Manajemen Memory](https://reader036.fdocument.pub/reader036/viewer/2022081422/55b6b3e2bb61eb0a338b4627/html5/thumbnails/10.jpg)
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
![Page 11: Ferli Apriadi - Manajemen Memory](https://reader036.fdocument.pub/reader036/viewer/2022081422/55b6b3e2bb61eb0a338b4627/html5/thumbnails/11.jpg)
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
![Page 12: Ferli Apriadi - Manajemen Memory](https://reader036.fdocument.pub/reader036/viewer/2022081422/55b6b3e2bb61eb0a338b4627/html5/thumbnails/12.jpg)
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.
![Page 13: Ferli Apriadi - Manajemen Memory](https://reader036.fdocument.pub/reader036/viewer/2022081422/55b6b3e2bb61eb0a338b4627/html5/thumbnails/13.jpg)
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.
![Page 14: Ferli Apriadi - Manajemen Memory](https://reader036.fdocument.pub/reader036/viewer/2022081422/55b6b3e2bb61eb0a338b4627/html5/thumbnails/14.jpg)
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
![Page 15: Ferli Apriadi - Manajemen Memory](https://reader036.fdocument.pub/reader036/viewer/2022081422/55b6b3e2bb61eb0a338b4627/html5/thumbnails/15.jpg)
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.
![Page 16: Ferli Apriadi - Manajemen Memory](https://reader036.fdocument.pub/reader036/viewer/2022081422/55b6b3e2bb61eb0a338b4627/html5/thumbnails/16.jpg)
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
![Page 17: Ferli Apriadi - Manajemen Memory](https://reader036.fdocument.pub/reader036/viewer/2022081422/55b6b3e2bb61eb0a338b4627/html5/thumbnails/17.jpg)
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.
![Page 18: Ferli Apriadi - Manajemen Memory](https://reader036.fdocument.pub/reader036/viewer/2022081422/55b6b3e2bb61eb0a338b4627/html5/thumbnails/18.jpg)
Tahapan Pemrosesan User rogram
![Page 19: Ferli Apriadi - Manajemen Memory](https://reader036.fdocument.pub/reader036/viewer/2022081422/55b6b3e2bb61eb0a338b4627/html5/thumbnails/19.jpg)
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
![Page 20: Ferli Apriadi - Manajemen Memory](https://reader036.fdocument.pub/reader036/viewer/2022081422/55b6b3e2bb61eb0a338b4627/html5/thumbnails/20.jpg)
RELOKASI DINAMIK MENGGUNAKAN REGISTER RELOKASI
![Page 21: Ferli Apriadi - Manajemen Memory](https://reader036.fdocument.pub/reader036/viewer/2022081422/55b6b3e2bb61eb0a338b4627/html5/thumbnails/21.jpg)
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
![Page 22: Ferli Apriadi - Manajemen Memory](https://reader036.fdocument.pub/reader036/viewer/2022081422/55b6b3e2bb61eb0a338b4627/html5/thumbnails/22.jpg)
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.
![Page 23: Ferli Apriadi - Manajemen Memory](https://reader036.fdocument.pub/reader036/viewer/2022081422/55b6b3e2bb61eb0a338b4627/html5/thumbnails/23.jpg)
TERIMA KASIH