OPERATING SYSTEM
Buku Pegangan
• A. Silberschatz, P.B. Galvin, Operating System
Concepts 5th Ed., Addison-Wesley, 1998
• A. Silberschatz, P.B. Galvin, G. Gagne,
Operating System Concepts with Java 6th Ed.,
John Wiley & Sons, 2004
• Stalling, W, Operating System, 2th Ed, New-
Jersey : Prentice-Hall, 1995
• Tanenbaum. Operating System : Design,
Implementation, 4th Ed, New-Jersey : Prentice-
Hall, 1995
• Selected papers : case study on various OS :
NT, Solaris, Linux, etc.
BAGIAN I
Overview
Pembahasan
• Apakah suatu Operating System ?
• Perkembangan Operating System
• Struktur-struktur Sistem Komputer
• Struktur-struktur Operating System
Apakah suatu Operating
System ?
• Sebagai perantara (intermediatary) user
komputer dengan hardware,
– dalam hal user mengeksekusi program
– SO akan melakukan berinteraksi
dengan system resource (sumber daya
komputer) yang berada di
hardware/mesin.
– Terbentuk komunikasi tidak langsung
antara user dengan hardware
Obyektif OS
• Convenience : user merasakan kemudahan
dan kenyamanan dalam penggunaan
• Efficiency : resources system dapat
diutilisasi semaksimal mungkin
• Robustness : kehandalan sistem proteksi
terhadap kesalahan user
• Evolution : memudahkan pengembangan,
mendukung sistem baru dan program
aplikasi yang berkembang
Abstraksi Sistem Komputer
Komponen-komponen Sistem
Komputer
• Perangkat keras
– CPU, RAM, storage (hardisk, floppy disk, CDROM,
dsb), piranti I/O (printer, scanner, dsb)
• Operating System
– Mengontrol dan mengkoordinasikan penggunaan
hardware dari berbagai program aplikasi dan user
• Program-program aplikasi
– Pengaturan penggunaan system resources untuk
pemecahan problem kebutuhan user (kompiler,
sistem basis data, games, dan program-program
untuk bisnis)
• User
– Orang, mesin, atau komputer lain
Definisi Operating System
• Sebagai System Resource Allocator
– OS sebagai resource manager diperlukan
• karena adanya beberapa user/program
aplikasi
• Karena adanya beberapa resource untuk
dapat diutilisasi oleh user/program aplikasi
dalam suatu keterbatasan
– Manajemen diperlukan untuk mencegah
konflik dan berperan sebagai interface
Definisi Operating System
(Lanjutan…)
• Sebagai Control Program
– Mengontrol eksekusi program dari
adanya kesalahan utilisasi
– Menghindari pemakaian komputer yang
tidak benar
• Khususnya untuk I/O device
• Sebagai Kernel
– OS merupakan program yang berjalan
sepanjang sistem perangkat keras
Definisi Operating System
(Lanjutan…)
• Sebagai Extended Machine/Virtual Machine
– Bare hardware (instruction set, memory
access dan operasi I/O)
• primitif dan sulit digunakan
• low level dan hardware dependant
– Dengan adanya OS sebagai interface
• sederhana dan general
• high level dan hardware independent
• easy to program & easy to operate
Jadi apa definisi Operating
System ?
• Dalam hal OS sebaiknya kita tidak
membatasi diri dengan definisi karena
definisi akan berkembang sejalan dengan
perkembangan teknologi dan kebutuhan
Sistem-sistem Awal
• Sistem komputasi adalah hanya sebuah
mesin yang dijalankan oleh programmer
yang juga bertindak sebagai operator
– Proses-proses masih sederhana dan
diaktifkan melalui console dan tombol-tombol
pada panel
– Punch card / paper
– Bahasa mesin
– Buffer, flag, register dan control bit lain
Hasil Perkembangan Teknologi HW
• Teknologi storage : magnetic tape
– Program dan data dapat disimpan dalam
media yang berkapasitas besar dan relatif
mudah di-load
– Modul-modul perangkat lunak pendukung
yang membantu pengoperasian perangkat
keras serta memberikan lingkungan yang
lebih baik bagi pembuat program aplikasi
• Device driver (misalnya I/O), library fungsi
komputasi, assembler, modul loader
High Level Language
• Hasil lebih lanjut : munculnya high level
language
– Sehingga penulisan program menjadi jauh
lebih mudah
• Tahapan pemrograman :
– Program (source code) ditulis dalam bahasa
ybs
– Dikompilasi oleh compiler ke dalam assembly
– Ditranslasikan ke dalam bahasa mesin (object
code) oleh assembler
Tahapan Eksekusi
• Load compiler
– Masukan : source code, keluaran : assembly
code
• Me-load assembler
– Masukan : assembly code, keluaran : object
code
• Me-load linker
– Masukan : object code & library, keluaran :
executable code
• Run executable code
– Jika terjadi error seluruh rangkaian harus
diulangi
Sistem-sistem Batch Sederhana
• Operator
– Secara khusus menangani beroperasinya sistem
• Programmer
– Menspesifikasikan aktifitas-aktifitas job
• Automatic Job Sequencing : transfer kontrol
secara otomatis dari satu job ke job yang lain.
Menjadi dasar awalnya operating system
• Resident Monitor
– Program kecil untuk melakukan Automatic Job
Sequencing
Ilustrasi Batch System
Node Node
Clustered Systems
• Clustering memungkinkan dua atau lebih
sistem men-sharing storage
• Reliabilitas yang tinggi
• Asymmetric clustering : satu server run
aplikasi sementara server yang lain
standby
• Symmetric clustering : semua N host
running aplikasi
Struktur Clustered Systems
Real-Time Systems
• Rancangan OS khusus untuk aplikasi
spesifik yang memerlukan waktu response
cepat : hardware/software
– Misal : kontrol proses kimia, alat
kedokteran/scientifik, ponsel, home
appliances
• Terdapat batasan waktu tertentu untuk
eksekusi (processing), response, dll
• Hard & soft real-time system
Hard Real-Time Systems
• Garansi bahwa task kritis pasti selesai
dalam batasan waktu tertentu (terdapat
deadline yang harus dipenuhi)
• Optimasi dilakukan dengan melakukan
prioritas task, menghilangkan hardware yang
lambat (disk). Data disimpan dalam short
term memory atau read-only memory (ROM)
• Overhead dikurangi (dengan membatasi
feature untuk aplikasi spesifik) : misal file-
system
Soft Real-Time Systems
• Versi lain dari OS yang umum dengan
menambahkan fasilitas prioritas task,
buffering antar proses, dll
• Aplikasi spesifik untuk melakukan
processing sementara secara cepat
(multimedia, virtual reality, etc)
• Utilitas yang terbatas pada mesin kontrol
industri atau robotik
Real-Time Embedded Systems
Handheld Systems
• Personal Digital Assistant (PDA)
• Cellular telephones
• Issue :
– Keterbatasan memori
– Processor yang lambat
– Display screen yang kecil
Migrasi OS – Konsep dan Fitur
Histori Singkat OS
• First generation 1945 - 1955
– vacuum tubes, plug boards
• Second generation 1955 - 1965
– transistors, batch systems
• Third generation 1965 – 1980
– ICs and multiprogramming
• Fourth generation 1980 – present
– personal computers
Computing Environments
• Traditional computing
– PCs, Servers, limited remote access
• Web-Based Computing
– Client-server and web services, convenient remote
access, locationless Servers
• Embedded Computing
– Most computers (auto engine controllers,
microwaves)
– Very limited operating system features
– Little or no user interface, remote access