SISTEM OPERASI
PENDAHULUAN
Definisi :
Merupakan Suatu Perangkat lunak / software yang berfungsi untuk melakukan
interaksi dengan luar ( I/O device ).
Suatu perangkat lunak yang diperlukan bagi system computer untuk dapat
berkomunikasi dari setiap kompenen hardware agar dapat berfungsi dengan baik.
Tujuan :
1. Bagi User : Untuk dapat melakukan interaksi dengan komponen computer melalui
system operasi
2. Untuk seleksi dari berbagai macam system operasi pada setiap instalasi computer
3. Untuk penggunaan aplikasi tertentu, system operasi dapat menyesuaikan dengan
kebutuhan kita.
4. Banyak konsep dan teknik dalam system operasi yang dapat dipergunakan untuk
aplikasi lainnya.
Terminologi Operating Sistem
Suatu program modul didalam system computer yang berfungsi untuk melakukan
control terhadap Resource.Seperti : Processor, Main Storage, I/O Device, dsb.Dimana modul-
modul tsb dapat memecahkan masalah yang timbul dan mencoba melakukan optimalisasi dari
performance .Pada system operasi dimana user memasukan programnya,dinamakan Job.
JOB : Serangkaian aktivitas yang diperlukan untuk dapat melaksanakan suatu
pekerjaan, suatu job dapat dibagi-bagi atas beberapa Job-Step (unit kerja)
JOB-STEP : Suatu unit kerja yang harus dikerjakan secara berurutan seperti: compile,
load, execute, save dll.
Sistem operasi, apabila ditinjau dari segi :
Resource (Memory), maka terbagi atas beberapa komponen yaitu :
1. RUN : Proses yang telah dipilih oleh prosesor dan programnya sedang berjalan
2. WAIT : Proses yang sedang menunggu dikarenakan adannya event (kejadian).
3. READY : Proses dimana siap untuk dapat dijalankan / dilaksanakan, akan tetapi jumlah
proses lebih banyak dari pada jumlah prosessor,sehigga proses harus menunggu giliran
untuk diproses (Ready to Run)
Kondisi Lain adalah :
Sistem Operasi 1
4. SUBSMIT: Kondisi dimana pemakai / user memasukan job ke dalam suatu system, dua
system tersebut harus memberikan respon.
5. HOLD : Kondisi dimana job dimasukan telah dikonversi kedalam bentuk yang
“Readyable” (dapat dibaca oleh manusia) tetapi resourcenya dialokasikan untuk job
tersebut sehingga untuk kekondisi berikutnya harus dialokasikan terlebih dahulu.
6. COMPLETE : Kondisi dimana proses telah menyelesaikan proses komputasi dan semua
resources telah dikembalikan lagi.
Skema proses system operasi dari segi resources
Perkembangan Sistem Operasi :
1. Job by Job Processing = 1951 – 1956
2. Early Batch Processing ( Pengelompokan ) = 1956 – 1958
3. System Axecutive ( Pelaksana ) = 1958
4. Multi Programing Operating System = 1964
5. Comprehensive Information Management & Time Sharing = 1965
6. Virtual Storage & Virtual Machine = 1970
Type of Service Operating Sistem ( Pelayanan Sistem Operasi )
1. Program Execution ( Program Pelaksana )
2. Input – Output Operation
Contoh : Request Device, Release Device, Read, Write
3. Manipulasi File
Contoh : Delete, Create, Close, Open, Up, Date.
4. Mendeteksi Error
5. Allokasi Reseources
6. Accounting
7. Perlindungan ( Protection )
Sistem Operasi
SISTEM
HOLD
RUN
READY WAIT
2
SUBMIT
COMPLETE
Latihan Soal
1. Suatu mesin Komputer IBM S/370 type matrik 3000 mempunyai karateristik kapasitas
memory sebesar 10.000 kb, system operasi 100 kb, blok size 3 kb menangani proses JOB
sebagai berikut :
Job I : 50 kb, waktu CPU (Ci) = 30 dan waktu I/O (Ii) = 20
Job II : 100 kb, waktu CPU (Ci) = 50 dan waktu I/O (Ii) = 70
Job III : 30 kb, waktu CPU (Ci) = 40 dan waktu I/O (Ii) = 30
Pertanyaan :
a) Gambarkan semua proses dari gambar tersebut
b) Gambarkan bagan fisikal memory mesin untuk user job tersebut
c) Berapa waktu total CPU, I/O, dan presentase waktu total secara monoprograming
d) Berapa jumlah kapasitas memory untuk seluruh aktualy used by job dan allocation but
in used
Jawab :
a) Skema Proses dari Job tersebut
Job I = 50 kb Job I = 50 kb Job I = 50 kb
Ci (1) I/O (I) Ci (2) I/O (II) Ci (3) I/O (III)
CPU CPU Idle Time Idle Time (1) (2)b) Bagan Phiscal Memory
100 O/S O/S 100 kb 50 Job I 150 kb 100 Job II Used by Job 250 kb 30 Job III 280 kb Blank / Free
10.000 kb
Sistem Operasi 3
c) - Waktu Total CPU = Ci (1) + Ci (2) + Ci (3) = 30 + 50 + 40 = 120
- Waktu Total I/O = I/O (1) + I/O (2) + I/O (3) = 20 + 70 + 50 = 140
- Used by Job Waktu Total CPU Secara Mono Programing
W =
=
=
= 53,84 %
d) - Actually by User = O/S + ( Job I + Job II + Job III )
= 100 kb ( 50 kb + 100 kb + 30 kb )
= 280 kb
- Used by Job = Job I + Job II + Job III
= 50 + 100 + 30
= 180 kb
- Allocated but un Used = Memory – Actualli by User
= 10.000 – 280
Memory = 9,720 kb
KONSEP MANAGEMENT MEMORY
Konsep manajemen memori ini sangat jelas diperlukan didalam pengelolaan suatu
memory dengan tujuan untuk mengurangi dan memperkecil CPU Idle Time.
CPU Idle Time : Suatu jangka waktu dimana CPU tidak bekerja walaupun ada satu / lebih
proses yang sedang berjalan.Hal ini terjadi karena proses I/O memerlukan
waktu relative kecil lama dari pada proses CPU.
Sistem Operasi 4
Konsep Pembagian Memory, dapat kita bagi atas :
300 Operating System ( OS )
300
500 Used by Job
800
224 Wasted Area / Blank / Free
1024
Sedangkan untuk dapat menghitung proses untuk tangga CPU, terbagi atas
(1) Mono Programing :
Dimana :
W : Waktu Menunggu ( Mono )
Ii : Waktu Menunggu I/O
Ci : Waktu Menunggu ( CPU )
(2) Multi Programing :
Dimana :
w : Waktu Tunggu secara Multi
W = n : Jumlah proses ( drajat multi programming )
i w : Waktu menunggu CPU
MEMORI MANAJEMEN
Hakekat Memory
Suatu array yang besar dalam satuan byte/word dimana setiap array tersebut
mempunyai masing – masing alamat/address.
Fungsi Memory
Digunakan sebagai tempat penyimpanan code/data untuk dimanipulasi oleh cpu
pengingat dan penyimpanan demikian pula data yang terdapat pada secondary memory
(Disk, Tape) jika akan diakses oleh cpu harus berada dimemory terlebih dahulu.
Sistem Operasi 5
CPU MEMORY I/O Sistem
Disk
Tape
Printer
Karena jumlah memory sangat terbatas sedangkan code dan data yang akan diakses
sangat besar maka hanya sebagian dari data/code tersebut yang dapat berada di memory
dan yang lain tetap berada di Backing Storage.
Hubungan dengan bagian lain:
Pada
keadaan dimana jumlah memory lebih sedikit dibandingkan dengan job yang, maka dapat
terjadi proses :
“ Swapping “, Sebagai berikut :
Swap - In
Swap - Out
RAM BACKING STORAGE
- Swap – In : Proses mengambil data dari backing storage (secondary memory) ke RAM
- Swap – Out : Proses mengambil data dari RAM Backing Storage
Sedangkan waktu yang dibutuhkan dalam proses perpindahan data tersebut ke / dari
RAM ke Backers Stroge disebut “ SWAP – TIME “ proses perpindahan tersebut dalam
pengambilan data tersebut atau sebaliknya dinamakan Swapping.
Macam Memory terbagi atas :
a. Register yang berada pada processor & cache memori
Diatur oleh hardware dan tidak diatur oleh system operasi (Sehingga tidak dibahas)
b. Main memory (Memory kerja / processor memory)
Bertugas untuk menampung pekerjaan pada saat sebelum dan sesudah pekerjaan
dilaksanakan oleh processor menampung program system operasi, system bahasa, dan
berbagai catatan yang diperlukan untuk keperluan pelaksanaan pekerjaan.
c. Backing Storage (Memory Dukung)
d. Memory Arsip dibahas pada I/O Device Management Function.
Sistem Operasi 6
Jenis Main Memory (memory kerja) :
a) ROM (Read Only Memori / Memory Tetap)
b) PROM (Programmable ROM )
c) EPROM (Electrical PROM)
d) EEPROM (Erasable EPROM)
e) RAM (Random Akses Memori / Baca Tulis)
Backing Storage (Memori Dukung)
Petugas untuk membantu / mendukung memori kerja (main memori), biasanya
pekerjaan / job yang belum segera dikerjakan ditempatkan dimemori dukung.
Hubungan antara memori kerja (main memori) dengan memori dukung (Backing
Storage) diatur memulai algoritma didalam system operasi tanpa campur tangan pemekai
(User).
Memori Dukung (Backing Storage) disebut juga sebagai “Memory Semu” (virtual
memori)
Alamat Memory
a) Alamat Fisik / Mutlak
Adalah alamat setiap sel memori yang memiliki nomor unit yang membentuk alamat
memori mutlak / fisik.
b) Alamat Relatif / Logika
Adalah alamat memori yang digunakan oleh user’s dalam bahasa mesin.
Isi Memory
Suatu isi dari memori dapat bersumber dari sejumlah sumber daya computer, seperti
modem memori arsip keyboard.yang meliputi :
a. Sistem Bahasa Programman
b. Sistem Utilities
c. Inti Sistem Operasi Kernel
d. Sistem Operasi
e. Pengendali alat (Device Controller & Driver)
f. File Pemakai (Program & Data)
MANAJEMEN MEMORY
Kegunaan : untuk dapat mengelola penggunaan suatu memori dengan tujuan untuk
mengurangi / memperkecil CPU – Idle Time
Sistem Operasi 7
CPU Idle Time adalah suatu jangka waktu dimana suatu CPU tidak bekerja walaupun
ada satu atau lebih proses yang sedang berjalan.Hal ini terjadi karena proses input – output
memerlukan waktu yang relative lebih lama dari pada proses CPU.
Missal : suatu job mempunyai : Proses -1, Proses -2, Proses -3
Algoritma Chartnya :
Proses 1 Proses 2 Proses 3
proses – proses
CPU -1 I/O -1 CPU -2 I/O -2 CPU -3 I/O -3
Idle time Idle time Idle time
Seperti umunya pada IBM S/360 IBM 5/365 dimana tiap job hanya memakai 60 – 70 %
waktu dari waktu total (waktu untuk proses input – output) & 40 – 30 % untuk proses CPU.
Maka Waktu Total = ( Waktu CPU + Waktu I/O )1 + ( Waktu CPU + Waktu I/O )2 +
( Waktu CPU + Waktu I/O )3
Sehingga dalam konsep memori kita dapat bagi menjadi 3 bagian yaitu :
1. Untuk Operating Sistem ( Sistem Operasi )
2. Untuk User ( Pemakai ) OS
3. Untuk tidak terpakai ( Reality User Job
Blank
MUATAN ISI MEMORY
Muatan informasi yang di muat ke dalam memori disebut dengan loading yang dikerjakan
oleh leader. Dimana kadang kata informasi yang dimuat harus disambung dengan informasi
yang lainnya, penyambungan informasi ini disebutdengan LINKER memuat dan
menyambung ini menjadi satu kesatuan kerja yang disebut Linked leader
a. Pemuatan Mutlak
Bila alamat pada program sama di alamt yang ditempatinya di memori kerja.
b. Pemuatan Relokasi
Alamat yang deprogram tidak selalu sama dengan alamat titik dimemori kerja.
Rumus Relokasi R = P – A
c. Pemuat Sambung ( Link Edit )
Sistem Operasi 8
Penggantungan informasi yang dilakukan pada saat pemuatan berlangsung dimana
alamat akhir yang disambung tersebut harus di ketahui oleh Linker.
d. Pemuatan Dinamik (Over by)
Ketika ukuran program / job melebihi dari ukuran memori kerja, maka program
tersebut dipenggal kedalam segmen – segmen.
Kegunaan dari fungsi manajemen memori meliputi :
1. Mengikuti status setiap lokasi (allocated / free)
2. Menentukan pengallokasian memori
3. Tehnik Allokasi
4. Tehnik Deallokasi
Tehnik Manajement Memori, terbagi atas :
1. Single Contigious Countigous Allocation
2. Partitioned
3. Relocation Partitioned
4. Paged
5. Demand – Paged
6. Segmented Non - Countigous Allocation
7. Segmented & Demand – Paged
8. Swapping, Overlay
9. Page Faulted Halding
10. Shared Pages
SISTEM OPERASI DITINJAU DARI SEGI RESOURCES
Terbagi atas 4 fungsi pengelolaan, yaitu :
a) Memory Management Function ( Fingsi Pengelolaan Memory )
– Mengikuti & menyusuri Resources dalam hal ini memori
– Bagianmana yang sedang dipergunakan & yang tidak sedang digunakan ( bebas )
serta oleh siapa.
– Melakukan alokasi memory pada saat diperlikan.
– Mengambil kembali memory yang sudah tidak digunakan.
b) Proccessor Management Function ( Fungsi Pengelolaan Prosessor )
– Mengikuti & menyusuri prosesor dengan status dari proses
– Modul inidisebut dengan “ Traffic Controller “
Sistem Operasi 9
– Menentukan siapa yang boleh menggunakan processor untuk menentukan job / proses
yang mendapatkan prosesor model ini dinamakan “ Job Scheduler” dalam konsep
multiprogramming modul ini dinamakan “ Multiprograming Processor Schduller “
– Melakukan alokasi kembali processor dengan menyiapkan register – register yang
diperlukan modul ini dinamakan “ Dispatcher “
c) Device Managemen Function ( Function ( Fungsi Pengelolaan Peralatan )
– Mengikuti & menyusuri peralatan dalam hal ini adalah chenel / saluran / & Control
unit
– Modul ini dinmakan dengan istilah “ input – output control unit ”
– Menentukan cara yang paling efisien untuk melakukan allokasi, modul ini
dinamakan : “ Input – Output Schedulling “
– Melakukan alokasi peralatan & mengambil kembali dari operasi I/O.
d) System Information Management Function ( Fungsi Pengelolaan Informasi )
– Mengikuti & menyelusuri informasi data, lokasi pemakaian & statusnya, modul ini
dinamakan “ File System “
– Menentukan Akses Routine yaitu menggunakan informasi dengan langkah – langkah
pengambilan suatu file
– Menentukan allokasi yaitu yang disebut dengan operasi “ Close File “ & “ Open File “
Skema Diagram
Disk – A Disk – B Drum A Drum B Tape – 1 Tape - 2
Sistem Operasi 10
Processor
Memory
Selector Chanenl -1
MultiplexerChanenl
Concentrator Chanenl
Selector Chanenl -2
Card Reader
Printer 1
Printer 2
Ket : : Control
: Data
DEVICE MANGEMENT FUNCTION
Fungsi pengolahana peralatan pada system operasi diperlukan untuk melakukan
proses pengalokasian peralatan secara fisik. Pengolahan peralatan pada system operasi yang
dibahas Disk dan Drum.
Perbedaan antara Disk dan Drum :
DISK DRUM
- Kecepatan dalam transfer
data lebih kecil
- Harga relative lebih murah
- Secara logika fungsinya sama dengan
Drum
- Dirancang untuk menyimpan file
- Terbagi atas dua jenis :
Fixed Head Disk (FHD)
- Mempunyai 1 Head (Single
Head) untuk setiap track
- Kecepatan data lebih hemat
Morning Head Disk (MHD)
- Memerlukan Harddisk untuk dapat
menggerakan Head
- Harga relative mahal
- Drum memiliki kecepatan transfer data
lebih besar (High Speed Core)
- Harga relatuf mahal
- Diperlukan sebagai “High Performance”
- Sebagai suatu Backing Storage ( memory
cadangan )
- Dirancang untuk Back Up data
Hardware (perangkat keras), suatu disk terbagi atas :
1. Disk Drive
Meliputi motor yang digunakan untuk menggerakan read/write head
2. Disk Controller
Yaitu untuk menentukan interaksi logika (logical interaction) dengan system computer
Kecepatan suatu disk dibagi atas :
1. Seek Time
Sistem Operasi 11
Yaitu waktu yang diperlukan untuk menggerakan Head ke track yang diinginkan dimana
pergerakan adalah maju mundur 2. Latency Time(Delay)
Waktu yang dibutuhkan untuk memindahkan posisi track yang diinginkan dimana
pergerakan adalah berputar
3. Transfer Time
Waktu yang dibutuhkan untuk mentransfer data dan berapa lama waktu yang dibutuhkan
1 Rpm : 3600 = 60 Rps
1 Rps : 1/60 Second
Skema Penampung Disk
Track
Sector Poros Cluster
Read/Write head
Cylinder
ARM
Plate SERVO
– Setiap pack terdiri dari suatu / lebih plate
– Setiap plate terdiri dari dua buah surface ( kecuali bagian atas / bawah )
Sistem Operasi 12
Transfer Data =
– Setiap surface terdiri dari benyak track
– Setiap track terdiri dari beberapa sector
– Sector adalah yang terkecil yang dapat diakses dari suatu disk
– Menulis ( write ) pada suatu teack, selalu dimulai dari boundary sector ( sector awal )
DISK SCHEDULLING
Adalah suatu algoritma yang digunakan untuk menentukan urutan pengerjaan dari
suatu disk access input – output yang berada pada suatu antrian ( Queu )
Algoritma tersebut terbagi atas :
1. FIFO ( First In First Out )
2. SSTF ( Shortest Seek Time First )
3. C-SCAN ( Circulair Scan )
4. SCAN
Contoh :
Apabila terdapat suatu antrian data I / O yang akan di akses sebagai berikut : 98, 183,
37, 122, 14, 124, 65, 67. dan pada saat awal, Head berada pada posisi 53. tentukan
jumlah track yang dilalui untuk proses data tersebut ?
Jawab :
1. FIFO ( First In First Out )
0 14 37 53 65 67 98 122 124 183
Sistem Operasi 13
Jumlah Track = (98 – 53) + (183 – 98) + (183 - 37)+(122 – 37) + (122 – 14) + (124 – 14)
+ (124 – 65) + (67 – 65)
= 640 Track
2. SSTF ( Shortest Seek Time First )
0 14 37 53 65 67 98 122 124 183
Jumlah Track = (65 – 53) + (67 – 65) + (67 - 37)+(37 – 14) + (98 – 14) + (122 – 98) +
(124 – 122) + (183 – 124)
= 236 Track
3. C-SCAN ( Circulair Scan )
0 14 37 53 65 67 98 122 124 183
Jumlah Track = (65 – 53) + (67 – 65) + (98 - 67)+(122 – 98) + (124 – 122) + (183 – 124)
+ (14 – 0) + (37 – 14)
= 167 Track
4. SCAN
0 14 37 53 65 67 98 122 124 183
Sistem Operasi 14
Jumlah Track = (53 – 37) + (37 – 14) + (65 - 14)+(67 – 65) + (98 – 67) + (122 – 98) +
(124 – 122) + (183 – 124)
= 208 Track
DEVICE MANAGEMEN FUNCTION
CLOCK
Dalam Sistem computer dilengkapi dengan komponen RTC (Real Time Clock)
dimana perangkat keras clock tersebut terdiri dari :
1. Clock yang ditimbulkan impulse tegangan listrik clock ini dapat melakukan interupsi
50 – 60 interupt / dtk sesuai dengan frekunsi listrik.
2. Programtable Interval Timer (PIT)
Clock ini yang terdiri dari cystal osci later, coventer & Holding Register
Keunggulan PIT : 1. Mempunyai akurasi tinggi.
2. Frekuensi interrupt dapat diatur secara perangkat lunak /
software.
PIT digunakan sebagai :
1. Waktu Sistem
2. Pembangkit Band – Rate (pada usart)
3. Penghitung Kejadian
4. Pengendali Motor
5. Pembangkit Musik
Mode Programan PIT
1. One – Shot Mode :
Mode ini hanya menghasilkan suatu kejadian tunggal perlakuan ketika clock
diaktifkan berdasarkan kejadian.
2. Squere Wave Mode
Mode ini untuk menghasilkan kejadian – kejadian interupsi timer secara periodic
dilakukan secara otomatis tanpa melihat.
Beberapa Fungsi clock pada system operasi
1. Mengolah waktu dan tanggal
Sistem Operasi 15
2. Mencegah proses berjalan lebih di waktu yang ditetapkan
3. menghitung penggunaan pemrosesan
4. menangani system call alarm yang dibuat oleh user
5. mengerjakan profiling, monitoring dan pengumpulan statistic
Contoh Kasus PIT
– Teori : Apabila PIT digunakan untuk pewaktu, maka
akan menghasilkan interupsi secara periodik, keluaran PIT menghitung pulsa
eksternal yang diberikan cystal oscillator dan diteruskan langsung ke IRQ
(Interupt Request).Periode waktu antara 2 interupt timer berurutan dapat
deprogram dengan memasukan nilai holding regist.
– Rumus : Interval Interrupt = Periode Clock X Nilai
Holding Register.
– Problem : Apabila dikehendaki interval pewaktu setiap 10
– 15 Frekuensi Cystal oscillator adalah 2 MHz
– Pertanyaan : Berapa nilai yang harus dimasukan ke holding register ?
– Jawab : Periode Clock = = 0,5 x 10 = 0,5
MHz
Nilai yang diberikan ke holding register
Holding Register =
= 20,10
– Artinya : di – set dengan nilai 20.000 ,-
PROCESSOR MANAGEMENT
Manajemen processor berkaitan dengan masalah pengolahan secara physic khususnya
allokasi processor untuk proses.
A. Penjadwalan JOB ( Job Schedulling ).
Job scheduling merupakan general manager dengan tugas – tugas sebagai berikut :
1. Mengikuti status semua job, untuk mengetahui job mana yang sedang
menunggu selain itu juga untuk mengetahui status job yang sedang dalam system.
B. Penjadwalan Proses ( Process Schuduling )
Sistem Operasi 16
Setelah suatu proses berubah statusnya dari kondisi “ Hold “ ke “ Ready “ maka akan
ada satu atau lebih proses menentukan proses mana yang akan mendapatkan resources
( sumber ). Kapan dan untuk jangka berapa lama ?
C. Sinkronisasi JOB dengan Proses
– Pada tingkat job umumnya telah tersedia suatu mekanisme untuk mengatur
pelaksanaan lebih dari satu job.
Misalnya : Apabila job step – 1, sebelum dilaksanakan.
– Sedangkan pada tingkat proses mekanisme tersebut harus kita buat yang kita sebut
Race Condition.
o Race Condition
Race Condition terjadi sebagai akibat dari pergantian proses komputasi,
dengan demikian tergantung pula pada waktu atau timing proses lainnya .
Misanya : Suatu proses membutuhkan suatu printer, sedangkan suatu proses yang lain
sedang menggunakan printer.
– Proses -1 Perlu Printer
– Proses -2 Sedang mempergunakan printer (sedang mencetak, printer)
Maka apabila printer kita serakan pada proses -1 maka hasil yang
akan tercetak, merupakan suatu campuran dari hasil kedua proses
tersebut. Untuk itu diperlukan suatu mekanisme agar proses tidak
tercampur yaitu :
– Proses -2 : dikerjkan lebih dahulu sampai selesai baru untuk proses -1 dalam
suatu kondisi multi programming (multiprogrammed environment) umumnya
mempergunakan prosessor selama = ± 100 mili second atau kurang yaitu
sebelum proses tersebut diberhentikan untuk menunggu input / output.
Misal :
Ada proses A dan D yang sama – sama membutuhkan : tape. Seandainya proses –A
lebih dahulu meminta maka drive akan diberikan ke proses –A.Untuk proses –D
sementara harus di block sampai proses –A tidak mempergunakan drive lagi untuk
mengikuti dan menelusuri maka digunakan PCB (Proses Control Back), dimana setiap
proses mempunyai satu PCB dan PCB yang sama kondisinya digabungkan dalam suatu
daftar yang disebut : “Ready List”.
D. Sinkronisasi Proses
Sistem Operasi 17
Masalah yang timbul adalah di akibatkan karena resource yang ada digunakan
bersama- sama, ada 2 masalah yang harus kita tanggungi, yaitu :
1. Race Condition
O / S
Proses - 1
Proses - 2
Meminta printer
Pemecahan yang harus kita laksanakan, yaitu :
– Dengan mengharuskan proses secara Eksplisit.
– Menyatakan bahwa proses membutuhkan printer sebelum menggunakannya
– Baru setelah proses yang menggunakan printer selesai maka proses yang lain harus
mendapatkan giliran
– Prosesnya satu persatu.
2. Deadly Embrace
Yaitu suatu situasi dimana dua proses secara tidak tahu menahu saling menunggu.
VIRTUAL MEMORY
Virtual memory yaitu merupakan suatu tehnik yang memungkinkan pelaksanaan
proses yang tidak secara lengkap berada didalam memorinya.
Virtual memori semacam kotak pita dengan melakukan execute yang secara lengkap
tidak ada dalam memorinya.dan suatu proses akan di execute bila semua proses telah ada di
memori.
Virtual Memory
Di Execute
Keuntungan dari Penggunaan Virtual Memory
(1) User program dapat lebih besar dari pada kapasitas / ukuran fisik memori meskipun
demikian virtual memori tidak mudah untuk di emplementasikan, apabila tidak
digunakan secara baik, maka kemungkinan bisa menurunkan performance salah satu
Sistem Operasi 18
Printer
PROSES
PROSES
PROSES
alasan mengapa diperlukan manajemen memoti adalah karena ruang alamat logika dari
pada proses harus terletak didalam memorisebelum proses tersebut dapat dilaksanakan.
Program sering berisi kode – kode untuk menangani kondisi error padahal sering kali
error tersebut tidak terjadi.
(2) Array , list dan table biasanya menempati lokasi di dalam memori yang jauh lebih besar
dari pada yang dibutuhkan.
Contoh :
Suatu program assembler 2 pass dimana pada pass -2, dihasilkan symbol –
symbol table dan menghasilkan kode bahasa mesinnya pada saat pass -2. Selain itu
diperlikan juga subroutine yang digunakan untuk pass -1 maupun pass -2 dengan
ukuran masing – masing komponen :
Pass -2 dengan ukuran masing – masing komponen :
Pass -1 : 8 k
Pass -2 : 10 k
Symbol table : 14 k
Common routine : 5 k
Table lokasi yang diperlukan : 37 k
Misalkan :
Kita mempunyai memoti dengan kapasitas : 32 k bagaimana meleksanakan
program assembler tersebut ?
Memory
14 k
5 k 32 k 2 k 10 k
29 k – 31 k
8 k 10 k
Driver
Sistem Operasi 19
Symbol Table
Common RoutineOverlay Driver Pass -2 / Pass -1
Pass -1 Pass -2
Digunakan untuk proses pemanggilan untuk pass -1 dan pass -2 secara bergantian
yang kemudian diatur sehingga tidak kelebihan kapasitas pada memory tersebut.
DEVICE MANAGEMENT
Disk and Drum Scheduling
Disk surface dibagi dalam beberapa track yaitu :
– Fixed Head Disk ( FHD )
Mempunyai satu nead untuk setiap track.. Sehingga memungkinkan computer
untuk dapat berpindah dari satu track ke track yang lain dengan cepat namun tipe ini
harganya mahal.
– Morning Head Disk ( MHD )
Memerlukan hardware untuk menggerakan head tersebut. Jadi disini hanya
perlu satu single hard dan harganya murah.
– Fixed Head Disk ( FHD )
Secara logika sama fungsinya dengan sebuah drum. Drum mempunyai
kecepatan transferred lebih besar dari pada disk namun kapasitas drum lebih sedikit
dari disk.
Drum, biasanya harganya lebih mahal.
Drum, diperlukan untuk high performance.
Drum, biasanya dipakai sebagai backing storage.
PROCESSOR MANAGEMENT FUNCTION
Management prosesor berkaitan secara fisik. Khususnya pengalokasian processor
untuk proses.
Aloritma Penjadwalan CPU ini dikelompokan atas :
1. FEFS (First Come First Serve )
Contoh :
Apabila Job-job tersebut datanya berurutan sesuai dengan table maka tentukanlah :
a) Gantt Chart
Sistem Operasi
JOB BURST TIME
1 24
2 3
3 3
20
b) Turn Arround Time
c) Average Turn Arround Time
Jawab :
a) Gantt Chart
Job – 1 Job – 2 Job - 3
0 24 27 30
b) Turn Arround Time : Job -1 : 24
Job -2 : 27
Job -3 : 30
c) Average Turn Arround Time : = = 27
2. SJK ( Shortest Job First )
Contoh :
JOB BURST TIME
1 6
2 3
3 8
4 7
Jawab :
a) Gantt Chart
Job - 2 Job – 1 Job – 4 Job - 3
0 3 9 16 24
b) Turn Arround Time : Job -2 : 3
Job -1 : 9
Job -4 : 16
Job -3 : 24
c) Average Turn Arround Time : = = 14,5
Bentuk Algoritma Lain, Selain tersebut adalah
1. PRE – EMPRIVE
Contoh :
JOB ARRIVAL TIME BURST TIME
1 0 8
Sistem Operasi 21
2 1 4
3 2 9
4 3 5
Jawab :
a) Gantt Chart
Job - 1 Job – 2 Job – 4 Job - 1 Job - 3
0 1 5 10 17 26
b) Turn Arround Time : Job -1 : 17
Job -2 : 5
Job -3 : 26
Job -4 : 14
c) Average Turn Arround Time : = = 13
2. NON PRE – EMPRIVE
JOB ARRIVAL TIME BURST TIME
1 0 8
2 1 4
3 2 9
4 3 5
Contoh :
Jawab :
a) Gantt Chart
Job - 1 Job - 2 Job - 4 Job -1 Job - 3
0 1 5 10 18 27
b) Turn Arround Time : Job -1 : 18
Job -2 : 5
Job -3 : 27
Job -4 : 10
c) Average Turn Arround Time : = = 15
Sistem Operasi 22
PROTEKSI H/W
Dilakukan apabila monitor dilebihkan pada Low-Memory dan User Program yang
akan dilaksanakan pada High-Memory proteksi hardware tersebut, berupa “Fence Address”
(batas Alamat), apabila :
Address < Fence Address : Illegal
Address > Fence Address : Legal, disimpan untuk user program
Keuntungan : agar data – data yang masuk terhadap program tidak mengalami perubahan
di dalam memory tersebut.
Address Y
RELOCATION ( Relokasi )
Untuk mengatasi jumlah / kapasitas memori dan user dalam fence address (batas
alamat), perlu adanya amonitor dan data dalam memori ke dalam bentuk variable, proses
tersebut dinamakan : Relokasi
KEUNTUNGAN MULTIPROGRAMMING
Pemanfaatan processor dan I/O Device Effisien
Tak memerlukan H/W Khusus yang mahal.
Algoritma yang digunakan sederhana dan mudah untuk di implementasi
SINGLE CONTIGUOUS ALLOCATION
Suatu bentuk pengaturan memori yang dilakukan oleh system (patent) dan dapat pula
dilakukan dengan cara proteksi H/W.
Sistem Operasi 23
Fence address
Add>F.add Memory
Address Error
CPU
OS actully used by Job AVAILABLE allocated but un used (wasted)
H/W SUPPORT / PENUNJANG
– Tidak memerlukan H/W khusus
– Cukup dengan mekanisme proteksi H/W Primitif untuk melindungi system Operasi
Bound Register.(Alamat daerah yang dilindungi)
S/W SUPPORT
4 kb Fence address agar Penggunaan Monitor Fence dan User lebih Register Fleksibel
FENCE REGISTER
Sistem Operasi 24
Enter
Berikan memory ke job
Job<=memory
Job selesai deallocated memory & dari Job lain
Job tidak dapat di Run-Coba Job lain
Monitor
USER
Monitor
USER
Merupakan isi dari alamat batas / Fence address yang digunakan untuk mengecek
alamat yang benar dari pada semua user program.Dimasukan melalui system operasi, dengan
intruksi tertentu :
MAR m Transfer alamat ke MAR
( Memory Accumulator Register )
MBR m membuat data
( Memory Buffer Register )
OPERASINYA / MAKRO ( TERDIRI DARI 3 SIKLUS )
AC + M AC
1. MAR m : Transfer alamat ke MAr
2. MBR m : Membaca ke MBR
3. AC AC + MBR : Jumlahkan isi AC dengan MBR hasil disimpan pd AC
Apabila Fence Address, diketahui pada saat compile maka akan dibangkitkan kembali :
Kode Absolute pada Fence Address tersebut.
Apabila Fence Address tersebut variable ( selalu berubah ), maka perlu adanya :
Recompile, dimulai dari kode absolute pada Fence address terdebut, karena Fence address
setiap waktu dapat berubah, sehingga perlu di-compile untuk menempatkan alamat pada
monitor.
MULTI-STEP PROCESSING DARI USER PROGRAM :
SOURCE PROGRAM
COMPILER TIME
Sistem Operasi 25
Program sumber
Computer / Assembler
Modul Object
Linkage Editor
LOAD TIME
( Loading )
Execution Time / Runtime
RELOKASI DINAMIS DENGAN REGISTER RELOKASI
Register Basis
alamat alamat Bahasa Mesinnya logika fisik
0346 1746 (0346+1400)
MOV AX, “ ADDR “ : Direct addressing
MOV AX, BX : Register addressing
ADD AX, 10 : Immidinate addressing
MEMORY MANAGEMENT FUNCTION
Pada dasarnya konsep pengelolaan suatu memory pada suatu proses,merupakan bentuk
pengalokasian suatu pad eke suatu manajement system operasi :
1.SINGLE CONTIGOUS ALLOCATION (SCA)
Merupakan suatu bentuk pengaturan memory pada suatu proses,dimana bentuk memory tsb
sudah dalam bentuk fabricasi/pabrik atau patent,akan tetapi dapat dilakukan pengolahan
secara:
Proteksi H/W: -H/W
-S/W
Sistem Operasi 26
Leader
In Care Memory
Modul Load
+
1400
MemoryCPU
OS Allocation Used by Job Available Allocation but Un Used / wasted (Free / Blank )
KEKURANGAN SCA:
1. Sebagian memori sama sekali tidak digunakan (wasted area).
2. Kadang-kadang seluruh memori sama sekali tidak digunakan (prosesI/O rutin).
3. User program berisi informasi yang tidak pernah dipergunakan tetapi menempati
sebagian isi memory (proses error routines).
4. User program harus lebih kecil daripada kapasitas memory.
2.NON CONTIGOUS ALLOCATION (NCA)
Pengelolaan NCA dapat terbagi atas beberapa teknik:
1. Partitioned
2. Paged poulted handling
3. Segmented
4. Demand page
5. Relocation
6. Shared paged
7. Page/paged
8. Segment and Demand page
9. Swapping,Overlay
10. Trashing
PAGE FOULTED HANDLING
Skema diagram : (3) Seek in Beacking Storage
(2) Trap
(1) Reference
(6) Re-start intruction Page Table
Backing Storage
Logical Memory (5) Rest Page Table (4) Seek in Free Frame
Sistem Operasi 27
O/S
Load M
Phiscal Memory
Keterangan :
1. Pada waktu proses satu instruksi terlebih dahulu dilakukan pengecekan apakah sudah
ada instruksi dimemory.
2. Jika belum beritahu O/S kemudian Trap proses.
3. Cari di secondary memory/backing storage.
4. Setelah ketemu frame yang free lakukan berikutnya untuk page tersebut.
5. Riset page table dari kondisi invalid jadi valid.
6. Siap untuk melanjutkan eksekusi.
PAGE FOULTED HANDLING
Adalah suatu teknik penanganan memory pada suatu proses komputasi dimana belum
terdapat data pada memory tersebut.
Contoh :
Setiap page terdiri dari 100 word kemudian urutan data akan di-execute adalah :
0100 0432 0101 0612 0102 0103 0104
0101 0611 0102 0103 0104 0101 0610
0120 0103 0104 0101 0609 0102 0105
- Maka bentuk nilai reference string : 1416111161111611
- Nilai reference string tersebut, dapat ditulis,menjadi : 14161616161
- Sehingga maximum pages/program = 1
1 4 1 6 1 6 1 6 1 6 1
multi
level
programing 1 2 3 4 5 6 7 8 9 10 11
REPLACEMENT ALGORITMA
1. Fifo
Sistem Operasi 28
Frame Free
2. Optimal Replacement
3. Least
4. Dirty bit
5. Second charge bit
Sebagai contoh soal :
- Maximum page/program = 3
- Multiprograming level = 3 (tingkat memory maximum untuk dapat tampung beberapa
program)
- Nilai reference string = 7,0,1,2,0,3,0,4,2,3,0,3,2,1,0,1,7,0,1
Tentukan jumlah page replacement tersebut.
Jawab :
FIFO
7 0 1 2 0 3 0 4 2 3 0 3 2 1 2 0
1 2 3 4 * 5 6 7 8 9 10 * * 11 12 *
1 7 0 1
* 13 14 15
DEMAND PAGE
Merupakan suatu bentuk pengalokasian memory,dimana cara pemanfaatan memory <= 100
%,dikarenakan memakai konsep virtual memory dan tidak harus semua page berada di
memory.
Skema Proses :
Frame Valid Invalid 0 1 Swap In
0 2
1 3
Sistem Operasi 29
A
B
C
D
2 4
3 5
Logical Memory 4 6
Page Table 7 Swap Out
8
Phisical Memory Backing Storage
Pada Demand Page Management memory
1. Tidak seluruh addres spare selalu diperlukan , seperti :
error,routine,option,label
2. Pemakaian table : PMT , MBT , FMT (file) (page) (memory)
3. Demand Page Memory
4. Deallokasi
5. Allokasi
H/W PERPANJANG
1. Suatu bit pada PMT
2. Interupt action ke O/S bila job acess page yang tidak ada dimemory
3. Catatan terhadap page secara individual untuk kepentingan O/S
S/W PERPANJANG
1. Diperlukan FMT yang berisi inti tentang file yang digunakan untuk dapat
menyimpan job addres space pada disk
2. Page interrupt processy ………..flow chart
3. Algoritma page removal
ISTILAH-ISTILAH TEKNIK UNTUK PENGATUTRAN PAGE
1. Page Swapping
2. Page Removal
3. Page Replacement
4. Page Turning
5. Page Canibalizing
6. Trashing (Hindari…..)
Sistem Operasi 30
E
Trashing,terjadi apabila page yang baru diambil dari memori harus dimasukan kembali.
Sistem Operasi yang Menggunakan Demand Page :
MVS,VS/1,VS/2,VM/370,YSE (pada IBM S/370),MULTIC (pada HONEYWELL
6180),VMOS (pada UNIVAC SERIE 70/46 UNIX
4.FUNGSI MEMORY AGAR DAPAT MENJADI LEBIH Fleksibel
1. Mengikuti status dari 3 total
a) PMT : Satu/addres space
b) MBT : Satu/system
c) PMT : Satu/address space
2 Kebijakan untuk menentukan siapa yang mendapat memori dan kapan ,ditentukan
oleh job secondary dan juga oleh “Demand Page Interupt”
3 Allokasi
Kapan block harus di allokasikan,block yang available harus didapatkan dan
status block harus dirubah.
4. Deallokasi
Bila tidak mungkin mendapatkan block yang available untuk allokasi,salah
Satu block harus di deallocated,bila job telah selesai,semua block yang
kemudian menjadi available
Keuntungan
1. Virtual Memorynya besar
2. Penggunaan memori yang lebih effisien
3. Multiprograming yang tidak ter
Kerugian
1. H/W cost
2. Page Breakage
3. Processor Overhead
4. Space untuk table-tabel
5. Perlu pencegahan trashing
SWAPPING
Sistem Operasi 31
Dalam time sharing lebih dari satu user yang running secara bersamaan,tapi hanya satu
program yang dapat berada di dalam memori,sehingga jika suatu program hendak di execute
tapi memori masih ada program yang lain,maka program yang lain harus dipindahkan lebih
dahulu ke breaking storage (secondary memory).Proses ini dinamakan Swapping.
Fence Address Swap - In
Swap - Out
Logical Memory Page Table Phiscal Memory
page number Frame = Page = 2n = 25 frame number
0 0 1
0 Swap-In 2
1 3
2 4
3 Swap-Out 5
4 6
5 7 32
6
Pada teknik swapping,terbagi atas :
1.Swap-In
Memasukan program dari logical ke physical memori (dari breaking storage ke
memori)
2.Swap-Out
Mengeluarkan program dari memori ke breaking storage karena sudah penuh.
OVERLAY
Merupakan proses kegiatan pemindahan program yang disimpan pada secondary memory dan
sebagian saja yang mempunyai instruksi yang akan di execute untuk disimpan pada primary
Sistem Operasi 32
Monitor
5
4
3
2
1
0
2
3
1
4
5
6
123
4
5
memory (RAM),dikarenakan primary memori terbatas,program lebih besar dr primary
memori dan CPU lainnya dapat mesexecute satu prioritas setiap load.
Contoh :
0 2 pass Assembler
14 Pass -1 : 8 kb
Pass -2 : 10 kb 5 Symbol Table : 14 k
Common Routine : 5 kb
2
10 k 328 kTRASHING
Adalah suatu pengertian dimana cpu lebih bagus bekerja untuk dapat menentukan page
replacement dari pada execute program (99%),apabila hal tersebut terjadi multiprogramming
level harus
SEGMENTED PAGED
Merupakan bentuk pengalokasian memori dengan cara pengelompokan informasi secara
logika (Logical Grouping Of Information) seperti : subroutine,array,data area
Job Table:
Job
Number
Size Location Of
Page Map Table
Status
1. 8 kb 3600 Allocated
2. 12 kb 4160 Allocated
3. 4 kb 3820 Allocated
4. - - Empty Entry
Page No Block No Page No Block No Page No Block No
Sistem Operasi 33
Simbol Table
Common Routine
Overlay driver
Pass-1 Pass-2
0 ( 3600 ) 0 ( 4160 ) 0 ( 3820 )
1 ( 3602 ) 1 ( 4162 )
Job -1’s PMT 2 ( 4164 ) Job -3’s PMT
Job -2’s PMT Pada Segmented,diperlukan addres space dengan komponen :
1.Segment specifier
2.Lokasi dalam segment
Perbedaan segment dengan page
Segment : Merupakan logical unit dari informasi dengan ukuran bebas yang visible bagi
user.
Page : Merupakan Phisical unit dari informasi yang tidak visible bagi user.
Konversi 2 alamat yang tersegment ke alamat fisik memori secara linier,dilakukan secara
otomatis selama eksekusi berlangsung tidak secara statis oleh compiler atau loader.
Keuntungan :
1.Menghilangkan Fragmentasi
2.Virtual memori
3.Memungkinkan segment tumbuh secara dinamis serta checking batas secara
otomatis
4.Linking dan Loading secara dinamis
5.Memberi fasilitas “Shared Segment” (Data Area Procedur )
6.Menjamin aksess terkendali.
Pemakaian Konsep Segmentation,pada :
Bourrrogh 8500
Honeywell 6180 MULTIC
IBM S/370 OS/VS2
Tabel Pendukung Untuk Segment Memori Management :
1. SMT (Segment Map Table ) : 1 per address space
2. UAT (Unallocated Area Table ) : 1 pada system
3. ART (Active Reference Table ) : 1 per address space
Sistem Operasi 34
6
6
2
4
7
8
4. AST (Active Segment Table ) : 1 pada system
Sistem Operasi 35
Top Related