Manajemen Memori.

Slides:



Advertisements
Presentasi serupa
Sistem Operasi (pertemuan 1) Memori Razief Perucha F.A
Advertisements

MEMORY
Manajemen Memori (Contd).
Manajemen Memory Kelompok 7 : M. Khoirur Roziqin ( )
Manajemen Memory 1 Manajemen Memory Sederhana dan Swapping
ModulIX (sembilan) TopikManajemen Memory Sub TopikDasar Manajemen Memory Materi  Latar Belakang  Ruang Alamat Logika dan Ruang Alamat Fisik o Swapping.
Sistem Input/output (I/O)
Cache Memori Oleh : Ahmad Fuad Hariri Fitriana Nelvi Tino Arif Cahyo
SISTEM OPERASI Manajemen Memori Asmaul Husna ( )
MANAJEMEN MEMORI 1. Konsep dasar memori. - Konsep Binding
KD. Daprin Wakaliana ( ) I Kt. Budi Wirawan M. P ( ) 2.
MANAJEMEN MEMORY.
Manajemen Memori (2).
MEMORI. I NTRODUCTION Memori adalah pusat data berkumpul sebelum atau sesudah di eksekusi oleh CPU CPU mengambil instruksi dari memori (ex instruksi simpan.
“Manajemen Memori Nyata”
PERTEMUAN KESEPULUH Memory HARDWARE.
PERTEMUAN KE-17 PERKULIAHAN SISTEM OPERASI
SISTEM OPERASI MODUL Manajemen Memori Yuli Haryanto, M.Kom
Sistem Operasi (Operating Systems) Minggu 8
SISTEM PAGING.
SISTEM PAGING STMIK MDP Palembang
Defiana Arnaldy, M.Si Manajemen Memori Defiana Arnaldy, M.Si
MEMORY (Manajemen Memori)
MANAJEMEN MEMORI.
Memory-Management Unit
MATERI 7 SISTEM OPERASI Managemen Memori Oleh : Mufadhol, S.Kom
Memori Manajemen Memori
Thirteen: Microprocessor dan Memory. 2 Objectives Setelah menyelesaikan bab ini, anda diharapkan dapat: Mengerti tentang memory pada komputer. Mengenal.
Antonius Wahyu Sudrajat, S. Kom., M.T.I. Layanan Sistem Operasi, System Calls, dan System Program.
Oleh : Solichul Huda, M.Kom
Memory.
SISTEM OPERASI Pertemuan 5 : Manajemen Memori
SISTEM OPERASI MEMORY MANAGEMENT.
Virtual Memori.
Manajemen Memori.
Manajemen Main Memory.
Management Memory.
Struktur Sistem Komputer
Operasi pada Sistem Operasi
Lecture 6 Main Memory Erick Pranata
Manajemen Memori.
OPERATING SYSTEM.
Manajemen Memori (1).
Sistem Paging Edi Sugiarto, S.Kom.
9. Manajemen Memori Utama
MEMORY MANAGEMENT PART 2
Manajemen Memori.
Manajemen Memori Pemartisan Statis
Struktur Sistem Operasi
PERTEMUAN KESEPULUH Memory HARDWARE.
Chalifa Chazar SISTEM PAGING Chalifa Chazar
MANAJEMEN MEMORI.
TEKNIK KOMPUTER - UNIKOM Jalan Dipatiukur 112 Bandung
Manajemen Memori (2).
Memori Virtual Dosen: Abdillah S.Si., MIT.
MANAJEMEN MEMORY PART 3 Ritzkal, S.Kom,CCNA.
Struktur Sistem Komputer
Diagram Komponen Umum Hardware
Virtual Memori.
Hierarki Memori Dan Cache Memori..
Manajemen Memori (2).
Manajemen Memori Pertemuan 14 & 15 Sistem Operasi (CSG3E3)
Struktur Sistem Komputer
PENGERTIAN RANDOM ACCESS MEMORY
Sistem Operasi Teknik Informatika STT Wastukancana Purwakarta
Manajemen Memori (2).
MANAJEMEN MEMORY.
MANAJEMEN MEMORY.
OPERATING SYSTEM. 1.Fungsi Sistem Operasi 2.Penjadwalan Proses 3.Memori Manajemen Dukungan Sistem Operasi meliputi:
Transcript presentasi:

Manajemen Memori

Tugas Kelompok Pengenalan alat 5 menit Fungsi Cara kerja Latihan memasang atau merakit 5 menit Menjelaskan cara kerja memori dan manasaja yang disebut memori Menjelaskan bagaimana cara kerja komputer tersebut berdasarkan alat yang ada Lempar pertanyaan masing-masing kelompok

Kel 1 (Feky) Kel 2 (Resno) Kel 3 (Dano)

Pendahuluan Memori adalah pusat dari operasi pada sistem komputer modern. Memori adalah array besar dari word atau byte, yang disebut alamat. CPU mengambil instruksi dari memory berdasarkan nilai dari program counter. Instruksi ini menyebabkan penambahan muatan dari dan ke alamat memori tertentu. Instruksi eksekusi yang umum, contohnya, pertama mengambil instruksi dari memori. Instruksi dikodekan dan mungkin mengambil operand dari memory. Setelah instruksi dieksekusi pada operand, hasilnya ada yang dikirim kembali ke memory. Sebagai catatan, unit memory hanya merupakan deretan alamat memory; tanpa tahu bagaimana membangkitkan (instruction counter, indexing, indirection, literal address dan lainnya) atau untuk apa (instruksi atau data). Oleh karena itu, kita dapat mengabaikan bagaimana alamat memori dibangkitkan oleh program, yang lebih menarik bagaimana deretan alamat memori dibangkitkan oleh program yang sedang berjalan.

KAPASITAS MEDIA PENYIMPAN Berikut ini satuan kapasitas media penyimpan, antara lain: 1. Bit = 1 bit 2. Nibble = 4 bit 3. Byte = 8 bit = 1 Byte 4. Kilobyte = 1000 byte = 1 Kb 5. Megabyte = 1000000 byte = 1 Mb 6. Gigabyte = 1000000000 byte = 1 Gb 7. Terrabyte = 1000000000000 byte = 1 Tb

Jenis Memori Memory atau RAM adalah hardware atau perangkat bagian dari komputer yang digunakan untuk menyimpan sementara data atau program yang sedang dijalankan termasuk service atau layanan dalam sebuah operating system. Data aplikasi yang disimpan dalam RAM bersifat sementara selama komputer hidup atau dialiri daya. Saat komputer itu dimatikan, data yang tersimpan simpan dalam memori akan hilang.

Jenis Memori RAM. Random Access Memory adalah Generasi awal memory komputer untuk menyimpan data dan instruksi yang diberikan oleh prosesor. EDO RAM. Extended Data Output RAM adalah jenis memori untuk menyimpan data dari prosesor dengan lebih cepat seperti generasi pertama prosessor Intel Pentium. EDO RAM awalnya dioptimalkan untuk prosessor Pentium 66 MHz.

Jenis Memori SDRAM. Synchronous Dynamic RAM adalah memori generasi selanjutnya dan dalam memproses data lebih cepat dari EDO RAM. Kecepatan SDRAM digolongkan berdasarkan MHz bukan nanosecond (ns). Hal ini membuat lebih mudah untuk membandingkan kecepatan bus dan kecepatan chip RAM. Memory SDRAM berbentuk DIMM (Dual Inline Memory Module) dan digunakan di motherboard 168pin. DDR SDRAM. Double Data Rate Synchronous DRRAM merupakan memori yang memiliki kemampuan dua kali lebih cepat dari SDRAM. DDR SDRAM memiliki jumlah pin lebih banyak dari SDRAM yaitu 184pin. Jenis memori DDR SDRAM ini yang saat ini banyak digunakan untuk komputer desktop dan notebook. Dimulai dari DDR, DDR2 dan DDR3.

Jenis Memori RDRAM. Rambus Dynamic RAM adalah memori berkecepatan tinggi yang menjanjikan transfer data hingga 1,6 GB per detik. Lalu muncul juga Direct Rambus Dynamic (DRDRAM), sebuah teknologi yang dikembangkan dan dilisensikan oleh Rambus Corporation. RDRAM menggunakan slot RIMM,yang mirip dengan slot SDRAM dan lebih banyak digunakan untuk komputer server atau orang yang membutuhkan memori berkecepatan sangat tinggi. Type memori ini juga mendukung system dual-channel untuk kinerja server dengan kecepatannya yang sangat tinggi. Namun, sayang harganya yang sangat mahal membuat memory jenis ini jarang digunakan.

Manajemen memori Mendefinisikan manajemen ada berbagai ragam, ada yang mengartikan dengan ketatalaksanaan, manajemen pengurusan dan lain sebagainya. Pengertian manajemen dapat dilihat dari tiga pengertian. Manajemen sebagai suatu proses Manajemen sebagai suatu kolektivitas manusia Manajemen sebagai ilmu ( science ) dan sebagai seni Manajemen sebagai suatu proses. Memori adalah pusat kegiatan pada sebuah komputer, karena setiap proses yang akan dijalankan harus melalui memoriter lebih dahulu. Sedangkan manajemen adalah cara / pengaturan agar sesuatu dapat bekerja secara maksimal dan efisien. Sehingga dapat didefinisikan bahwa Manajemen Memori adalah cara / pengaturan agar pusat kegiatan pada sebuah komputer dapat bekerja secara maksimal dan efisien. Memori adalah array besar dari word atau byte, yang disebut alamat. CPU mengambil instruksi dari memory berdasarkan nilai dari program counter. Instruksi ini menyebabkan penambahan muatan dari dan ke alamat memori tertentu

Tujuan Manajemen Memori Meningkatkan utilitas CPU yang sebesar-besarnya Data dan instruksi dapat diakses dengan cepat oleh CPU Memori utama memiliki kapasitas yang sangat terbatas sehingga pemakaiannya harus efisien Transfer data dari/ke memori utama ke/dari CPU dapat efisien Mengelola informasi memori yang dipakai dan tidak dipakai Mengalokasikan memori ke proses yang memerlukan Mendealokasikan memori dari proses yang telah selesai Mengelola swapping antara memori utama dan disk

Pembagian Memori manajemen Manajemen Memori dibedakan menjadi dua, yaitu : Swapping : Manajemen Memori dengan swapping adalah manajemen memori dengan pemindahan proses antara memori utama dan disk selama eksekusi. Tanpa swapping adalah manajemen memori tanpa pemindahan proses antara memori utama dan disk selama eksekusi.

STRATEGI MANAJEMEN MEMORI Dokomen hardware Kinerja Fragmantation Relokasi Swapping Sharing Proteksi

MANAJEMEN MEMORI Instruksi eksekusi yang umum, contohnya, pertama mengambil instruksi dari memori. Instruksi dikodekan dan mungkin mengambil operand dari memory. Setelah instruksi dieksekusi pada operand, hasilnya ada yang dikirim kembali ke memory. Sebagai catatan, unit memory hanya merupakan deretan alamat memory; tanpa tahu bagaimana membangkitkan (instruction counter, indexing, indirection, literal address dan lainnya) atau untuk apa (instruksi atau data). Oleh karena itu, kita dapat mengabaikan bagaimana alamat memori dibangkitkan oleh program, yang lebih menarik bagaimana deretan alamat memori dibangkitkan oleh program yang sedang berjalan. MANAJEMEN MEMORI 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

Manajemen Memori Pengikatan Alamat (Address Binding) Dinamic Loading Dinamic Linking Overlay

Pengikatan Alamat (Address Binding) Pengikatan alamat adalah cara instruksi dan data (yang berada di disk sebagai file yang dapat dieksekusi) dipetakan ke alamat memori. Sebagian besar sistem memperbolehkan sebuah proses user (user process) untuk meletakkan di sembarang tempat dari memori fisik. Sehingga, meskipun alamat dari komputer dimulai pada 00000, alamat pertama dari proses user tidak perlu harus dimulai 00000. Pada beberapa kasus, program user akan melalui beberapa langkah sebelum dieksekusi (Gambar 7-1). Alamat pada source program umumnya merupakan alamat simbolik. Sebuah compiler biasanya melakukan pengikatan alamat simbolik (symbolic address) ke alamat relokasi dipindah (relocatable address). Misalnya compiler mengikatkan alamat simbolik ke alamat relokasi “14 byte from the beginning of this module”. Editor Linkage mengikatkan alamat relokasi ini ke alamat absolute (absolute addresses) “74014”.

Pengikatan Alamat (Address Binding) Instruksi pengikatan instruksi dan data ke alamat memori dapat dilakukan pada saat : Compile time : Jika lokasi memori diketahui sejak awal, kode absolut dapat dibangkitkan, apabila terjadi perubahan alamat awal harus dilakukan kompilasi ulang. Misalnya : program format .com pada MS-DOS adalah kode absolut yang diikat pada saat waktu kompilasi Load time : Harus membangkitkan kode relokasi jika lokasi memori tidak diketahui pada saat waktu kompilasi. Execution time : Pengikatan ditunda sampai waktu eksekusi jika proses dapat dipindahkan selama eksekusi dari satu segmen memori ke segmen memori lain. Memerlukan dukungan perangkat keras untuk memetakan alamat (misalnya register basis dan limit).

Dinamic 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. Mekanisme dari dynamic loading adalah program utama di-load dahulu dan dieksekusi. Bila suatu routine perlu memanggil routine lain, routine yang dipanggil lebih dahulu diperiksa apakah rutin yang dipanggil sudah di-load. Jika tidak, relocatable linking loader dipanggil untuk me-load rutin yg diminta ke memori dan meng-ubah tabel alamat. Keuntungan dari dynamic loading adalah rutin yang tidak digunakan tidak pernah di-load. Skema ini lebih berguna untuk kode dalam jumlah besar diperlukan untuk menangani kasus-kasus yang jarang terjadi seperti error routine. Dinamic loading tidak memerlukan dukungan khusus dari sistem operasi. Sistem operasi hanya perlu menyediakan beberapa rutin pustaka untuk implementasi dynamic loading.

Dinamic Linking Sebagian besar sistem operasi hanya men-support static linking, dimana sistem library language diperlakukan seperti obyek modul yang lain dan dikombinasikan dengan loader ke dalam binary program image. Konsep dynamic linking sama dengan dynamic loading. Pada saat loading, linking ditunda sampai waktu eksekusi. Terdapat kode kecil yang disebut stub digunakan untuk meletakkan rutin library di memori dengan tepat. Stub diisi dengan alamat rutin dan mengeksekusi rutin. Sistem operasi perlu memeriksa apakah rutin berada di alamat memori. Dinamic linking biasanya digunakan dengan sistem library, seperti language subroutine library. Tanpa fasilitas ini, semua program pada sistem perlu mempunyai copy dari library language di dalam executable image. Kebutuhan ini menghabiskan baik ruang disk maupun memori utama. Bagaimanapun, tidak seperti dynamic loading, dynamic linking membutuhkan beberapa dukungan dari sistem operasi, misalnya bila proses-proses di memori utama saling diproteksi, maka sistem operasi melakukan pengecekan apakah rutin yang diminta berada diluar ruang alamat. Beberapa proses diijinkan untuk mengakses memori pada alamat yang sama. File dynamic linking berekstensi .dll, .sys atau .drv

Overlay Sebuah proses dapat lebih besar daripada jumlah memori yang dialokasikan untuk proses, teknik overlay biasanya digunakan untuk kasus ini. 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. Sebagai contoh misalnya terdapat two-pass assembler. Selama pass 1, dibangun table symbol, dan selama pass 2 dibangkitkan kode bahasa mesin. Kita dapat membagi assembler ke dalam kode pass 1, kode pass 2, tabel symbol dan rutin umum yang digunakan baik pada pass 1 maupun pass 2. Diasumsikan ukuran komponen sebagai berikut : Pass 1 70K Pass 2 80K Tabel symbol 20K Rutin umum 30K

Overlay Apabila semua diletakkan di memori memerlukan 200K. Jika hanya tersedia tempat 150K, proses tidak dapat dijalankan. Pass 1 dan pass 2 tidak perlu berada di memori pada waktu yang sama. Dengan menggunakan overlay, rutin dibagi dalam 2 overlay. Overlay A adalah tabel symbol, rutin umum dan pass1 (membutuhkan total 120K) dan overlay B terdiri dari tabel symbol, rutin umum dan pass 2 (membutuhkan 130K). Ditambahkan 10K untuk driver overlay dan dimulai dari overlay A. Setelah selesai dijalankan overlay B dengan mengganti tempat dari overlay A. Gambaran overlay dapat dilihat pada Gambar 7-2. Overlay tidak membutuhkan dukungan khusus dari sistem operasi. User dapat mengimplementasikannya secara lengkap menggunakan struktur file sederhana, membaca dari file ke memori dan meloncat ke memori dan mengeksekusi instruksi read yang lebih baru. Sistem operasi memberitahu hanya jika terdapat I/O yang melebihi biasanya. Penggunaan overlay terbatas untuk beberapa sistem yang mempunyai jumlah memori fisik terbatas dan kekurangan dukungan H/W untuk teknik yang lebih lanjut.

Overlay

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. Hasil skema waktu kompilasi dan waktu pengikatan alamat pada alamat logika dan alamat memori adalah sama. Tetapi hasil skema waktu pengikatan alamat waktu eksekusi berbeda. dalam hal ini, alamat logika disebut dengan alamat maya (virtual address). Himpunan dari semua alamat logika yang dibangkitkan oleh program disebut dengan ruang alamat logika (logical address space); himpunan dari semua alamat fisik yang berhubungan dengan alamat logika disebut dengan ruang alamat fisik (physical address space). 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.

RUANG ALAMAT LOGIKA DAN RUANG ALAMAT FISIK 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. User program tidak pernah melihat alamat fisik secara real. Program dapat membuat sebuah penunjuk ke lokasi 346, mengirimkan ke memory, memanipulasinya, membandingkan dengan alamat lain, semua menggunakan alamat 346. Hanya ketika digunakan sebagai alamat memory akan direlokasi secara relatif ke register basis.

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. Pada saat waktu kuantum berakhir, manajer memori akan memulai untuk menukar proses yang baru selesai keluar dan menukar proses lain ke dalam memori yang dibebaskan (Gambar 7-4). Pada waktu berjalan, penjadwal CPU (CPU scheduler) akan mengalokasikan sejumlah waktu untuk proses yang lain di memori. Ketika masing-masing proses menyelesaikan waktu kuantum-nya, akan ditukar dengan proses yang lain. Proses swapping

SWAPPING Kebijakan penukaran juga dapat digunakan pada algoritma penjadwalan berbasis prioritas. Jika proses mempunyai prioritas lebih tinggi datang dan meminta layanan, memori akan swap out proses dengan prioritas lebih rendah sehingga proses dengan prioritas lebih tinggi dapat di-load dan dieksekusi. Umumnya sebuah proses yang di-swap out akan menukar kembali ke ruang memori yang sama dengan sebelumnya. Jika proses pengikatan dilakukan pada saat load-time, maka proses tidak dapat dipindah ke lokasi yang berbeda. Tetapi, jika pengikatan pada saat execution-time , maka kemungkinan proses ditukar ke ruang memori yang berbeda, karena alamat fisik dihitung selama waktu eksekusi. Bila CPU scheduler memutuskan untuk mengeksekusi proses, OS memanggil dispatcher. Dispatcher memeriksa untuk melihat apakah proses selanjutnya pada ready queue ada di memori. Jika tidak dan tidak terdapat cukup memori bebas, maka dispatcher swap out sebuah proses yang ada di memori dan swap in proses tersebut. Kemudian reload register ke keadaan normal. Teknik swapping yang sudah dimodifikasi ditemui pada beberapa sistem misalnya Linux, UNIX dan Windows.

ALOKASI BERURUTAN Memori utama biasanya dibagi ke dalam dua partisi yaitu untuk Sistem operasi biasanya diletakkan pada alamat memori rendah dengan vektor Interupsi Proses user yang diletakkan pada alamat memori tinggi. Alokasi proses user pada memori berupa single partition allocation atau multiple partition allocation.

Single Partition Allocation Pada single partition allocation diasumsikan sistem operasi ditempatkan di memori rendah dan proses user dieksekusi di memori tinggi. Kode dan data sistem operasi harus diproteksi dari perubahan tak terduga oleh user proses. Proteksi dapat dilakukan dengan menggunakan register relokasi (relocation register) dan register limit (limit register). Register relokasi berisi nilai dari alamat fisik terkecil sedangkan register limit berisi jangkauan alamat logika dan alamat logika harus lebih kecil dari register limit. MMU memetakan alamat logika secara dinamis dengan menambah nilai pada register relokasi.

Multiple Partition Allocation Pada multiple partition allocation, mengijinkan memori user dialokasikan untuk proses yang berbeda yang berada di antrian input (input queue) yang menunggu dibawa ke memori. Terdapat dua skema yaitu partisi tetap (fixed partition) dimana memori dibagi dalam sejumlah partisi tetap dan setiap partisi berisi tepat satu proses. Jumlah partisi terbatas pada tingkat multiprogramming. Digunakan oleh IBM OS/360 yang disebut Multiprogramming with a Fixed number of Task (MFT). Skema yang kedua adalah partisi dinamis (variable partition) merupakan MFT yang digeneralisasi yang disebut Multiprogramming with a Variable number of Tasks (MVT). Skema ini digunakan terutama pada lingkungan batch. Pada MVT, sistem operasi menyimpan tabel yang berisi bagian memori yang tersedia dan yang digunakan. Mula-mula, semua memori tersedia untuk proses user sebagai satu blok besar (large hole). Lubang (hole) adalah blok yang tersedia di memori yang mempunyai ukuran berbeda. Bila proses datang dan memerlukan memori, dicari lubang (hole) yang cukup untuk proses. Bila ditemukan memory manager mengalokasikan sejumlah memori yang dibutuhkan dan menyimpan sisanya untuk permintaan berikutnya. Sistem operasi menyimpan informasi tentang partisi yang dialokasikan dan partisi yang bebas (hole).