Monday, January 04, 2016

Sistem Operasi - Memory Management

Memori dibagi menjadi 2:
*) No Memory Abstraction -> langsung mengakses ke physical memory
    Umumnya digunakan pada:
    - Komp. mainframe awal (sblm 2960)
    - Minicomputer (sblm 1970)
    - PC awal (sblm 1980)
*) Memory Abstraction

Contoh dlm gambar:

No memory abstraction dapat menjalankan bbrp program dalam waktu bersamaan. Proses di switch dengan swap.

RELOKASI: penyesuaian alamat program pada saat dipindah ke RAM
Relokasi ada 2:
- Jump Absolute
- Jump Relative -> tergantung posisinya

Analogi:
Fixed partition: kelas ada banyak, tapi jumlah bangku di masing" kelas 40.
Dynamic partition: seminar di FH, bangku yg dipake disesuaikan.

Multiple Input Queue:
+ Besarnya job" disesuaikan dengan besarnya partisi, menghemat memori
- Ada kemungkinan partisi yang kosong

Single Input Queue:
+ Tidak ada partisi yang kosong
- Ada kemungkinan job kecil dimasukkan ke partisi yang besar

Analogi fixed dan dyamic partition dlm bahasa C:
Fixed: array, cth int x[100];
Dynamic: linked list, cth:
  int *ptr;
  ptr = (int *) malloc (sizeof(int));
  free(ptr);

Dynamic Partition
Fragmentation
  -> Internal: sisa memory tdk dapat digunakan
  -> eksternal: sisa memory (hole) msh dpt digunakan
*HOLE: free space dr hsl fragmentasi

Algoritma Pengalokasian Memori:
- First Fit: yang paling pertama muat yang dimasukkin
- Next Fit
- Best fit: cari tempat yang kalo dimasukin, sisa free spacenya paling kecil
- Worst fit: kebalikan best fit

Contoh Soal!!
Diketahui hole dengan urutan sbb: 100KB, 500KB, 200KB, 300KB, 600KB
Jika ada 3 proses dgn urutan sbb: 417KB, 212KB dan 90KB
Tentukan hole" mana yg akan dialokasikan jika digunakan algo:
a) First Fit
b) Next Fit
c) Best Fit
d) Worst Fit

(Jawaban di post selanjutnya. Stay tuned! (?))

4 comments:

Cakey said...

Terima kasih annas! sangat membantu :)

Anonymous said...

Makasih annas

Annastasya said...

Samasama ^^

Anonymous said...

jawabannya di post yang mana kak? :)