Pengantar Memory
Salah satu aspek penting dalam perancangan suatu sistem operasi adalah
pengelolaan memory. Walaupun pada masa modern ini memori sudah mencapai
kapasitas sampai sekian gigabyte, tetapi memori tetap tidak akan pernah
dapat menangani semua program dan struktur data yang berjalan aktif pada
sistem operasi. Demikianlah, tugas utama dari sistem operasi untuk
mengelola memori yang mana melibatkan peristiwa membawa masuk dan
menukar keluar blok data dari memori sekunder. Namun, memori I/O
merupakan operasi yang pelan dan kecepatannya tergantung dengan
instruksi prosesor. Untuk menjaga supaya program dapat berjalan, maka
sistem operasi harus pintar dalam mengatur waktu keluar dan masuk data
untuk meminimalisasi efek dari kelemahan memori I/O tersebut.
Pengelolaan Memori / Memory Management
Pada sistem uniprogramming ( hanya ada 1 pekerjaan yang
diproses dalam 1 waktu), memori dibagi menjadi dua bagian : satu bagian
utuk sistem operasi dan bagian lain untuk program yang sekarang sedang
dieksekusi. Pada sistem multiprogramming (mampu lebih dari 1 pekerjaan
diproses dalam 1 waktu ) bagian user suatu memori lebih lanjut harus
terbagi untuk , menangani banyak proses. Pengaturan memori yang efektif
merupakan hal vital dari sistem multiprograming.
Istilah pada pengelolaan memori :
frame : sebuah blok tetap pada memori utama.
page : sebuah blok tetap dari data yang berada pada memori sekunder (misal disk). Sebuah page mungkin sementara akan disalin ke frame pada memeori utama.
Segment : suatu variable berisi panjan dari suatu blok
data yang berada pada memori sekunder. semua segment mungkin sementara
akan di salin ke memori utama menjadi suatu wilayah yang tersedia atau
segment akan dibagi menjadi pages yang mana secara individu akan disalin
ke memori utama(combined segmentation and paging).
Syarat Pengelolaan Memory / Memory Managenement Requirements
Relocation
Programmer tidak tahu dimana program akan ditempatkan pada
memori saat dieksekusi. Pada saat program dieksekusi, mungkin akan
dimasukan pada disk dan dikembalikan pada memori utama pada lokasi yang
berbeda (relocate).
Protecion
Masing-masing proses harus dilindungi dari gangguan proses lain
baik disengaja atau tidak. Sehingga untuk melindungi suatu proses harus
dilakukan pengecekan alamat tujuan apakah akan mengganggu proses lain
atau tidak. pengecekan dilakukan saat sebuah proses berjalan.
Sharing
Suatu mekanisme proteksi harus fleksibel untuk memperbolehkan
mengakses wilayah yang sama pada memeori utama. Sharing ini digunakan
saat beberapa proses mengakses program yang sama pada main memory
dibandingkan dengan setiap proses menyalin programnya pada main memori
yang tentunya akan memberatkan memori utama.
Logical Operation
Suatu program dibuat pada suatu modul. Beberapa modul ada yang
tidak dapat diubah (read-only, executable only) dan ada yang dapat
diubah. Suatu proses dapat menggunakan lebih dari satu module.
Physical Organization
Memori komputer dibagi menjadi dua memori utama dan memori
sekunder. Memori utama pengaksesannya sangat cepat tetapi harganya mahal
dan bersifat volatile sehingga tidak dapat menyimpan data dalam jangka
lama sedangkan memori sekunder aksesnya lambat tapi mempunyai ukuran
penyimpanan yang besar dan tahan lama.
Pembagian Memori / Memory Partitioning
Fixed Partitioning
Memori dibagi menjadi blok-blok yang berukuran tetap. Ada 2 tipe
pembagian ukuran: pembagian yang semua ukurannya sama dan ada yang
berbeda satu sama lain. Sehingga setiap proses baik yang besar atau peun
yang kecil akan diletakan pada blok yang kosong tidak peduli ukurannya
terlalu besar atau terlalu kecil blok memorinya.
Dinamyc Partitioning
Pembagian dibagi berdasarkan panjang variable dan nomer dari proses.
Proses dialokasikan pada suatu blok sesuai dengan yang dibutuhkannya.
Tetapi pada saat penempatan proses terdapat lubang antar prosesnya yang
biasa disebut eksternal fragmetnation.
Buddy System
Semua blok memori yang tersedia diperlakukan menjadi satu blok yang dilambangkan dengan 2U.
Jika suatu proses meminta ukuran blok sebesar s ( 2U-1 < s <=2U),
maka blok 2U akan dibagi menjadi 2 dan dibandingkan apakah ukurannya
sudah sesuai dengan s atau belum jika belum maka blok akan dibagi lagi
samapi ukuran sesaui dengan pors.
sumber http://alvarisimm.wordpress.com
Senin, 24 Maret 2014
Langganan:
Posting Komentar (Atom)
0 komentar:
Posting Komentar