Alokasi frame berhubungan dengan mekanisme alokasi sejumlah memori bebas
yang tetap diantara beberapa proses. Meskipun terdapat beberapa variasi pengalokasian
frame bebas ke beberapa proses, tetapi strategi dasar jelas yaitu : proses user
dialokasikan untuk sembarang frame bebas.
Jumlah minimum frame per proses ditentukan oleh arsitektur dimana jumlah
maksimum tergantung jumlah memori fisik yang tersedia. Jumlah minimim frame
ditentukan oleh arsitektur instruction-set. Bila terjadi page fault sebelum eksekusi
instruksi selesai, instruksi harus di-restart. Sehingga tersedia frame yang cukup untuk
membawa semua page yang berbeda dimana sembarang instruksi dapat mengacu.
Misalnya mikrokomputer menggunakan memori 128K yang dikomposisikan dengan
page ukuran 1K, maka terbentuk 128 frame. Jika sistem operasi menggunakan 35K,
maka 93 frame sisa digunakan program user. Bila suatu program menyebabkan page
fault sebanyak 93 kali, maka menempati 93 frame bebas tersebut. Jika terjadi page fault
ke 94, dari 93 frame yang terisi harus dipilih salah satu untuk diganti yang baru. Bila
program selesai, 93 frame tersebut dibebaskan kembali.
Terdapat 2 bentuk algoritma alokasi yaitu equal allocation dan proportional
allocation. Pada equal allocation, jika terdapat m frame dan n proses, maka setiap
proses dialokasikan sejumlah frame yang sama (m/n frame).
Pada proportional
allocation setiap proses dialokasikan secara proporsional berdasarkan ukurannya. Jika
ukuran virtual memori untuk proses p i adalah s i dan total jumlah frame yang tersedia m,
maka frame ke a i dapat dialokasikan ke proses p i sama dengan :
a i = s i / S × m
Dimana S = ∑s i . Contohnya :
m = 64
s i = 10
s 2 = 127
10
× 64 ≈ 5
137
127
a 2 =
× 64 ≈ 59
137
a 1 =
Selain itu terdapat algoritma alokasi berprioritas yang menggunakan skema
proporsional dengan lebih melihat prioritas proses daripada ukuran proses. Jika proses
Pi membangkitkan page fault, dipilih satu dari frame-frame dari proses yang
mempunyai nomor prioritas terendah.
SUmber :akukenalkomputer.blogspot.co.id