Struktur
Struktur
Konsep Sistem Operasi
Konsep Sistem Operasi
Software yang mengatur hardware. Software yang mengatur hardware.
Software yang mengatur software/program Software yang mengatur software/program lain
lain
Manager sumber daya atau pengalokasian Manager sumber daya atau pengalokasian sumber daya komputer, seperti mengatur sumber daya komputer, seperti mengatur
memori, printer, dll memori, printer, dll
Sebagai kernel, yaitu program yang terus-Sebagai kernel, yaitu program yang terus-menerus running selama komputer
menerus running selama komputer dihidupkan
dihidupkan
Konsep Sistem Operasi
Konsep Sistem Operasi
resource manager : pengelola
resource manager : pengelola
seluruh sumber daya yang terdapat
seluruh sumber daya yang terdapat
pada sistem komputer
pada sistem komputer
extended machine : menyediakan
extended machine : menyediakan
sekumpulan layanan ke pemakai
sekumpulan layanan ke pemakai
sehingga memudahkan dan
sehingga memudahkan dan
menyamankan penggunaan serta
menyamankan penggunaan serta
pemanfaatan sumber daya sistem
pemanfaatan sumber daya sistem
Modul/Komponen dalam
Modul/Komponen dalam
OS
OS
Modul Manajemen Proses
Modul Manajemen Proses
Modul Manajemen Memori
Modul Manajemen Memori
Modul Manajemen I/O
Modul Manajemen I/O
Modul Manajemen Sistem Berkas (File)
Modul Manajemen Sistem Berkas (File)
Modul Manajemen Penyimpanan
Modul Manajemen Penyimpanan
Sekunder
Sekunder
Modul Manajemen Sistem Proteksi
Modul Manajemen Sistem Proteksi
Modul Jaringan
Modul Jaringan
Manajemen Proses
Manajemen Proses
Proses adalah program yang dieksekusi - Proses adalah program yang dieksekusi - memerlukan sumber daya, contoh : waktu memerlukan sumber daya, contoh : waktu
CPU, memory, file, I/O device. CPU, memory, file, I/O device. OS bertanggung jawab dalam :OS bertanggung jawab dalam :
Create & delete ; baik proses user maupun Create & delete ; baik proses user maupun
sistem sistem
Suspend & meneruskan prosesSuspend & meneruskan proses
Mendukung mekanisme-mekanisme Mendukung mekanisme-mekanisme
sinkronisasi proses sinkronisasi proses
Mendukung mekanisme komunikasi prosesMendukung mekanisme komunikasi proses
Manajemen Memori
Manajemen Memori
Utama
Utama
Memory merupakan array(susunan)
Memory merupakan array(susunan)
word/byte dalam jumlah besar.
word/byte dalam jumlah besar.
Tiap word/byte punya alamat sendiri
Tiap word/byte punya alamat sendiri
Volatile storage device
Volatile storage device
OS bertanggung jawab dalam :
OS bertanggung jawab dalam :
Keep track bagian mana dari memori yang Keep track bagian mana dari memori yang
sedang digunakan & oleh siapa sedang digunakan & oleh siapa
Manajemen Sistem
Manajemen Sistem
Berkas
Berkas
Berkas (File) adalah kumpulan informasi Berkas (File) adalah kumpulan informasi yang berhubungan (sesuai dengan tujuan yang berhubungan (sesuai dengan tujuan
pembuat berkas tersebut). Biasanya berkas pembuat berkas tersebut). Biasanya berkas
merepresentasikan program dan data merepresentasikan program dan data OS bertanggung jawab dalam :OS bertanggung jawab dalam :
Pembuatan dan penghapusan filePembuatan dan penghapusan file
Pembuatan dan penghapusan direktoriPembuatan dan penghapusan direktori Mendukung manipulasi file dan direktoriMendukung manipulasi file dan direktori Pemetaan file dalam secondary storagePemetaan file dalam secondary storage
Manajemen I/O
Manajemen I/O
Sering disebut dengan device managerSering disebut dengan device manager
Menyediakan device driver yang umum sehingga Menyediakan device driver yang umum sehingga operasi I/O dapat seragam
operasi I/O dapat seragam
(membuka,membaca,menulis,menutup)
(membuka,membaca,menulis,menutup)
Contoh : user menggunakan operasi yang sama Contoh : user menggunakan operasi yang sama untuk membaca berkas pada CD Rom dan flash
untuk membaca berkas pada CD Rom dan flash
disk
disk
Komponen OS untuk sistem I/OKomponen OS untuk sistem I/O
Penyangga : menampung sementara data dari/ke Penyangga : menampung sementara data dari/ke
perangkat I/O perangkat I/O
Spooling : melakukan penjadwalan pemakaian I/O Spooling : melakukan penjadwalan pemakaian I/O
supaya lebih efisien supaya lebih efisien
Manajemen
Manajemen
Secondary-Storage
Storage
Back up main memory, non-volatile
Back up main memory, non-volatile
Data dan program disimpan dalam
Data dan program disimpan dalam
secondary storage (penyimpanan
secondary storage (penyimpanan
sekunder; disk)
sekunder; disk)
OS bertanggung jawab dalam :
OS bertanggung jawab dalam :
Mengelola ruang yang kosong dalam Mengelola ruang yang kosong dalam
storage storage
Alokasi penyimpananAlokasi penyimpanan
Sistem Proteksi
Sistem Proteksi
Mekanisme untuk
Mekanisme untuk
mengatur/mengendalikan akses yang
mengatur/mengendalikan akses yang
dilakukan oleh program, prosesor atau
dilakukan oleh program, prosesor atau
user ke sumber daya yang ada dalam
user ke sumber daya yang ada dalam
sistem komputer
sistem komputer
Mekanisme proteksi :
Mekanisme proteksi :
Dapat membedakan pemakaian yang sah Dapat membedakan pemakaian yang sah
(authorized) & yang tidak sah (unauthorized) (authorized) & yang tidak sah (unauthorized)
Jaringan (Distributed
Jaringan (Distributed
System)
System)
Distributed system : sekumpulan prosesor yang Distributed system : sekumpulan prosesor yang
tidak berbagi memory atau clock. Setiap prosesor tidak berbagi memory atau clock. Setiap prosesor
memiliki memori lokal masing-masing memiliki memori lokal masing-masing
Prosesor-prosesor dalam sistem terhubung dalam Prosesor-prosesor dalam sistem terhubung dalam
jaringan komunikasi jaringan komunikasi
Sebagai pengatur (protokol) dalam komunikasi Sebagai pengatur (protokol) dalam komunikasi
data data
Menentukan strategi-strategi menangani masalah-Menentukan strategi-strategi menangani
masalah-masalah komunikasi masalah komunikasi
Mengatur network file systemMengatur network file system
Dengan adanya shared resource :Dengan adanya shared resource : Peningkatan kecepatan komputasiPeningkatan kecepatan komputasi
Peningkatan penyediaan dataPeningkatan penyediaan data
Command Interpreter
Command Interpreter
Memungkinkan sistem berkomunikasi dengan user melalui Memungkinkan sistem berkomunikasi dengan user melalui perintah-perintah menjalankan proses yang telah
perintah-perintah menjalankan proses yang telah
didefinisikan beserta parameternya kemudian melakukan
didefinisikan beserta parameternya kemudian melakukan
respon
respon
OS menunggu perintah/instruksi dari user (OS menunggu perintah/instruksi dari user (command command
driven driven))
Contoh-contoh command interpreter :Contoh-contoh command interpreter :
command-line interpreter (CLI)command-line interpreter (CLI)
ShellShell
Command-Interpreter System sangat bervariasi dari satu Command-Interpreter System sangat bervariasi dari satu sistem operasi ke sistem operasi yang lain dan disesuaikan
sistem operasi ke sistem operasi yang lain dan disesuaikan
dengan tujuan dan teknologi I/O peranti yang ada.
dengan tujuan dan teknologi I/O peranti yang ada.
Layanan Operating
Layanan Operating
System
System
(1)(1)
Eksekusi program : load program user
Eksekusi program : load program user
ke memory dan menjalankannya (
ke memory dan menjalankannya (
run
run
)
)
Operasi-operasi I/O : pengguna tidak
Operasi-operasi I/O : pengguna tidak
bisa mengendalikan I/O secara langsung
bisa mengendalikan I/O secara langsung
(untuk efisiensi & keamanan), sistem
(untuk efisiensi & keamanan), sistem
harus bisa menyediakan mekanisme
harus bisa menyediakan mekanisme
untuk melakukan operasi I/O
untuk melakukan operasi I/O
Manipulasi file system : read, write,
Manipulasi file system : read, write,
create & delete
Layanan Operating
Layanan Operating
System
System
(2)(2)
Komunikasi antar proses :
Komunikasi antar proses :
Baik yang run di komputer yang sama
Baik yang run di komputer yang sama
atau berlainan via jaringan.
atau berlainan via jaringan.
Implementasi melalui shared memory
Implementasi melalui shared memory
atau message passing
atau message passing
Error detection
Error detection
Menjamin komputasi yang benar dengan
Menjamin komputasi yang benar dengan
mendeteksi error : CPU, memori, I/O
mendeteksi error : CPU, memori, I/O
Layanan OS Internal
Layanan OS Internal
Resource allocation
Resource allocation
Alokasi resources bagi sejumlah user atau Alokasi resources bagi sejumlah user atau
job yang running pada saat yang sama job yang running pada saat yang sama
Accounting
Accounting
Mencatat jumlah pengguna yang Mencatat jumlah pengguna yang
menggunakan sumber daya, dan jenis menggunakan sumber daya, dan jenis
sumber dayanya. sumber dayanya.
Protection
Protection
Menjamin agar semua akses ke sumber Menjamin agar semua akses ke sumber
System Program
System Program
Menyediakan lingkungan yang
Menyediakan lingkungan yang
memungkinkan pengembangan program
memungkinkan pengembangan program
dan eksekusi berjalan dengan baik
dan eksekusi berjalan dengan baik
Dapat dikategorikan :
Dapat dikategorikan :
Manipulasi Berkas (Manipulasi Berkas (FileFile))
Informasi Status : tanggal, jam, jumlah Informasi Status : tanggal, jam, jumlah
memori, disk, dll memori, disk, dll
Modifikasi BerkasModifikasi Berkas
Mendukung bahasa pemrograman : Mendukung bahasa pemrograman :
kompilator, assembly, interpreter kompilator, assembly, interpreter
Loading & eksekusi programLoading & eksekusi program
Komunikasi : menyediakan mekanisme Komunikasi : menyediakan mekanisme
komunikasi antara proses, user dan sistem komunikasi antara proses, user dan sistem komputer yang berbeda
System Call
System Call
Permintaan yang dilakukan oleh proses aktif melalui Permintaan yang dilakukan oleh proses aktif melalui software interrupt / exception untuk mendapatkan
software interrupt / exception untuk mendapatkan
layanan kernel
layanan kernel
Single prosesor menjalankan satu instruksi setiap Single prosesor menjalankan satu instruksi setiap
waktu. Jika sebuah proses yang berjalan di user mode
waktu. Jika sebuah proses yang berjalan di user mode
dan membutuhkan layanan sistem, harus melakukan
dan membutuhkan layanan sistem, harus melakukan
sistem call. Contoh : membaca data dari file
sistem call. Contoh : membaca data dari file
OS kemudian mengenali keinginan proses dengan OS kemudian mengenali keinginan proses dengan memeriksa parameter yang diberikan oleh proses
memeriksa parameter yang diberikan oleh proses
Tiga metode untuk passing parameter antara running Tiga metode untuk passing parameter antara running program dan OS :
program dan OS : melalui registermelalui register
Menyimpan parameter dalam blok atau tabel pada memory, Menyimpan parameter dalam blok atau tabel pada memory,
dan alamat blok tsb diberikan sebagai parameter dlm register dan alamat blok tsb diberikan sebagai parameter dlm register
Menyimpan parameter (Menyimpan parameter (pushpush) ke dalam stack (oleh program), ) ke dalam stack (oleh program),
dan
Jenis-jenis System Call
Jenis-jenis System Call
Process ControlProcess Control
Load, execute, create/terminate process, get/set process Load, execute, create/terminate process, get/set process
attributes, wait, dll
attributes, wait, dll
File managementFile management
Create/delete file, open/close, read/write, get/set file attributes, dllCreate/delete file, open/close, read/write, get/set file attributes, dll
Device managementDevice management
Request/release device, get/set device attributes, dllRequest/release device, get/set device attributes, dll
Information MaintenanceInformation Maintenance
Get/set time, dllGet/set time, dll
CommunicationCommunication
Struktur Sistem Operasi
Struktur Sistem Operasi
Monolithic
Monolithic
Layered / berlapis
Layered / berlapis
Virtual machine
Virtual machine
Mikrokernel
Mikrokernel
Monolithic
Monolithic
Struktur sederhana
Struktur sederhana
OS ditulis sebagai kumpulan
OS ditulis sebagai kumpulan
prosedur, masing-masing dapat
prosedur, masing-masing dapat
memanggil prosedur yang lain jika
memanggil prosedur yang lain jika
dibutuhkan
Monolithic
Monolithic
Struktur Monolithic :Struktur Monolithic :
Main program / procedure yang memanggil service Main program / procedure yang memanggil service procedure
procedure
Sekumpulan service procedure yang menangani Sekumpulan service procedure yang menangani system call
system call
Utility procedure yang mendukung service Utility procedure yang mendukung service procedure
Layered / Berlapis
Layered / Berlapis
OS dibagi menjadi sejumlah lapisan
OS dibagi menjadi sejumlah lapisan
yang masing-masing dibangun di atas
yang masing-masing dibangun di atas
lapisan yang lebih rendah
lapisan yang lebih rendah
Lapisan yang lebih rendah
Lapisan yang lebih rendah
menyediakan layanan untuk lapisan
menyediakan layanan untuk lapisan
yang lebih tinggi
yang lebih tinggi
Lapisan paling bawah : perangkat keras
Lapisan paling bawah : perangkat keras
Lapisan paling atas : antarmuka
Lapisan paling atas : antarmuka
pengguna
Contoh Struktur Layered -
Contoh Struktur Layered -
THE
THE
THE (Technische Hogeschool at Eindhoven) THE (Technische Hogeschool at Eindhoven)
Operating System (Dijkstra, 1968)
Operating System (Dijkstra, 1968) Level 5 : operator / userLevel 5 : operator / user
Level 4 : user programLevel 4 : user program
Menangani kompilasi, eksekusi dan printing user Menangani kompilasi, eksekusi dan printing user
program program
Level 3 : I/O managementLevel 3 : I/O management
Level 2 : operator-process communicationLevel 2 : operator-process communication
Level 1 : memory managementLevel 1 : memory management
Alokasi memori untuk prosesAlokasi memori untuk proses
Level 0 : processor allocation & Level 0 : processor allocation &
multiprogramming
multiprogramming
Menentukan alokasi proses ke CPU, menangani Menentukan alokasi proses ke CPU, menangani
Virtual Machine
Virtual Machine
Implementasi software dari sebuah
Implementasi software dari sebuah
mesin (komputer) yang menjalankan
mesin (komputer) yang menjalankan
program seperti mesin secara fisik.
program seperti mesin secara fisik.
Duplikat dari mesin sebenarnya
Duplikat dari mesin sebenarnya
Masing-masing VM mempunyai
Masing-masing VM mempunyai
prosesor, memori dan sumber daya
prosesor, memori dan sumber daya
lain secara terpisah di dalam satu
lain secara terpisah di dalam satu
mesin host.
Virtual Machine
Virtual Machine
Nonvirtual Machine
Contoh VM Software
Contoh VM Software
VirtualPC
VirtualPC
VMWare
VMWare
Mikrokernel
Mikrokernel
Kernel yang menyediakan hanya sekumpulan kecil Kernel yang menyediakan hanya sekumpulan kecil
abstraksi perangkat keras sederhana, dan
abstraksi perangkat keras sederhana, dan
menggunakan aplikasi-aplikasi yang disebut
menggunakan aplikasi-aplikasi yang disebut
sebagai server untuk menyediakan fungsi-fungsi
sebagai server untuk menyediakan fungsi-fungsi
lainnya.
Mikrokernel
Mikrokernel
Menyusun sistem operasi dengan menghapus
Menyusun sistem operasi dengan menghapus
semua komponen yang tidak esensial dari
semua komponen yang tidak esensial dari
kernel
kernel
, dan mengimplementasikannya sebagai
, dan mengimplementasikannya sebagai
sistem program dan level pengguna
sistem program dan level pengguna
Monolithic
Exokernel
Exokernel