Memori Manajemen Memori SISTEM OPERASI Memori Manajemen Memori
MEMORI & MEDIA PENYIMPANAN Memori adalah istilah generik bagi tempat penyimpanan data dalam komputer. Beberapa jenis memori yang banyak digunakan adalah sebagai berikut: Register prosesor RAM atau Random Access Memory Cache Memory (SRAM) (Static RAM) Memori fisik (DRAM) (Dynamic RAM) Perangkat penyimpanan berbasis disk magnetis Perangkat penyimpanan berbasis disk optik Memori yang hanya dapat dibaca atau ROM (Read Only Memory) Flash Memory Punched Card (kuno) CD atau Compact Disk DVD
MEMORI (Memory) Memori berfungsi menyimpan sistem aplikasi, sistem pengendalian, dan data yang sedang beroperasi atau diolah. Semakin besar kapasitas memori akan meningkatkan kemapuan komputer tersebut. Memori diukur dengan KB atau MB.
Cara Konvensional Penyimpanan Data Cara Moderen Kelebihan: a. ? b. ? Kekurangan: a. ? b. ? Kelebihan: a. ? b. ? Penyimpanan Data File Kekurangan: a. ? b. ? Cara Moderen Kelebihan: a. ? b. ? Memanfaatkan Teknologi Informasi (Komputer) Database Kekurangan: a. ? b. ?
SISTEM KOMPUTER Jaringan dari elemen-elemen yg saling berhubungan, membentuk satu kesatuan untuk melaksanakan suatu tujuan pokok HARDWARE Peralatan dari sistem komputer yang secara fisik terlihat dan terjamah SOFTWARE Program yang berisi perintah untuk melakukan pengolaahan data BRAINWARE Manusia yang terlibat dalam mengoperasikan serta mengatur sistem komputer
( Central Processing Unit ) Tugas Arithmetic Logic Unit Melakukan semua perhitungan aritmatika yang terjadi sesuai instruksi program Melakukan pengambilan keputusan dari operasi logika sesuai dengan instruksi program ALAT PEMROSES C P U ( Central Processing Unit ) Tempat pemrosesan instruksi-instruksi program A L U Tugas Contro Unit Mengatur & mengendalikan alat I/O Mengambil instruksi dari main memory Mengambil data dari main memory jika diperlukan oleh proses Mengirim instruksi ke ALU bila ada perhitungan arithmatika/perbandingan logika serta mengawasi kerja ALU Menyimpan hasil proses ke main memory C U
ALAT PENYIMPANAN MAIN MEMORY REGISTER EXTERNAL MEMORY Dipergunakan untuk menyimpan instruksi dan data yang akan diproses dan dari hasil pengolahan REGISTER Dipergunakan untuk menyimpan instruksi dan data yang sedang diproses EXTERNAL MEMORY Dipergunakan untuk menyimpan program dan data secara permanen ( simpanan luar )
Main Memory / Main Storage / Internal Memory / Internal Storage / Primary Storage / Temporary Storage / Immediate Access Storage Merupakan tempat penyimpanan terbesar dalam komputer Ukuran dari Main Memory ditunjukkan oleh satuan terkecilnya yakni Byte Kilo Byte ( KB ) = 1024 Byte Mega Byte ( MB ) = 1024 KB Giga Byte ( GB ) = 1024 MB Terra Byte 1 Byte memory terdiri dari 8 Bit ( Binary Digit ), dimana setiap digit diwakili oleh digit 1 atau 0, sehingga membentuk kode pada lokasi memory ( address ) Sistem pengkodeannya dapat berbentuk BCD, SBCDIC, EBCDIC, atau kode ASCII
Main Memory terdiri dari RAM dan ROM Alat Pemroses CPU CU Register Alat Input ALU Alat Output Main Memory RAM ROM Main Memory terdiri dari RAM dan ROM
Input Storage ; untuk menampung input yang dimasukkan oleh alat input RAM ( Random Acces Memory ) merupakan memory yang dapat diisi dan diambil isinya oleh programmer. Bersifat VOLATILLE Berkas data atau program akan hilang bila listrik dipadamkan. Struktur RAM : Input Storage ; untuk menampung input yang dimasukkan oleh alat input 2. Program Storage ; untuk menyimpan semua instruksi program yang akan diproses Working Storage ; untuk menyimpan data yang akan diolah dan dari hasil proses Output Storage ; untuk menampung hasil akhir dari pengolahan data yang akan ditampilkan ke alat output. RAM memiliki kemampuan untuk melakukan pengecekan dari data yang disimpannya, disebut dengan istilah PARITY CHECK EVEN PARITY CHECK ( Jumlah bit 1 harus genap ) ODD PARITY CHECK ( Jumlah bit 1 harus ganjil )
ROM ( Read Only Memory ) Memori yang hanya dapat dibaca. Pengisian ROM dengan program maupun data, dikerjakan oleh pabrik. ROM biasanya sudah ditulisi program maupun data dari pabrik dengan tujuan-tujuan khusus. Misal : Diisi penterjemah (interpreter) dalam bahasa basic. Jadi ROM tidak termasuk sebagai memori yang dapat kita pergunakan untuk program-program yang kita buat. ROM bersifat NON VOLATILE (Berkas data atau program tidak akan hilang sekalipun listrik dipadamkan) Contoh BIOS (Basic Input Output System)
ROM
REGISTER Merupakan simpanan kecil yang memiliki kecepatan tinggi ( 5 sampai 10 kali kecepatan main memory ) Digunakan untuk menyimpan instruksi dan data yang sedang diproses oleh CPU ( instruksi lain yang menunggu giliran disimpan di main memory ) Terbagi atas : 1. Instruction Register ( IR ) atau Program Register yang digunakan untuk menyimpan instruksi yang sedang diproses 2. Program Counter ( PC ) atau Control Counter / instruction counter adalah register yang digunakan untuk menyimpan alamat ( address ) lokasi dari main memory yang berisi instruksi yang sedang diproses
Register yang berhubungan dengan data yang sedang diproses disebut General Purpose Register yang memiliki kegunaan sebagai Operand Register ( untuk menampung data atau operand yang sedang diolah ) & sebagai Accumulator ( untuk menyimpan hasil dari operasi aritmatika dan logika yang dilakukan ALU ).
MAIN C P U CACHE MEMORY MEMORY Sebagai tambahan dari Register, beberapa CPU menggunakan suatu Cache Memory / Scratch-pad Memory / High-speed buffer / Buffer Memory dengan tujuan agar kerja dari CPU lebih efisien dan dapat mengurangi waktu yang terbuang. C P U MAIN MEMORY CACHE MEMORY
EXTERNAL MEMORY SASD DASD MICRO DISK MINI DISK MAGNETIC DISK PUNCH CARD REMOVABLE DISK ( DISK PACK ) HARD CARD PAPER TAPE HARD DISK FIXED DISK (WINCHESTER DISK) MAGNETIC TAPE TAPE STRIP CATRIDGE REEL TO REEL DISK CARTRIDGE OPTICAL DISK CARTRIDGE TAPE MAGNETIC DRUM CASSETTE MEGNETIC DUBBLE MEMORY
Jenis Secondary Storage Serial / Sequential Access Storage Device (SASD) Contoh : Magnetic Tape, Punched Card, Punched Paper Tape Direct Access Storage Device (DASD) Contoh : Magnetic Disk, Floppy Disk, Mass Storage
Jenis memori yang terdapat dipasaran diantaranya : 1. SIMM (Single in-line memory module) Mempunyai kapasitasz 30 atau 72 pin. Memori SIMM 30pin untuk kegunaan PC zaman 80286 sehingga 80486 dan beroperasi pada 16 bit. Memory 72 pin banyak digunakan untuk PC berasaskan Pentium dan beroperasi pada 32 bit. Kecepatan dirujuk mengikuti istilah ns (nano second) seperti 80ns, 70ns, 60ns dan sebagainya. Semakin kecil nilainya maka kecepatan lebih tinggi. DRAM (dynamic RAM) dan EDO RAM (extended dataout RAM) menggunakan SIMM. DRAM menyimpan bit di dalam suatu sel penyimpanan (storage sell) sebagai suatu nilai elektrik (electrical charge) yang harus di-refesh beratus-ratus kali setiap saat untuk menetapkan (retain) data. EDO RAM sejenis DRAM lebih cepat, EDO memakan waktu dalam output data, dimana ia memakan waktu di antara CPU dan RAM. Memori jenis ini tidak lagi digunakan pada komputer akhir-akhir ini .
2. DIMM (dual in-line memory module) Berkapasitas 168 pin, kedua belah modul memori ini aktif, setiap permukaan adalah 84 pin. Ini berbeda daripada SIMM yang hanya berfungsi pada sebelah modul saja. Menyokong 64 bit penghantaran data. SDRAM (synchronous DRAM) menggunakan DIMM. Merupakan penganti dari DRAM, FPM (fast page memory) dan EDO. SDRAM pengatur (synchronizes) memori supaya sama dengan CPU clock untuk pemindahan data yang lebih cepat. dan terdapat dalam dua kecepatan yaitu 100MHz (PC100) dan 133MHz (PC133).
3. DDR SDRAM (double-data-rate SDRAM) Ciri-ciri DDR SDRAM sama dengan SDRAM, tetapi pemindahan data (data transfer) mendekati kecepatan sistem jam (system clock) dan ini secara teori meningktkan kecepatan SDRAM. Dahulu digunakan sebagai memori untuk card terpisah tetapi pada saat ini pabrik komputer membuatnya pada modul memori untuk motherboard sebagai satu jalan alternatif untuk pengganti SDRAM yang mempunyai 184 pin dan terdapat dalam tiga kecepatan yaitu 266MHz, 333MHz dan 400MHz.
4. DRDRAM (direct Rambus DRAM) Dulu dikenali sebagai RDRAM. Adalah sejenis SDRAM yang dibuat oleh Rambus. DRDRAM digunakan untuk CPU dari Intel yang berkecepatan tinggi. Pemindahan data sama seperti DDR SDRAM tetapi mempunyai dua saluran data untuk meningkatkan kemampuan. Juga dikenali sebagai PC800 yang kerkelajuan 400MHz. Beroperasi dalam bentuk 16 bit bukan 64 bit.
Jenis memori dalam komputer : Chace Memory • Fungsi utama memori cache adalah untuk menyimpan olahan data yang telah diproses oleh CPU. • Memiliki kecepatan yang sangat tinggi yang digunakan sebagai perantara RAM & CPU, mempunyai kecepatan lebih tinggi dari RAM namun harga mahal. • Cache juga berfungsi sebagai penimbal (buffer) diantara CPU dengan memori utama kerana kecepatan cache lebih cepat.
Kategori Tempat Penyimpanan Memori utama adalah tempat penyimpanan yang volatile, dimana isinya hilang bila sumber energinya ( energi listrik ) dimatikan. Kebanyakan sistem komputer menyediakan secondary storage sebagai perluasan dari memori utama. Syarat utama dari secondary storage adalah dapat menyimpan data dalam jumlah besar secara permanen. Secondary storage yang paling umum adalah disk magnetik, yang meyediakan penyimpanan untuk program maupun data. Disk magnetik adalah alat penyimpanan data yang nonvolatile yang juga menyediakan akses secara random. Tape magnetik digunakan terutama untuk backup, penyimpanan informasi yang jarang digunakan, dan sebagai media pemindahan informasi dari satu sistem ke sistem yang lain.
Peralatan Penyimpanan TAPE Satu lagi yang menggunakan teknologi Magnetic adalah Tape. Tape menggunakan bahan yang sama dengan floopy, yaitu plastik yang dilapisi dengan lapisan magnetic. Namun sayangnya, Tape bersifat sequential, artinya data yang diakses harus berurutan sehingga waktu akses menjadi lebih panjang. Contohnya saja jika Anda mendengarkan sebuah lagu lewat kaset. Untuk memutar lagu nomor tiga, maka Anda harus melewati lagu pertama dan kedua. Namun biarpun waktu akses lebih lama, kapasitas tape jauh lebih besar ketimbang floopy atau zip. Oleh sebab itu, sampai saat ini keberadaan Tape tetap digunakan untuk proses backup.
OPTICAL CD adalah media penyimpanan yang menggunakan teknologi optic. Cara kerja sebuah media penyimpanan yang menggunakan teknologi optic berbeda dengan magnetic. Jika dengan teknologi magnetic memanfaatkan medan magnet, maka pada teknologi optic memanfaatkan sinar laser. Sinar laserdigunakan, baik untuk membaca maupun untuk menuliskan data. Apa yang dibaca dalam sebuah CD yangmemiliki permukaan yang datar? Sebenarnya di balik permukaannya yang datar,terdapat tonjolan-tonjolan yang sangat kecil (dalam micron), di balik permukaaninilah data tersimpan. CD yang digunakan untuk menyimpan data disebut juga dengan CD-R (CDRecordable) dan CD-RW (CD Rewriteable). Jika CD-R hanya dapat dituliskansekali saja (tidak dapat dihapus), maka CD-RW dapat dituliskan secara berulang (dihapus dan ditulis kembali).
Perbedaan keduanya terletak pada lapisan alumunium yang digunakan. Meskipun keduanya menggunakan lapisan alumunium organic, namuncampurannya agak berbeda. Sehingga jika terkena sinar laser dengan temperatur untuk menghapus, maka lapisan tersebut akan terkristalisasikan kembali. Sedangkan jika terkena sinar dengan temperatur untuk menulis, maka ia tidak akan terkristalisasikan. Campuran yang lebih kompleks inilah yang menyebabkan CDRW lebih mahal dari CD-R.
DVD (digital versatile disc) Yang tergolong dalam teknologi optic tidak hanya CD saja. Salah satu yang masih segar adalah DVD. Secara umum, DVD memang lebih banyak dipergunakan sebagai media entertainment saja. Namun saat ini, sudah banyak juga praktisi TI ataupun praktisi multimedia yang menggunakan DVD sebagai media alternatif. Dibandingkan dengan CD, DVD memiliki ruang penyimpanan yang jauh lebih besar. Yang membedakan antara DVD dengan CD adalah sinar laser dan kepingan yang digunakan. Meskipun sinar lasernya sama yaitu sinar laser merah, namun panjang gelombangnya berbeda. Begitu pula dengan struktur lapisan dalam pada kepingan disc-nya. Berbeda dengan CD yang hanya ada dua jenis saja yang digunakan sebagai media penyimpanan. DVD memiliki jenis yang lebih beragam. Masing-masing jenis akan mempengaruhi jumlah data yang dapat disimpan. Namun yang paling umum digunakan adalah DVD–R dan DVD–RW. Harga per keping keduanya juga sudah lebih murah. Meskipun belum semurah CD-R/RW.
BLUE RAY Berbeda dengan teknologi magnetic yang terkesan bergerak lamban, teknologi optic memang terlihat lebih cepat. Meskipun saat ini keberadaan DVD belum umum digunakan sebagai media penyimpanan data, namun perkembangan teknologi optic terus berjalan cepat. Salah stau momen yang menandakan kemajuannya adalah dengan diperkenalkannya Blue Ray Disc setahun belakangan ini. Berbeda dengan dua perangkat optic sebelumnya yang menggunakan sinar laser merah, Blue Ray sesuai dengan namanya yang diambil dari kata Blue yang berarti biru adalah menggunakan sinar laser biru. Data yang tersimpan dalam kepingan Blue Ray dapat mencapai 5 GB. Sedangkan yang dual layernya dapat mencapai 10 GB. Blue Ray masih dalam proses pemantapan. Oleh sebab itu, belum dipasarkan secara umum. Lagi pula saat ini masyarakat awam belum membutuhkan ruang sebesar itu untuk keperluan datanya. Oleh sebab itu untuk target awal, pemasaran Blue Ray lebih menitikberatkan pada perusahaan sebagai media back-up, seperti layaknya tape.
SOLID STATE MEDIA Teknologi media penyimpanan yang terakhir ini memiliki salah satu ciri yang sangat menonjol yaitu tidak menimbulkan suara sama sekali dalam proses kerjanya. Hal tersebut dikarenakan pada bagian inti media terakhir ini memang tidak terdapat satu komponen yang bergerak sama sekali. Oleh sebab itu, media yang terakhir ini disebut Solid State Media. Ukuran media yang terakhir ini juga sangat bervariasi, namun umumnya sangat kecil. Bahkan masih lebih kecil jika dibandingkan dengan floopy disk. Oleh sebab itu, biasanya Solid State Media digunakan untuk perangkat mobile digital. Mulai dari ponsel, kamera digital, PDA, sampai MP3 Player. Bagian dalam Media Solid ini lebih menyerupai RAM dibandingkan Harddisk. Sedangkan cara kerjanya tidak ama dengan RAM, namun lebih menyerupai memory BIOS komputer Anda. Jika pada RAM memory akan hilang pada saat aliran listrik berhenti, pada Media Solid hal ini tidak terjadi. Media Solid ini juga dinamakan Flash Memory
Tiap track dibagi dalam beberapa segment yang dikenal sebagai sector. Hard Disk Hardisk merupakan piranti penyimpanan sekunder dimana data disimpan sebagai pulsa magnetik pada piringan metal yang berputar yang terintegrasi. Data disimpan dalam lingkaran konsentris yang disebut track. Tiap track dibagi dalam beberapa segment yang dikenal sebagai sector. Untuk melakukan operasi baca tulis data dari dan ke piringan, harddisk menggunakan head untuk melakukannya, yang berada disetiap piringan. Head inilah yang selanjut bergerak mencari sector-sector tertentu untuk dilakukan operasi terhadapnya. Waktu yang diperlukan untuk mencari sector disebut seek time. Setelah menemukan sector yang diinginkan, maka head akan berputar untuk mencari track. Waktu yang diperlukan untuk mencari track ini dinamakan latency.
KAPASITAS Kapasitas harddisk pada saat ini sudah mencapai orde ratusan GB. Hal ini dikarenakan teknologi bahan yang semakin baik, kerapatan data yang semakin tinggi. Teknologi dari Western Digital saat ini telah mampu membuat harddisk 200GB dengan kecepatan 7200RPM. Sedangkan Maxtor dengan Maxtor MaxLine II-nya yaitu harddisk berukuran 300GB dengan kecepatan 5400RPM. Beriringan dengan transisi ke ukuran harddisk yang lebih kecil dan kapasitas yang semakin besar terjadi penurunan dramatik dalam harga per megabyte penyimpanan, membuat hardisk kapasitas besar tercapai harganya olehpara pemakai komputer biasa.
Proses Baca Hardisk Saat sebuah sistem operasi mengirimkan data kepada hard drive untuk direkam, drive tersebut memproses data tersebut menggunakan sebuah formula matematikal yang kompleks yang menambahkan sebuah bit ekstra pada data tersebut.Bit tersebut tidak memakan tempat: Di kemudian hari, saat data diambil, bit ekstra tersebut memungkinkan drive untuk mendeteksi dan mengkoreksi kesalahan acak yang disebabkan oleh variasi dari medan magnet di dalam drive tersebut. Kemudian, drive tersebut menggerakkan head melalui track yang sesuai dari platter tersebut. Waktu untuk menggerakkan head tersebut dinamakan “seek time”. Saat berada di atas track yang benar, drive menunggu sampai platter berputar hingga sector yang diinginkan berada di bawah head. Jumlah waktu tersebut dinamakan “drive latency”. Semakin pendek waktu `seek` dan `latency`, semakin cepat drive tersebut menyelesaikan pekerjaannya.
Mekanisme Kerja Hard Disk Proses baca tulis dilakukan oleh lengan hd dengan media Fisik magnetikHead hardisk melakukan konversi bits ke pulse magnetik dan menyimpannya ke dalam platters, dan mengembalikan data jika proses pembacaan dilakukan Hard disk memiliki “Hard platter” yang berfungsi untuk menyimpan medan magnet. Pada dasarnya cara kerja hard disk adalah dengan menggunakan teknik perekaman medan magnet. Cara kerja teknik magnet tersebut memanfaatkan Iron oxide (FeO) atau karat dari besi, Ferric oxide (Fe2O3) atau oxida lain dari besi. 2 oxida tersebut adalah zat yang bersifat ferromagnetic , yaitu jika didekatkan ke medan magnet maka akan ditarik secara permanen oleh zat tersebut.
Sectors dan Tracks Tracks adalah bagian dari sepanjanjang keliling lingkaran dari luar sampai ke dalam.Sedangkan sector adalah bagian dari tracks.Sectors memiliki jumlah bytes yang sudah diatur. Ada ribuan sector dalam HD 1 sectors normalnya menyimpan 512 byte informasi Bahan Pembuat Hardisk Saat ini hd dibuat dengan teknologi material media magnetik disebut thin film.Lebih rapat, masa pakainya, kecil, ringan dari bahan oxide
SISTEM OPERASI Manajemen Memori
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.
HIRARKI MEMORY CHACE MEMRY MEMORY UTAMA MEMORY SEKUNDER
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
Fungsi manajemen memori 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.
Ada beberapa cara untuk menaruh sebuah proses yang di ambil dari disk ke dalam memori seperti : Address Binding Dynamic Loading Dynamic 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.
Address Binding 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.
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 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 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. 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.
RUANG ALAMAT 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. 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.
Manajemen memori Manajemen memori dengan Swapping Sebuah proses agar bisa dieksekusi bukan hanya membutuhkan sumber daya dari CPU, tetapi juga harus terletak dalam memori. Dalam tahapannya, suatu proses bisa saja ditukar sementara keluar memori ke sebuah penyimpanan sementara dan kemudian dibawa lagi ke memori untuk melanjutkan pengeksekusian. Hal ini dalam sistem operasi disebut swapping. Manajemen memori tanpa Swapping adalah manajemen memori tanpa pemindahan proses antara memori utama dan disk selama eksekusi. Kondisi tanpa swapping, bisa dikondisikan sebagai berikut : Monoprogramming. Multiprogramming dengan Sistem partisi statis Sistem partisi dinamis Sistem memory maya
Contoh manajemen memori tanpa Swapping Sebagai contoh, asumsikan sebuah multiprogramming environment dengan algoritma penjadwalan CPU round-robin. Ketika waktu kuantum habis, pengatur memori akan menukar proses yang telah selesai dan memasukkan proses yang lain ke dalam memori yang sudah bebas. Sementara di saat yang bersamaan, penjadwal CPU akan mengalokasikan waktu untuk proses lain di dalam memori. Ketika waktu kuantum setiap proses sudah habis, proses tersebut akan ditukar dengan proses lain. Untuk kondisi yang ideal, manajer memori dapat melakukan penukaran proses dengan cepat sehingga proses akan selalu berada dalam memori dan siap dieksekusi saat penjadwal CPU hendak menjadwal CPU. Hal ini juga berkaitan dengan CPU utilization. Swaping dapat juga kita lihat dalam algoritma berbasis prioritas. Jika proses dengan prioritas lebih tinggi tiba dan meminta layanan, manajer memori dapat menukar keluar memori proses-proses yang prioritasnya rendah sehingga proses-proses yang prioritasnya lebih tinggi tersebut dapat dieksekusi. Setelah proses-proses yang memiliki prioritas lebih tinggi tersebut selesai dieksekusi, proses-proses dengan prioritas rendah dapat ditukar kembali ke dalam memori dan dilanjutkan eksekusinya. Cara ini disebut juga dengan metode roll in, roll out[3].
Manajemen memori tanpa swapping
Pengelolaan memory untuk monoprogramming Bila program komputer yang dijalankan hanya satu jenis selama proses berlangsung maka dikatakan mode kerja komputer itu adalah monoprogramming. Selama komputer itu bekerja maka memory RAM seluruhnya di kuasai oleh program tersebut. Jadi RAM tidak dapat di masuki oleh program lain. Mode serupa ini di temui pada komputer berbasis DOS. ROM BIOS SISTEM OPERASI Register batas [dalam CPU] PROGRAM APLIKASI DATA SEMENTARA
Proses-proses Memori Sistem Manajemen Multitasking Relokasi Dalam sistem dengan memori virtual, program-program dalam memori harus mampu berada di berbagai bagian dari memori pada waktu yang berbeda. Memori virtual unit pengelolaan juga harus berurusan dengan concurrency. Memori manajemen pada sistem operasi harus dapat memindahkan program di memori dan memori menangani referensi serta alamat dalam kode program sehingga mereka selalu menunjuk ke lokasi yang tepat di memori. Perlindungan Proses seharusnya tidak dapat mengatur memori untuk proses lain tanpa izin. Hal ini disebut proteksi memori, dan mencegah kode berbahaya atau tidak berfungsi dalam salah satu program yang mengganggu pengoperasian program yang sedang berjalan lainnya.
Proses-proses Memori Sistem Manajemen Multitasking Berbagi / Sharing Meskipun memori untuk proses yang berbeda biasanya dilindungi dari satu sama lain, kadang-kadang perlu proses yang berbeda untuk dapat berbagi informasi dan akses yang sama karena itu bagian dari memori. Shared memory adalah salah satu teknik tercepat untuk Inter-proses komunikasi. Pengaturan Ruang Alamat Logika Program sering diatur dalam modul. Beberapa modul ini dapat dibagi antara program yang berbeda, ada yang hanya membaca dan beberapa berisi data yang dapat diubah. Manajemen memori bertanggung jawab untuk menangani pengaturan alamat logika yang berbeda dari fisik ruang alamat linier. Salah satu cara untuk mengatur organisasi ini adalah segmentasi. Pengaturan Ruang Alamat Fisik Memori biasanya dibagi menjadi cepat dan lambat penyimpanan utama penyimpanan sekunder. Memori manajemen pada sistem operasi bergerak menangani informasi antara kedua tingkat memori.
Sistem partisi statis Untuk melakukan tugas multiprogramming pada sistem komputer maka setiap program yang sedang dijalankan harus di muat ke dalam memory, tetapi antara program yang satu dengan yag lain tidak boleh saling mempengaruhi. Untuk menjaga setiap program yang sedang berjalan tidak saling mempengaruhi maka masing-masing program akan di tempatkan pada partisi yang berbeda di dalam memory. Ada berbagai cara mempartisi memory tetapi yang paling mudah dan efisien adalah membuat partisi berbeda mulai dari ukuran kecil sampai ukuran besar. Program yang akan di jalankan akan di tempatkan pada partisi paling kecil yang dapat menampungnya.
Sistem partisi statis Program yang akan dijalankan dimasukkan ke memory dengan cara antrian sehingga menempati satu partisi yang mungkin belum cocok. Karena program kecil dapat saja menempati partisi besar sehingga banyak memory yang tidak terpakai di dalam partisinya. Atau program besar tidak dapat di muat karena partisi yang tersisa terlalu kecil untuknya. Untuk mengatasi hal itu maka program kecil yang yang telah menempati partisi besar akan di swap ke partisi yang lebih kecil, sehingga partisi yang besar itu dapat di pakai untuk program yang lebih besar.
Sistem partisi statis Walaupun sudah diusahakan penempatan program pada partisi yang paling efisien masih saja terdapat bolong-bolong memory yang tidak termamfaatkan, yang disebut dengan fragmentasi. Bila ada bolong memory di dalam partisi yang tidak habis terpakai oleh program pada partsisi itu maka dikatakan fragmentasi internal . Tetapi bila bolong memory itu berupa satu partisi yang karena ukurannya lebih kecil dari program yang kan menempatinya, sehingga partisi itu tidak bisa di muati program maka disebut Fragmentasi Eksternal. Untuk mencegah terjadinya fragmentasi eksternal maka dapat dilakukan dengan swap
Manejemen memory Partisi Dinamis Untuk mengurangi fragmentasi dalam memory maka dilakukan partisi dinamis, dimana setiap program yang akan dimasukkan ke mamory akan dibuatkan partisi yang sesuai dengannya. Begitu juga apabila ada program yang tidak berguna akan diluarkan dari memory dn memory yang ditinggal akan digabungkan dengan memory kosong lainnya. Begitu seterusya sehingga tidak ada bagian memory yang kosong yang tidak dapat digunakan. Proses penggabungan memory yang tidak terpakai karena programnya sudah selesai bekerja, sehingga mendapatkan memory bebas lebih besar dinamakan pemadatan memory (memory compaction).
Manajemen Memory Sistem Paging Walaupun sistem partisi dinamis sudah dapat menyelesaikan masalah menjemen memory, tetapi masih mempunyai keterbatasan acses sebatas address memory yang ada secara phisik. Kalau kita punya memory 32 MB maka address maksimum yang dapat di akses sebesar 32 MB itu saja. Agar kemampuan akses ke memory lebih luas maka dibentuklah memory maya (virtual memory). Dengan memory maya program yang besar akan dapat di terapkan dalam memory kecil saja. Misalnya program 200 MB akan dapat di tempatkan secara maya di memory 20 MB. Untuk mengimplemetasikan address maya yang besar itu ke dalam memory yang kecil itu diperlukan : indexs register, base register, segmen register dan MMU (memory manajemen unit).
Manajemen Memory Sistem Paging Dalam sistem memory maya alamat memory tidak langsung di tuliskan ke bus tetapi terlebih dahulu di masukkan ke MMU untuk di terjemahkan. Ada dua kemungkinan keluaran MMU yaitu : Alamat yang di cari ada di memory nyata, maka proses dapat Langsung dikerjakan. Alamat yang cari tidak ada di dalam memory nyata, maka MMU mengeluarkan page fault , yaitu permintaan alokasi Memory untuk proses itu. Sinyal page fault akan ditangani oleh sistem operasi untuk memilih partisi yang sudah selesai dan kemungkinan proses itu tidak akan dugunakan lagi atau kalau digunakan kemungkinan dalam waktu yang lama lagi. Bila sudah dipilih maka pogram itu di singkirkan dari memory. Dan selanjutnya program yang alamatnya di minta tadi akan dimasukkan ke memory.
Manajemen Memory Sistem Paging Dalam sistem memory maya alamat memory tidak langsung di tuliskan ke bus tetapi terlebih dahulu di masukkan ke MMU untuk di terjemahkan. Ada dua kemungkinan keluaran MMU yaitu : Alamat yang di cari ada di memory nyata, maka proses dapat Langsung dikerjakan. Alamat yang cari tidak ada di dalam memory nyata, maka MMU mengeluarkan page fault , yaitu permintaan alokasi Memory untuk proses itu. Sinyal page fault akan ditangani oleh sistem operasi untuk memilih partisi yang sudah selesai dan kemungkinan proses itu tidak akan dugunakan lagi atau kalau digunakan kemungkinan dalam waktu yang lama lagi. Bila sudah dipilih maka pogram itu di singkirkan dari memory. Dan selanjutnya program yang alamatnya di minta tadi akan dimasukkan ke memory.
Manajemen Memory Sistem Paging Berikut ini adalah pola pemetaan memmory yang terjadi di dalam MMU seperti gambar dibawah ini. Kita lihat bahwa alamat maya terdiri dari nomor page dan offset. Di dalam MMU alamat ini di carikan di dalam tabel page, bila ketemu maka MMU mengeluarkan page frame ( alamat sesungguhnya dimemory ) ke bus. Alamat page frame itu terdiri dari nomor page frame dan offset, dimana nomor page frame lebih sedikit dari nomor page. Tetapi bila tidak ada alamat tersebut di didalam tabel page maka MMU mengeluarkan page fault.
Manajemen Memory Sistem Paging Untuk melihat cara kerjanya pemetaan memmory di dalam MMU dapat di perhatikan skema seperti gambar
PAGING Paging merupakan kemungkinan solusi untuk permasalahan fragmentasi eksternal dimana ruang alamat logika tidak berurutan; mengijinkan sebuah proses dialokasikan pada memori fisik yang terakhir tersedia. Memori fisik dibagi ke dalam blok-blok ukuran tetap yang disebut frame.
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
Fungsi manajemen memori 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.
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.
Perangkat keras untuk register relokasi dan limit
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.
Dynamic storage-allocation dapat dilibatkan untuk memenuhi permintaan ukuran n dari lubang yang bebas. Strategi yang digunakan meliputi: First-fit : alokasi lubang pertama yang cukup untuk proses. Best-fit : alokasi lubang terkecil yang cukup untuk proses. Strategi ini memerlukan pencarian keseluruhan lubang, kecuali bila ukuran sudah terurut. Worst-fit : alokasi lubang terbesar yang cukup untuk proses. Strategi ini memerlukan pencarian keseluruhan lubang, kecuali disimpan berdasarkan urutan ukuran. Diantara algoritma diatas, first-fit dan best-fit lebih baik dibanidngkan worst-fit dalam hal menurunkan waktu dan utilitas penyimpan. Tetapi first-fit dan best-fit lebih baik dalam hal utilitas penyimpanan tetapi first-fit lebih cepat.
Fragmentasi Fragmentasi Eksternal terjadi pada situasi dimana terdapat cukup ruang memori total untuk memenuhi permintaan, tetapi tidak dapat langsung dialokasikan karena tidak berurutan. Fragmentasi eksternal dilakukan pada algoritma alokasi dinamis, terutama strategi first-fit dan best-fit. Fragmentasi Internal terjadi pada situasi dimana memori yang dialokasikan lebih besar dari pada memori yang diminta tetapi untuk satu partisi tertentu hanya berukuran kecil sehingga tidak digunakan.
Pada multiple partition, fragmentasi internal mungkin terjadi pada situasi berikut. Misalnya terdapat lubang 18464 byte, dan proses meminta 18462 byte. Alokasi dilakukan sesuai permintaan maka sisa lubang 2 byte. Penyimpanan lubang ini akan memerlukan memori lebih besar dari lubang itu sendiri. Pendekatannya adalah dengan mengalokasikan lubang yang sangat kecil sebagai bagian dari permintaan yang besar.
Solusi untuk masalah fragmentasi eksternal adalah dengan teknik pemadatan (compaction) yaitu memadatkan sejumlah lubang kosong menjadi satu lubang besar sehingga dapat digunakan untuk proses. Pemadatan tidak selalu dapat dipakai. Agar proses dapat dieksekusi pada lokasi baru, semua alamat internal harus direlokasi.
PAGING Paging merupakan kemungkinan solusi untuk permasalahan fragmentasi eksternal dimana ruang alamat logika tidak berurutan; mengijinkan sebuah proses dialokasikan pada memori fisik yang terakhir tersedia. Memori fisik dibagi ke dalam blok-blok ukuran tetap yang disebut frame.
Dalam pengalokasian, memori dibagi menjadi dua tipe yaitu : Alokasi Memori Berurutan (Contigouos Allocation) Pada alokasi memori berurutan, setiap proses menempati satu blok tunggal lokasi memori yang berurutan. Pada Multiprogramming memori utama harus mengalokasikan tempat untuk sistem operasi dan beberapa user proses Memori harus mengakomodasi baik OS dan proses user. Alokasi Memori Tak Berurutan (Non Contiguous Allocation) Program / proses ditempatkan pada beberapa sagmen berserakan, tidak perlu saling berdekatan atau berurutan. biasanya digunakan untuk lokasi memori maya sebagai lokasi page-page.
Alokasi Memori Berurutan (Contigouos Allocation) Single Partition (Partisi Tunggal) Pada skema ini, diasumsikan OS ditempatkan di memori rendah, dan proses user dieksekusi di memori tinggi. Proteksi dapat dilakukan dengan dengan menggunakan register relokasi dan register limit Register relokasi a berisi nilai dari alamat fisik terkecil Register Limit a berisi jangkauan alamat logika Alamat logika harus lebih kecil dari register limit Multiple Partition (Partisi Banyak) Fragmentasi
Pertanyaan Jelaskan manajemen memori pada multiprogramming Sistem partisi statis dan apa kelemahannya! Jelaskan salah satu fungsi memori! Gunakan contoh dalam penjelasan Anda! Jelaskan perbedaan konsep manajemen memori tanpa Swapping dan dengan Swapping! Jelaskan perbedaan pemindahan proses ke memori dengan Dynamic Loading dan Dynamic Linking