Nama
: Fajar Noverdian
Nim
: 10523467
POKOK BAHASAN :
·
LATAR BELAKANG
BAB
1 MEMORI
1.1 Pengikatan
Alamat
1.2 Dinamic
Loading
1.3 Dinamic
Linking
1.4 Overlay
BAB
2 RUANG ALAMAT LOGIKA DAN FISIK
BAB
3 SWAPPING
BAB
4 ALOKASI BERURUTAN
4.1 Single Partition Allocation
4.2 Multiple Partition Allocation
4.3 Fragmentasi
BAB
5 PAGING
5.1 Konsep Dasar
Paging
5.2
Implementasi Sistem Paging
5.3 Proteksi
5.4 Multilevel Paging
5.5
Shared Page
BAB
6 SEGMENTASI
BAB
7 HIRARKI MEMORI
LATAR
BELAKANG
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.
BAB
1 MEMORI
1.1 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.
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).
Gambar
1.1 langkah
proses program user
1.2 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.
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.
1.3 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.
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.
1.4 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.
Penggunaan overlay terbatas untuk
beberapa sistem yang mempunyai jumlah
memori fisik terbatas dan
kekurangan dukungan H/W untuk teknik yang lebih lanjut.
BAB
2 RUANG ALAMAT LOGIKA DAN FISIK
Tujuan utama manajemen memori
adalah konsep meletakkan ruang alamat logika ke
ruang alamat fisik.
Gambar
2.2: Overlay
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.
Gambar
: 2.3 Relokasi dinamis menggunakan register relokasi
merupakan skema yang membutuhkan
dukungan perangkat keras.
Register basis disebut register
relokasi. Nilai dari register relokasi ditambahkan ke
setiap alamat yang dibangkitkan
oleh proses user pada waktu dikirim ke memori.
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.
BAB
3 SWAPPING
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.
Gambar
3.1 Proses
swapping
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.
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 system misalnya Linux, UNIX dan Windows.
BAB
4 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.
4.1 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).
Gambar
4.1 : Perangkat keras untuk register relokasi dan limit
4.2
Multiple Partition Allocation
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.
Lubang
(hole)
adalah blok yang tersedia di memori yang mempunyai ukuran berbeda.
Menggunakan MVT,
terdapat beberapa lubang dengan ukuran berbeda. Bila
proses datang
dan memerlukan memori, dicari dari lubang yang cukup untuk proses.
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.
4.3 Fragmentasi
Fragmentasi
Eksternal terjadi
pada situasi dimana terdapat cukup ruang memori
total untuk memenuhi permintaan,
tetapi tidak dapat langsung dialokasikan karena tidak
berurutan.
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 seperti pada
Gambar 7-9. Alokasi dilakukan sesuai permintaan
maka sisa lubang
2 byte.
Solusi untuk
masalah fragmentasi eksternal adalah dengan teknik pemadatan
(compaction)
yaitu memadatkan sejumlah lubang kosong menjadi satu lubang besar
sehingga dapat
digunakan untuk proses.
BAB
5 PAGING
Konsep
Dasar 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. Memori logika juga dibagi ke dalam
blokblok
dg
ukuran yang sama yang disebut page.
Setiap alamat dibangkitkan oleh
CPU dengan membagi ke dalam 2 bagian
yaitu :
• Page
number (p) digunakan
sebagai indeks ke dalam table page (page table).
Page table berisi alamat
basis dari setiap page pada memori fisik.
• Page
offset (d)
mengkombinasikan
alamat basis dengan page offset untuk
mendefinisikan
alamat memori fisik yang dikirim ke unit memori.
Gambar 5.1 Arsitektur sistem
paging
Pada skema paging, tidak terjadi
fragmentasi eksternal, karena “sembarang”
frame dapat
dialokasikan ke proses yang memerlukannya. Tetapi beberapa fragmentasi
internal masih mungkin terjadi.
Hal ini dikarenakan frame dialokasikan sebagai unit
dan jika kebutuhan memori dari
proses tidak menemukan page, maka frame terakhir
mungkin tidak
dialokasikan penuh.
Alokasi page pada frame
bebas dapat dilihat pada Gambar 5.2
Gambar
5.2 : Alokasi frame: (a) Sebelum alokasi (b) Setelah alokasi
user memandang memori sebagai
bagian terpisah dari memorifisik aktual. Program user memandang memori sebagai
satu ruang berurutan yang hanya berisi program user tersebut.
Implementasi Sistem Paging
Pointer ke tabel page disimpan
dengan nilai register lainnya dari PCB.
Pada dasarnya terdapat 3 metode
yang berbeda untuk implementasi tabel page :
1. Tabel page diimplementasikan
sebagai kumpulan dari “dedicated” register.
Register berupa rangkaian logika
berkecepatan sangat tinggi untuk efisiensi translasi
2. Tabel page disimpan
pada main memori dan menggunakan page table base registe”
(PTBR) untuk menunjuk ke tabel page
yang disimpan di main memori.
Penggunakan memori untuk
mengimplementasikan tabel page akan memungkinkan
tabel page sangat besar (sekitar
1 juta entry).
3. Menggunakan perangkat keras cache
yang khusus, kecil dan cepat yang disebut
associative
register atau
translation look-aside buffers (TLBs). Merupakan solusi
standar untuk permasalahan
penggunaan memori untuk implementasi tabel page.
Sekumpulan associative
register berupa memori kecepatan tinggi. Setiap register
terdiri dari 2 bagian yaitu key dan
value.
Mekanisme penggunaan associative
register (Gambar 7-15) adalah sebagai
berikut :
• Associative
register berisi
hanya beberapa entry tabel page (sampai dengan ukuran
maksimum).
• Jika
memori logika dibangkitkan oleh CPU, nomor page berupa sekumpulan
associative
register yang
berisi nomor page dan nomor frame yang
berkorespondensi.
• Jika
nomor page ditemukan pada associative register, nomor frame segera
tersedia
dan digunakan
untuk mengakses memori.
• Sebaliknya,
jika nomor page tidak ditemukan pada associative register, acuan
memori ke tabel page
harus dibuat.
• Jika
nomor frame tersedia, maka dapat menggunakannya untuk mengakses ke
memori yang
tepat.
• Kemudian
ditambahkan nomor page dan nomor frame ke associative register
sehingga akan
mudah ditemukan pada acuan berikutnya.
• Setiap
kali tabel page baru dipilih, TLB harus dihapus untuk menjamin eksekusi
proses
berikutnya tidak menggunakan informasi translasi yang salah.
Gambar
5.3 :Perangkat keras paging dengan TLB
Biasanya bit proteksi disimpan
pada tabel page. Satu bit mendifinisikan satu page untuk “read
and write” atau “read-only”. Level proteksi yang lebih baik dapat
dicapai dengan menambah jumlah bit yang digunakan.
Gambar
5.4 :Valid invalid bit pada tabel page
Pada tabel page diberi
tambahan “valid-invalid” bit seperti pada Gambar 7-16.
Nilai “valid”
mengindikasikan bahwa page berada pada ruang alamat logika yang
berarti merupakan page yang
legal (valid). Nilai “invalid” mengindikasikan bahwa
page tidak berada
pada ruang alamat logika atau page yang illegal (invalid). Sistem
operasi mengeset bit ini untuk
setiap page untuk mengijinkan atau tidak mengakses
page.
Multilevel Paging
Model multilevel paging digunakan
pada sistem yang mempunyai ruang alamat
logika yang sangat besar yaitu
antara 232
s/d
264. Pada sistem
ini, tabel page akan
menjadi sangat besar.
Untuk sistem dengan ruang alamat
logika 32 bit dapat dipecahkan menggunakan
skema two level paging.
Pada skema ini alamat logika dibagi menjadi 20 bit untuk
nomor page dan 12 bit untuk page
offset.
Tetapi jika menggunakan cache dengan
hit ratio 98%, effective access time menjadi 0.98 X 120 + 0.02 X
420.
Gambar
5.5 :Skematabel page pada two level paging
Gambar
5.6:Skematranslasi alamat pada two level paging
5.5 Shared Page
Kode dan data pribadi (private)
untuk setiap proses diletakkan terpisah dari
kode dan data pribadi proses
lain. Page untuk kode dan data pribadi dapat diletakkan di
sembarang tempat pada ruang
alamat logika.
Gambar
5.7 Shared page
BAB 6
SEGMENTASI
Segmentasi adalah skema manajemen memori yang memungkinkan user untuk melihat memori tersebut. Ruang alamat logika adalah kumpulan segmen. Setiap segmen mempunyai nama dan panjang. Spesifikasi alamat berupa nama segmen dan offset. Segment diberi nomor dan disebut dengan nomor segmen (bukan nama segmen) atau segment number. Segmen dibentuk secara otomatis oleh compiler.
a. Konsep Dasar Segmentasi
Konsep segmentasi adalah user atau programmer tidak memikirkan sejumlah rutin program yang dipetakan ke main memori sebagai array linier dalam byte tetapi memori dilihat sebagai kumpulan segmen dengan ukuran berbeda-beda, tidak perlu berurutan diantara segment tersebut. Sebuah program adalah kumpulan segmen. Suatu segmen adalah unit logika seperti program utama, prosedur, fungsi, metode, obyek, variabel lokal, variabel global, blok umum, stack, tabel simbol, array dan lain-lain
b. Arsitektur Segmentasi
Alamat logika terdiri dari dua bagian yaitu nomor segmen (s) dan offset (d) yang dituliskan dengan .
Pemetaan alamat logika ke alamat fisik menggunakan tabel segmen (segment table), terdiri dari :
o Segmen basis (base) berisi alamat fisik awal
o Segmen limit merupakan panjang segmen Seperti tabel page, tabel segmen dapat berupa register atau memori berkecepatan tinggi.
o Segment-table base register (STBR) digunakan untuk menyimpan alamat yang menunjuk ke segment table.
o Segment-table length register (STLR) digunakan untuk menyimpan nilai jumlah segmen yang digunakan program.
o Untuk alamat logika (s, d), pertama diperiksa apakah segment number s legal (s < STLR), kemudian tambahkan segment number ke STBR, alamat hasil (STBR + s) ke memori dari segment table.
c. Proteksi dan Sharing
Proteksi bit dapat diletakkan pada tabel segmen. Segmen instruksi dapat diproteksi sebagai segmen read-only atau execute only, segmen data dapat diproteksi sebagai segmen read-write. Pemetaan pada perangkat keras memory akan memeriksa bit proteksi untuk mencegah akses yang illegal.
Segmentasi adalah skema manajemen memori yang memungkinkan user untuk melihat memori tersebut. Ruang alamat logika adalah kumpulan segmen. Setiap segmen mempunyai nama dan panjang. Spesifikasi alamat berupa nama segmen dan offset. Segment diberi nomor dan disebut dengan nomor segmen (bukan nama segmen) atau segment number. Segmen dibentuk secara otomatis oleh compiler.
a. Konsep Dasar Segmentasi
Konsep segmentasi adalah user atau programmer tidak memikirkan sejumlah rutin program yang dipetakan ke main memori sebagai array linier dalam byte tetapi memori dilihat sebagai kumpulan segmen dengan ukuran berbeda-beda, tidak perlu berurutan diantara segment tersebut. Sebuah program adalah kumpulan segmen. Suatu segmen adalah unit logika seperti program utama, prosedur, fungsi, metode, obyek, variabel lokal, variabel global, blok umum, stack, tabel simbol, array dan lain-lain
b. Arsitektur Segmentasi
Alamat logika terdiri dari dua bagian yaitu nomor segmen (s) dan offset (d) yang dituliskan dengan .
Pemetaan alamat logika ke alamat fisik menggunakan tabel segmen (segment table), terdiri dari :
o Segmen basis (base) berisi alamat fisik awal
o Segmen limit merupakan panjang segmen Seperti tabel page, tabel segmen dapat berupa register atau memori berkecepatan tinggi.
o Segment-table base register (STBR) digunakan untuk menyimpan alamat yang menunjuk ke segment table.
o Segment-table length register (STLR) digunakan untuk menyimpan nilai jumlah segmen yang digunakan program.
o Untuk alamat logika (s, d), pertama diperiksa apakah segment number s legal (s < STLR), kemudian tambahkan segment number ke STBR, alamat hasil (STBR + s) ke memori dari segment table.
c. Proteksi dan Sharing
Proteksi bit dapat diletakkan pada tabel segmen. Segmen instruksi dapat diproteksi sebagai segmen read-only atau execute only, segmen data dapat diproteksi sebagai segmen read-write. Pemetaan pada perangkat keras memory akan memeriksa bit proteksi untuk mencegah akses yang illegal.
HIRARKI
MEMORY
|
|
|
Gambar 1. Hirarky Memory
- JENIS-JENIS PENGELOLAAN MEMORY
- Pengelolaan memory untuk monoprogramming
- Pengelolaan memory untuk multiprogramming
1). Sistem
partisi statis
2). Sistem
partisi dinamis
3). Sistem
memory maya
- Penjelasan masing sistem pengelolaan memory
A.
Pengolalaan 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.
Untuk lebih
jelasnya bagaimamana cara mengelola memory untuk monoprogramming , perhatikan
gambar dibawah . Penempatan program di memory
di atur sedemikain rupa sehingga :
1.
BIOS selalu di ROM (BIOS)
2.
Sistem Operasi
di RAM bawah (alamat rendah)
3.
Program Aplikasi di RAM tengah (alamat sesudah
OS terakhir)
4.
Data Sementara di RAM atas (alamat sesudah
Aplikasi terakhi).
|
||
Gambar 2. Susunan Program di Dalam memory
Kita lihat
ketika komputer mula-mula dinyalakan maka proses yang dibaca pertama kali
adalah apa yang tertulis di dalam ROM. Setelah semua perintah di adalam ROM
BIOS selesai dibaca maka komputer meminta kita memasukkan DOS ke dalam
RAM-nya.Ketika DOS dibaca maka diletakkan sebagian dari program DOS yang
terpenting saja ke dalam RAM, seperti : COMMAND.COM dan INTERNAL COMMAND. Sedangkan program DOS
yang lain masih tetap di dalam disk dan apabila kita perlukan dapat di
eksekusi. Hal itu berguna untuk mrnjaga agar RAM tidak penuh oleh Sistem
Operasi saja.
Bila sistem
operasi telah selasai dimuat maka tampillah prompt di layar monitor, dan itu
adalah tanda bahwa komputer siap menerima program aplikasi. Letakkan disk yang
berisi program aplikasi pada diskdrive yang aktif lalu eksekusi , sehingga
program itu termuat seluruhnya ke RAM.
Dengan demikian program aplikasi siap digunakan menurut semestinya.
Ketika kita
bekerja dengan program aplikasi tasdi maka kita akan menghasilkan data. Data
itu akan di simpan sementara di RAM yang masih tersisa. Data yang disimpan di
RAM bersifat voletile, artinya data hanya bisa bertahan selama catudaya
komputer masih ON. Untuk berjaga-jaga biasakan menyimpan data ke disk dalam
jangka waktu yang tidak terlalu lama, misalnya setiap 5 menit sekali. Selain
menjaga data agar tidak amblas menyimpan ke disk bertujuan juga untuk
mengosongkan RAM agar tidak cepat penuh.
Didalam
sistem juga dapat kita lihat bahwa
sistem operasi terletak berdekatan dengan program lain di RAM sehingga kemungkinan sistem operasi ter
ganggu atau terubah oleh proses yang sedang berjalan sangat besar .Hal itu
tidak boleh terjadi.Untuk mencegah terganggu sitem operasi tersebut maka alamat
tertinggi dari sistem operasi dletakkan pada register batas dalam CPU. Jika ada
proses yang mengacu ke alamat itu atau yang lebih rendah dari itu maka proses
di hentikan dan program akan menampilkan pesan kesalahan.
B.
Manajemen Memory Untuk Multiprogramming
1). Manajemen Memory 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 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. Contoh partisi statis memory
digamabar sebagai berikut :
100 Kb
50Kb
75 Kb
|
|
|
|||||||
200
Kb
|
|
Program masuk
Gambar 3. Proses Antrian pada 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 yangb 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.
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
2. 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).
|
|
|
|
|
|
|
|
|
|
Gambar 3. Proses
Pemadatan Memory
Sumber : www. mhs.omahijo.net
penyusun
fajarnoverdi.blogspot.com
SILAHKAN COPY JIKA ARTIKEL INI MENARIK NAMUN HARAP CANTUMKAN SUMBERNYA
{ 0 komentar... read them below or add one }
Posting Komentar
terima kasih telah berkunjung sobat.
Silahkan komentar,kritik dan sarannya
setidaknya tegur sapa.heheh