Anda di halaman 1dari 3

Nama : Mohamad Fajar Nur Khasani

NIM : 4611422044
Prodi : Teknik Infromatika

RESUME SISTEM OPERASI


VIRTUAL MEMORY

Pada sistem komputer, untuk mengeksekusi suatu program maka instruksi atau data dari
program harus dibawa menuju ke main memory, salah satu caranya adalah dengan
membawa seluruh page dari proses tersebut menuju ke memory. Pada kondisi tertentu,
ukuran memori yang terbatas akan menimbulkan masalah ketika data atau instruksi dari
program berukuran lebih besar dari kapasitas memori atau ketika penerapan
multiprogramming membutuhkan ruang yang lebih besar dari kapasitas memori. Padahal
tidak semua instruksi atau data pada bagian program tersebut benar-benar dibutuhkan
ataupun tidak semua instruksi atau data dapat dieksekusi. Oleh karena itu, memori utama
yang menyimpan data sementara seringkali tidak mencukupi untuk mengeksekusi suatu
program. Untuk mengatasi masalah tersebut maka dibutuhkan memori logik dan memori
fisik yang terpisah, hal ini dapat mengatasi masalah kekurangan pada memori utama setiap
menjalankan program yang besar.
Virtual memory merupakan metode pemisahan antara physycal memory dan logical
memory. Memori virtual adalah memori sementara yang digunakan oleh sistem operasi
untuk menjalankan berbagai program ataupun menyimpan data yang membutuhkan
memori lebih besar dari kapasitas memori utama yang tersedia. Secara sistem logika,
ukuran dari memori yang sebenarnya lebih besar daripada ukuran memori utama secara
fisik. Memori sementara yang disebut memori virtual ini mengambil sebagian ruang dari
memori sekunder atau hard disk dan menggunakannya sebagai memori utama atau RAM
yang beroperasi pada sistem komputer. Meskipun merupakan sebagian ruang dari memori
sekunder, namun memori virtual bekerja dengan fungsi sebagai memori utama. Memori
virtual beroperasi dengan memindahkan kode-kode yang tidak dibutuhkan menuju berkas
page file pada hard drive.
Dengan adanya pemisahan memori logik dan memori fisik dari penerapan memori virtual
didapatkan beberapa keuntungan diantaranya :
1) Ukuran logical space dapat menjadi lebih besar dibandingkan ukuran physical
address space-nya.
2) Tidak semua bagian dari program akan di-load ke memori, hanya bagian yang
dibutuhkan saja yang akan di-load.
3) Berkurangnya using space memori fisik sehingga space pada memori menjadi lebih
leluasa.
4) Jumlah program yang berjalan secara concurrent dapat menjadi lebih banyak.
5) Untuk melakukan load akan lebih sedikit membutuhkan proses input / output,
sehingga lalu lintas I/O menjadi lebih rendah.
6) Berkurangnya beban pada proses I/O dan memori menjadikan respons lebih cepat.
7) Address space dapat dibagi untuk mengeksekusi beberapa proses.
8) Efisiensi dalam pembuatan proses baru.

Untuk mengimplementasikan memori virtual, ada dua cara yang dapat digunakan yaitu :
1) On Demand Paging, adalah cara yang menerapkan konsep pemberian halaman pada
proses.
2) On Demand Segmentation, merupakan cara yang lebih kompleks untuk diterapkan
karena ukuran segmen beragam.
On Demand Paging pada dasarnya seperti prinsip request paging (permintaan halaman)
hanya saja terdapat perebedaan karena halaman / page tidak akan dibawa ke dalam
memori fisik hingga halaman tetrsebut benar-benar dibutuhkan. Untuk mengetahui lokasi
dari suatu halaman saat dibutuhkan maka diperlukan bantuan dari perangkat keras
pendukung.
Keuntungan dari implementasi demand on paging kurang lebih sama seperti keuntungan
menerapkan memori virtual, yaitu hanya membutuhkan sedikit I/O dan memori, lebih cepat
dalam memproses respons, dapat melayani banyak program dan banyak pengguna, dll.
Pada proses pengecekan suatu halaman yang dibutuhkan, ada tiga kemungkinan kondisi
yang dapat terjadi, yaitu :
1) Halaman ada dan sudah berada pada memori serta statusnya valid.
2) Halaman ada tetapi belum berada pada memori dan masih berada pada disk.
3) Halaman tidak ada baik pada memori ataupun pada disk.
Kelebihan dari implementasi memori virtual dengan demand paging hampir sama dengan
manajemen memori pemberian paging, antara lain yaitu :
1) Menghilangkan masalah fragmentasi eksternal sehingga tidak diperlukan compaction
atau pemadatan.
2) Ukuran memori virtual yang besar, sebab memori logik sudah tidak terbatasi oleh
memori fisiknya.
3) Efisiensi penggunaan memori, karena hanya bagian program yang benar-benar
dibutuhkan yang akan dibawa ke memori fisik.
4) Meningkatnya kemampuan multiprogramming sehingga ruang pada memori dapat
menampung lebih banyak proses dan processor menyelesaikan lebih banyak proses
dalam satu waktu.
5) Lebih sedikit menggunakan I/O, karena proses I/O hanya untuk proses dari bagian
program yang dibutuhkan saja.
Implementasi memori virtual dengan demand on paging juga memiliki beberapa
kekurangan, antara lain :
1) Terjadi overheat pada processor, interupsi kesalahan memberikan pekerjaan ekstra
pada processor ketika halaman yang dibutuhkan tidak ada di memori fisik dan harus
diambil terlebih dulu.
2) Trashing, kondisi akibat kesalahan paging yang melampaui batas sehingga processor
lebih banyak mengurus paging daripada proses yang seharusnya dijalankan.
Salah satu hal yang harus dipertimbangkan dalam implementasi demand on paging adalah
waktu akses memori yang menjadi lebih lama disebabkan page fault handler. Page fault ini
terjadi ketika suatu proses menginginkan page, namun page tersebut belum ada pada
memori utama.
Page replacement merupakan metode yang memungkinkan page yang sudah dialokasikan
pada frame untuk ditukar dengan page yang masih ada pada disk. Page replacement
diperlukan ketika proses yang akan dieksekusi memerlukan frame bebas tambahan tetapi
tidak tersedia frame yang bebas. Dengan page replacement memungkinkan memori logik
manjadi lebih dari memory fisik dan juga dapat mencegah alokasi berlebih ketika terjadi
page fault. Untuk menandai page yang sudah pernah dimodifikasi, page replacement
menggunakan modify (dirty) bit.
Metode page replacement memiliki dua jenis algoritma yang digunakan, yaitu :
1) Page replacement algorithm, algoritma yang bertujuan agar jumlah page fault
menjadi serendah mungkin dan memilih page yang akan di-replace ketika page
replacement.
2) Frame allocation algorithm , algoritma yang menentukan banyaknya frame yang
dialokasikan untuk proses dan frame mana yang harus di-replace.
Algoritma page replacement sendiri memiliki bebebrapa algoritma, yaitu :
1) First In First Out (FIFO), page yang akan di-replace lebih awal adalah page yang
dialokasikan lebih awal.
2) Optimal, melakukan replace page yang tidak akan digunakan untuk beberapa
periode waktu ke depannya.
3) Least Recently Used (LRU), menggantikan page yang sudah tidak digunakan lagi
dalam periode waktu terlama.
Algoritma alokasi frame akan mengalokasikan setiap proses yang beragam tergantung pada
tingkatan multiprogramming-nya. Semakin tinggi tingkat multiprogramming maka proses
akan kehilangan beberapa frame, begitu juga sebaliknya semakin berkurang tingkat
multiprogramming maka proses akan mendapat frame melebihi yang dibutuhkan.
Pada alokasi frame terdapat tiga jenis alokasi, yaitu :
1) Equal allocation, setiap prosesnya akan mendapatkan frame dengan jumlah yang
sama banyak.
2) Proporsional allocation, setiap prosesnya akan mendapatkan jumlah frame yang
sesuai dengan besarnya image dari proses tersebut.
3) Priority allocation, jumlah frame yang dialokasikan untuk setiap proses adalah
berdasarkan tingkat prioritas.

Anda mungkin juga menyukai