PENGANTAR
SISTEM OPERASI
PENGANTAR SISTEM OPERASI
Sistem operasi adalah Sebuah program yang bertindak sebagai perantara/interface
antara pemakai (user) dengan komputer (hardware).
2. Efficiency
Sistem Operasi memungkinkan sumberdaya komputer digunakan secara
efisien.
3. Rebustness
Sistem Operasi memiliki kehandalan sistem proteksi terhadap kesalahan
dari user/sistem
4. Evolution
Sistem Operasi yang disusun/diprogram sedemikian rupa memungkinkan
menerima perubahan/ pengembangan baru yang efektif dan efisien,
dapat melakukan pengujian sistem tanpa mengganggu layanan yang
telah ada.
Layanan Sistem Operasi
1. Pembuatan program
2. Eksekusi program
3. Pengaksesan perangkat I/O
4. Pengaksesan terkendali terhadap berkas
5. Deteksi dan memberi tanggapan terhadap kesalahan
6. Akunting (Pencatatan)
Tugas Utama OS
- Sebagai Resource Manager (pengelola seluruh sumber daya
komputer)
- Sebagai Penyedia sekumpulan layanan (system calls) ke user
sehingga memudahkan dan menyamakan pemanfaatan sumber daya
komputer.
Sasaran SO
Agar seluruh sumberdaya komputer dapat dimanfaatkan secara
efektif dan efisien.
MEMORY
MANAGEMENT
MEMORY MANAGEMENT
Memory management bertujuan untuk optimalisasi penggunaan ruang-ruang main
memory di dalam mengalokasikan job-job atau proses.
Fungsi :
1. Mengatur track yang ada pada memory dan mencatat status
dari memory apakah sedang digunakan atau dalam keadaan
free
2. Pada kasus multiprogramming manajemen berguna untuk
menentukan kasus mana yang dapat menggunakan memory
terlebih dahulu.
3. Mengalokasikan memory pada saat processor membutuhkan.
4. Memberitahukan pada memory saat processor tidak
membutuhkan lagi ruang memory
8
MEMORY MANAGEMENT
12
MEMORY
MANAGEMENT
Partition Allocation
Untuk mengatasi kelemahan SCA maka dibuatlah sistem pembagian
memory dalam bentuk partisi-partisi.
• Memory disekat/dibagi ke dalam beberapa ruangan (PARTISI)
Kelemahan PA :
• Kinerja Processor menjadi lambat
• Banyak terjadi fragmentasi internal karena penggunaan partisi
tidak optimal
• Pekerjaan SO menjadi lebih rumit 14
Static Partition Allocation
Pembentukan Partisi sebelum terjadinya penglokasian job
Jumlah dan ukuran partisi tetap
Satu job hanya dalam satu partisi
Satu partisi hanya untuk 1 job
Kemungkinan fragmentasi sangat besar job <> partisi
Contoh 1 :
Ada 4 partisi pada soal, yaitu p1 ukurannya 100 Kb, p2 ukurannya 180 Kb, p3
ukurannya 80 Kb dan p4 ukurannya 20 Kb. Kepada 4 partisi tsb, akan kita
alokasikan 3 buah job yaitu job A ukurannya 75 Kb, job B ukurannya 120 Kb
dan job C ukurannya 140 Kb.
Langkah kerja :
1. Langkah pertama kita adalah memasukkan job A dengan ukuran 75 Kb tsb ke
dalam partisi 1 yang ukurannya 100 Kb, sehingga partisi yang ukurannya 100 Kb
– job A yang ukurannnya 75 Kb (100 - 75 = 25 Kb), sisanya menjadi 25 Kb.
Ukuran yang 25 Kb ini kita sebut dengan nama Free Area.
2. Langkah kedua adalah memasukkan job B dengan ukuran 120 Kb tsb ke dalam
partisi 2 yang ukurannya 180 Kb, sehingga partisi yang ukurannya 180 Kb – job
B yang ukurannnya 120 Kb (180 - 120 = 60 Kb), sisanya menjadi 60 Kb.
Ukuran yang 60 Kb ini kita sebut dengan nama Free Area.
3. Job C seharusnya kita masukkan ke partisi 3, tetapi karena ukuran job C adalah
140 Kb, sedangkan ukuran partisi 3 hanya 80 Kb, sehingga job C lebih besar
disbanding partisi 3, yang menyebabkan terjadinya fargmentasi eksternal.
Static Partition Allocation
Contoh 2 :
Sebuah memori dengan kapasitas 700 Mb akan dialokasikan job-job sebagai
berikut : Job A = 150 Mb, Job B = 200 Mb, Job C = 100 Mb, dan Job D = 50
Mb. Kapasitas Memori untuk OS = 100 Mb, sedang sisa ruang memory
terbentuk 3 (tiga) partisi dengan ukuran yang sama besar.
1. First Fit pengalokasian berdasarkan alamat terendah (Free Area paling dekat
dengan OS)
2. Best Fit berdasarkan sisa memory terkecil (Free Area terkecil)
3. Worst Fit berdasarkan sisa memory terbesar (Free Area terbesar)
• Penggunaan Teknik ini hanya 1 teknik per soal (tergantung soal), dan
penggunaan salah satu dari teknik ini adalah ketika ada job yang terminated,
kemudian ada job yang akan dialokasikan.
• Job Terminated adalah job yang telah selesai diproses dan keluar dari memory,
sehingga menjadi Free Area sebesar ukuran job tersebut. Contoh : Job A ukurannya
200 Kb, kemudian job A terminated, maka job A keluar dari memory dan akan
terbentuk Free Area sebesar 200 Kb.
21
Relocatable Partition Allocation
• Mengumpulkan semua partisi
Contoh :
yang berisikan job ke sebuah
area yang berdekatan, sehingga OS OS
seluruh partisi kosong juga
terkumpul dalam area yang lain Job 1 (20 Kb) Job 1 (20 Kb)
• Proses ini disebut dengan Job 2 (50 Kb)
Job 2 (50 Kb)
proses “COMPACTION” atau
“RECOMPACTION” jika Compaction Job 3 (25 Kb)
dilakukan berulang Free 30 Kb
• Mengakibatkan free area yang
Job 3 (25 Kb) Job 4 (45 Kb)
tersedia lebih besar
Free 15 Kb
Free 45 Kb
Job 4 (45 Kb)
22
Contoh Soal
1.Gambarkan perubahan memori yang terjadi jika pengalokasian Job yang
digunakan oleh sistem operasi adalah Dynamic Partition Allocation (Best
Fit), dimana ukuran memori adalah sebesar 2150 Kb dan sisanya
digunakan untuk sistem operasi (OS), dimana event yang terjadi adalah
sebagai berikut :
Job A = 450 Kb
Job B = 300 Kb
Job C = 425 Kb
Job D = 470 Kb
Job B terminated
Job E = 375 Kb
Job C terminated
Compaction
23
Jawaban
24
Jawaban
25
Pembahasan
Ukuran awal memory adalah 2150 Kb.
1.Alokasi Job A. Job A masuk ke memory, sehingga ukuran awal memory yang
2150 Kb – Job A yang berukuran 450 Kb ( 2150 – 450 = 1700 Kb ). Free Area 1
(FA) adalah 1700 Kb .
2.Alokasi Job B. Free Area 1700 Kb, Job B yang berukuran 300 Kb masuk ke
memory sehingga ( 1700 Kb – 300 Kb = 1400 Kb ). Free Area (FA) adalah 1400
Kb .
3.Alokasi Job C. Free Area 1400 Kb, Job C yang berukuran 425 Kb masuk ke
memory sehingga ( 1400 Kb – 425 Kb = 975 Kb ). Free Area 1 (FA) adalah 975
Kb .
4.Alokasi Job D. Free Area 975 Kb, Job D yang berukuran 470 Kb masuk ke
memory sehingga ( 975 Kb – 470 Kb = 505 Kb ). Free Area 1 (FA) adalah 505
Kb .
5.Job B terminated. Job B selesai dan meninggalkan memory, sehingga menjadi
Free Area sebesar ukuran Job B, yaitu 300 Kb. Free Area 2 (FA) adalah 300 Kb.
6.Sekarang kita mempunyai 2 Free Area yaitu Free Area 1 berukuran 505 Kb dan
Free Area 2 berukuran 300 Kb.
26
Pembahasan
Ketika ada job yang terminated, kemudian ada job yang akan dialokasikan, maka
baru bisa kita gunakan salah satu dari 3 Teknik dynamin partition allocation, sesuai
contoh soal, kita menggunakan Best Fit berarti Free Area terkecil, jadi Job yang akan
dialokasikan selanjutnya akan masuk ke Free Area yang terkecil, dalam contoh soal ini
adalah Free Area 2 yaitu 300 Kb.
7.Alokasi Job E ( Best Fit ). Karena di contoh soal menggunakan Best Fit ( Free Area
terkecil ), maka Job E yang berukuran 375 Kb akan masuk ke Free Area 2, karena Free Area
2 ( 300 Kb ) lah yang terkecil dibandingkan Free Area 1 ( 505 Kb). Job E lebih besar
daripada Free Area 2 ( 375 Kb > 300 Kb ) sehingga terjadi fragmentasi eksternal.
Fragmentasi eksternal sebesar 375 Kb.
8.Job C terminated. Job C selesai dan meninggalkan memory, sehingga menjadi Free Area
sebesar ukuran Job C, yaitu 425 Kb. Free Area 3 (FA) adalah 425 Kb.
9.Sekarang kita mempunyai 3 Free Area yaitu Free Area 1 berukuran 505 Kb, Free Area 2
berukuran 300 Kb, dan Free Area 3 berukuran 425 Kb. Karena Free Area 2 dan Free Area 3
berdekatan posisinya, maka boleh dijumlahkan ( 425 Kb + 300 Kb = 725 Kb )
27
Pembahasan
10. Compation. Saudara tinggal mengelompokkan antara sesama job ataupun
sesama Free Area ( Semua Free Area boleh dijumlahkan ). Sehingga hasil
akhir memorynya hanya ada Job A 450 Kb dan Job D 470 Kb di dalam
memory kemudian Free Area sebesar 1230 Kb.
28
Latihan
1. Gambarkan perubahan memori yang terjadi jika pengalokasian job yang
digunakan oleh sistem operasi adalah dynamic partition allocation
( Worst Fit ), dimana ukuran memori adalah sebesar 2048 kb dan sistem
operasi membutuhkan memori sebesar 400 kb, dimana event yang terjadi
adalah sebagai berikut :
a. Job 1 = 350 kb
b. Job 2 = 400 kb
c. Job 3 = 150 kb
d. Job 4 = 300 kb
e. Job 2 terminated
f. Job 5 = 200 kb
g. Job 3 terminated
h. Compaction
29
Latihan
2. Gambarkan perubahan memori yang terjadi jika pengalokasian job yang
digunakan oleh sistem operasi adalah dynamic partition allocation ( First
Fit ), dimana ukuran memori adalah sebesar 1500 kb dan sistem operasi
membutuhkan memori sebesar 200 kb, dimana event yang terjadi adalah
sebagai berikut :
a. Job A = 150 kb
b. Job B = 75 kb
c. Job C = 250 kb
d. Job A terminated
e. Job D = 100 kb
f. Job E = 400 kb
g. Job C terminated
h. Job F = 200 kb
i. Job B terminated
j. Compaction
30
PAGE
Page job yang dibagi kedalam ukuran yang sama
Hitungan untuk page dimulai dari page 0 sampai seterusnya
Block memory yang dibagi ke dalam ukuran yang sama
Hitungan untuk block dimulai dari block 0 sampai seterusnya
Satu block hanya untuk satu page
Sebuah page dapat dialokasikan ke dalam lebih dari satu block
Page Map Table (PMT) tabel yang berisikan informasi tentang alamat
PAGE di dalam memory untuk menghubungkan page dan block
31
DEMAND PAGE
Page yang dialokasikan ke dalam block hanyalah page yang
dibutuhkan oleh processor
Page yang tidak dibutuhkan akan disimpan di dalam auxilliary
memory
AM MM CPU
32
Teknik Pengalokasian Block pada Demand Page
33
Contoh :
1. Main memory yang berkapasitas 2 MB (1 MB = 1024 Kb) dibagi dalam
bentuk block-block yang sama besar sebanyak 16 Block. Sisa memory
digunakan untuk Sistem Operasi sebesar 448 Kb. Terdapat 3 antrian job-
job yaitu : Job A = 5 page, Job B = 4 page, Job C = 3 page.
Dimana PMT masing-masing job adalah :
a. PMT Job A alokasi page pada block 1, 4, 7, 9, 12
b. PMT Job B alokasi page pada block 2, 6, 8, 10
c. PMT Job C alokasi page pada block 5, 11, 13
Gambarkan bentuk bagan memory setelah dialokasikan Job A, B dan C.
Tentukan berapakan jumlah block kosong dan total ukuran block kosong
tersebut.
34
JAWABAN
Jumlah block yang kosong = Free Area = 4 block, yaitu block 0, 3, 14, 15
dengan total ukuran block kosong adalah 400 Kb.
Penjelasan Jawaban Contoh Soal No.1
1. Ukuran memory 2 MB, 1 MB = 1024 Kb X 2 = 2048 Kb, untuk OS = 448
Kb, sehingga 2048 – 448 = 1600 Kb. Kemudian dibagi ke dalam 16 block
dengan ukuran sama besar, 1600 Kb / 16 block = 100 Kb per block.
2. Job A terdiri dari 5 page (page 0, page 1, page 2, page 3, page 4)
3. Job B terdiri dari 4 page (page 0, page 1, page 2, page 3)
4. Job C terdiri dari 3 page (page 0, page 1, page 2)
5. PMT akan menunjukan sebuah page akan di letakkan di block yang
mana.
6. PMT Job A (page 0, page 1, page 2, page 3, page 4) ini akan kita letakkan
di block no (1, 4, 7, 9, 12)
7. PMT Job B (page 0, page 1, page 2, page 3) ini akan kita letakkan di
block no (2, 6, 8, 10)
8. PMT Job C (page 0, page 1, page 2) ini akan kita letakkan di block no (5,
11, 13)
Latihan :
1. Main memory yang berkapasitas 2 MB (1 MB = 1024 Kb) dibagi dalam
bentuk block-block yang sama besar sebanyak 12 Block. Sisa memory
digunakan untuk Sistem Operasi sebesar 248 Kb. Terdapat 3 antrian job-
job yaitu : Job X = 4 page, Job Y = 2 page, Job Z = 3 page.
Dimana PMT masing-masing job adalah :
a. PMT Job X alokasi page pada block 11, 3, 5, 1
b. PMT Job Y alokasi page pada block 2, 0
c. PMT Job Z alokasi page pada block 4, 6, 8
Gambarkan bentuk bagan memory setelah dialokasikan Job X, Y dan Z.
Tentukan berapakan jumlah block kosong dan total ukuran block kosong
tersebut.
37