Sistem Operasi Komputer

advertisement
Sistem Operasi Komputer
Sistem Operasi Komputer
Pertemuan III – Struktur Sistem Operasi
Kuis Kecil II
1.
2.
3.
4.
5.
6.
Sebutkan komponen-komponen utama penyusun sistem operasi
modern ! (15 point)
Sebutkan layanan-layanan yang diberikan OS untuk menjamin
tugas user/programmer menjadi lebih ringan ! (15 point)
Ceritakan system call yang mungkin dibutuhkan pada suatu
program untuk melakukan pembacaan data dari suatu file dan
meng-copy-kannya ke file lain. (25 point)
Apakah kegunaan system program ? Sebutkan hal-hal yang
dapat digolongkan sebagai system program ! (20 point)
Mengapa struktur sistem dalam OS diperlukan ? Sebutkan
struktur sistem yang banyak digunakan ! (10 point)
Apa yang dimaksudkan dengan mesin virtual ? Apa kesulitan
dalam pembuatannya ? Apa keuntungan adanya mesin virtual ?
(15 point)
Universitas Kristen Maranatha -- IT Department
1
Sistem Operasi Komputer
Struktur Sistem Operasi
Komponen-komponen sistem
Pelayanan sistem operasi
System call
Sistem program
Struktur sistem
Virtual mesin
Rancangan sistem dan implementasi
Sistem generasi
Komponen Sistem
Manajemen Proses
Pembuatan atau penghapusan proses yang dibuat
oleh user atau sistem
Penghentian sementara dan memulai kembali
suatu proses
Kelengkapan mekanisme untuk sinkronisasi
proses
Kelengkapan mekanisme untuk komunikasi proses
Kelengkapan mekanisme untuk pengendalian
deadlock
Universitas Kristen Maranatha -- IT Department
2
Sistem Operasi Komputer
Komponen Sistem
Manajemen Memori Utama
Menjaga dan memelihara bagian-bagian memori
yang sedang digunakan dan dari yang
menggunakan
Memutuskan proses mana saja yang harus
dipanggil ke memori jika masih ada ruang di
memori utama
Mengalokasikan dan mendealokasikan ruang
memori jika diperlukan
Komponen Sistem
Manajemen Memori Sekunder
Pengaturan ruang kosong dalam disk
Alokasi penyimpanan (sector(fisik) atau
blok(logik))
Penjadwalan disk
Universitas Kristen Maranatha -- IT Department
3
Sistem Operasi Komputer
Komponen Sistem
Manajemen I/O
Sistem buffer,caching, spooling
Antarmuka device-driver secara umum
Driver untuk device hardware tertentu
Komponen Sistem
Manajemen File
Pembuatan dan penghapusan file
Pembuatan dan penghapusan direktori
Primitif-primitif
yang mendukung untuk
manipulasi file dan direktori
Pemetaan file ke memori sekunder
Backup file ke media penyimpanan yang stabil
(non volatile)
Universitas Kristen Maranatha -- IT Department
4
Sistem Operasi Komputer
Komponen Sistem
Networking
Berperan dalam Distributed-system
dan
computer interconnection
Akses jaringan untuk sharing informasi
Protokol-protokol internet:
FTP
HTTP
Komponen Sistem
Proteksi
Mekanisme pengontrolan akses program, proses
atau user ke dalam suatu resource tertentu
dalam sistem komputer
Meningkatkan reliabilitas (kepercayaan) melalui
deteksi error
Universitas Kristen Maranatha -- IT Department
5
Sistem Operasi Komputer
Komponen Sistem
Command Interpreter
Interface antara user dengan sistem operasi:
User friendly: MS Windows, Macintosh
Command line (shell): unix, DOS
Interaksi dengan komponen sistem lainnya
Pelayanan Sistem Operasi
Eksekusi program
Operasi-operasi I/O
Manipulasi sistem file
Komunikasi: proses dalam satu komputer, beberapa
proses dalam jaringan.
Teknik: shared-memory, message passing
Mendeteksi error
Efisiensi sistem: resource allocation, accounting
(network performance), protection
Universitas Kristen Maranatha -- IT Department
6
Sistem Operasi Komputer
System calls
Interrupt yang ditimbulkan SW dengan mengeksekusi kode
program (operasi) tertentu sebagai interface antara proses
dengan sistem operasi.
Implementasi
Bahasa assembly (low level – machine code)
C, C++, Perl (high level – programmer oriented)
Metode passing parameter antara SOK dan program
Parameter dalam register
Tabel dalam memori dan tabel alamat (register)
Stack (pop and push) operasi
Program baca data – copy ke file
Source-Destination file
Prompting message / menu-based windows
Read from keyboard / mouse click
Open input file
Success
No success
Prompting message
Terminate abnormally
Create output file
No success
Same name:
Abort
Delete existing file
Create a new one
(message, read response)
Success
Loop until EOF
Read from input file, check HW failure
Write to destination, check HW failure
No success
Prompting message
Terminate abnormally
Universitas Kristen Maranatha -- IT Department
Success Close files S-D
Write message
Close normally
7
Sistem Operasi Komputer
System call – Kontrol Proses
Mengambil (load) dan eksekusi
Mengakhiri (end) dan membatalkan (abort)
Membuat dan mengakhiri proses
Menentukan dan mengeset atribut proses
Waiting event
Signal event
Mengalokasikan dan membebaskan memori
Contoh: ms-dos dengan command interpreternya (prompt) yang
singletasking
Contoh: linux dengan x-console yang multitasking
Eksekusi MS DOS
• Singletasking
• Tidak membuat proses baru
• Process langsung di-load ke
memory, memory command interpreter dipakai juga untuk program
• Sisa command interpreter di-load
kembali setelah process berhenti
Start up
Universitas Kristen Maranatha -- IT Department
Eksekusi program/proses
8
Sistem Operasi Komputer
Eksekusi Linux
• Multitasking system
• Foreground – background
process
• New-process fork() system
call
• Selected program into
memory exec() sys call
System call – Manipulasi File
Membuat dan menghapus file, contoh: directory
temp pada zip program
Membukan dan menutup file
Membaca, menulis dan mereposisi file, contoh:
install program (setup.exe)
Menentukan dan mengeset atribut file
Universitas Kristen Maranatha -- IT Department
9
Sistem Operasi Komputer
System call – Manipulasi Device
Meminta dan membebaskan device
Membaca, menulis dan mereposisi file
Menentukan dan mengeset atribut device
Contoh: alokasi printer untuk sebuah file yang
akan dicetak
System call – Informasi Lingkungan
Mengambil atau mengeset waktu atau tanggal
Mengambil atau mengeset sistem data
Mengambil atau mengeset proses, file
atau
atribut-atribut device
Universitas Kristen Maranatha -- IT Department
10
Sistem Operasi Komputer
System call – Komunikasi
Membuat dan menghapus sambungan
komunikasi
Mengirim dan menerima pesan
Mentransfer status informasi
Contoh: autentikasi koneksi ke jaringan
Model komunikasi
Message passing
Universitas Kristen Maranatha -- IT Department
Shared memory
11
Sistem Operasi Komputer
Sistem program
Lingkungan dalam pengembangan dan eksekusi program.
Dapat dibagi:
Manipulasi file
Status informasi
Modifikasi file
Bahasa pemrograman (kompiler, assembler, atau interpreter)
Pemanggilan dan eksekusi program
Komunikasi
Program aplikasi: text editor, database, games, dll
Menyediakan interface ke system call
Sebagian besar tampilan yang “dilihat” user, berasal dari
sistem program dan bukan dari system call
Struktur sistem
Struktur sederhana
Monolithic system
Mikrokernel system
Layered approach
Mesin virtual
Client server model
Universitas Kristen Maranatha -- IT Department
12
Sistem Operasi Komputer
Struktur sederhana
Kecil, sederhana, terbatas
Tidak terbagi dalam modul-modul
Interface dan tingkat fungsionalitas tunggal
(tidak dual mode dan tidak memiliki proteksi
hardware)
Contoh: MS DOS dan Unix (Original Design)
Struktur Sistem DOS
Universitas Kristen Maranatha -- IT Department
13
Sistem Operasi Komputer
Monolitihic system (1)
Struktur sederhana, dilengkapi dengan operasi dualmode
Fungsionalitas (networking, file systems, memory
management, process control, etc.) dilakukan oleh
kernel sendiri.
Pelayanan (system call) dengan cara mengambil
parameter pada tempat yang telah ditentukan (register
atau stack) kemudian mengeksekusi trap tertentu pada
monitor mode.
Co: Linux, Unix Modern
Monolitihic system (2)
• Program utama meminta
service procedure
• Kumpulan service
procedure yang dibawa
oleh system call
• Kumpulan utility procedure
yang membantu service
procedure
• Tiap system call (trap) memiliki
satu service procedure
• Utility procedure mengerjakan
segala sesuatu yang dibutuhkan
oleh beberapa service
procedure, contoh: pengambilan
data dari user program
Universitas Kristen Maranatha -- IT Department
User program 2
User program 1
trap
User
mode
Service procedure
Monitor
mode
Dispacth table
14
Sistem Operasi Komputer
Monolitihic system (3)
Kernel (maintaining
important abstraksi: VM
and processes)
System Libraries
(standard set of functions
kernel interactions)
System Utilities
(specialized
management tasks)
Monolitihic system (4)
Universitas Kristen Maranatha -- IT Department
15
Sistem Operasi Komputer
Mikrokernel (1)
Memiliki kernel sebagai “core” yang dapat beradaptasi
dengan perubahan sistem user program
Memory management
Communication facility
Process management
Komunikasi antar modul program dengan message passing
Keuntungan:
Perluasan fungsionalitas dan interface
Porting ke dalam arsitektur komputer yang baru lebih mudah
Reliabilitas (kode dalam kernelnya lebih sederhana)
Sekuritas
Co: BeOS, OS/2, POSIX, DOS
Mikrokernel (2)
Universitas Kristen Maranatha -- IT Department
16
Sistem Operasi Komputer
Mikrokernel (3)
Mikrokernel VS. Monilithic
Advantages
MICROKERNEL
MONOLITHIC
Fault tolerant, & secure.
Direct implementation of kernel.
Easy to develop extra
functionality.
Fast; less overhead.
Less errors in kernel.
Clean programming API.
Disadvantages
Slower; increased overhead.
Hard to develop extra
functionality.
Complicated programming API.
Not necessarily as secure.
Universitas Kristen Maranatha -- IT Department
17
Sistem Operasi Komputer
Layered approach (1)
Sistem modular
Lapisan terendah (0) adalah hardware, lapisan teratas
(N) adalah user interface
Lapisan lebih atas diimplementasikan dengan
menggunakan operasi yang tersedia oleh lapisan yang
lebih rendah
Baik untuk error deteksi, debugging dan verifikasi
sistem
Contoh: unix termodifikasi, OS/2, THE, WinNT (hybrid)
Layered approach (2)
Universitas Kristen Maranatha -- IT Department
18
Sistem Operasi Komputer
Layered approach (3)
User Interface
Sistem program
Kernel
Menyediakan: sistem file, CPU scheduling, manajemen memori, dll
Menggunakan sistem satu tingkat (one level layer)
Layered approach (4)
OS/2
Layers
Universitas Kristen Maranatha -- IT Department
19
Sistem Operasi Komputer
Layered approach (5)
WinNT
Win2000
WinXP
(hybrid
Microkernel
& Layers)
Mesin virtual (1)
Interface hardware dengan kernel untuk tiap-tiap proses
Tiap proses memiliki (virtual) memori dan “menganggap”
prosesor dimiliki oleh proses itu sendiri
Sumberdaya komputer (fisik) “disharing” ke dalam tiap proses
Teknik ilusi: CPU Scheduling, Threads, Virtual Memory
Kesulitan: implementasi transfer user-mode ke monitormode pada mesin nyata, yang juga menyebabkan transfer
dari virtual user-mode ke virtual monitor-mode pada mesin
virtual
Keuntungan: proteksi resource
Contoh: IBM VM, Java OS
Universitas Kristen Maranatha -- IT Department
20
Sistem Operasi Komputer
Mesin virtual (2)
Non-virtual Machine
Virtual Machine
Client-server model
Memindahkan kode ke lapisan yang lebih tinggi, kernel
minimal
Fungsi-fungsi pada SOK menjadi user proses (client
proses)
Pengendalian komunikasi C/S
Server tidak mengakses hardware langsung
Sistem terdistribusi
Universitas Kristen Maranatha -- IT Department
21
Sistem Operasi Komputer
Rancangan sistem
User: SOK harus dapat digunakan secara efektif,
efisien, mudah dipelajari, reliabel, aman dan cepat
Sistem: SOK harus mudah dirancang,
diimplementasikan, dan di-maintain, serta harus
fleksibel, reliabel, bebas dari error dan efisien
Mekanisme: bagaimana melakukan sesuatu.
Policy: memutuskan apa yang harus dilakukan
Implementasi SOK
Secara tradisional dituliskan dalam bahasa assembly,
namun berkembang terus dan dituliskan juga pada
bahasa tingkat tinggi: C, C++ dan java
Penulisan pada bahasa tingkat tinggi:
Lebih cepat dituliskan
Lebih mudah melacak kesalahan
Lebih kompak
SOK yang dituliskan dengan bahasa tingkat tinggi, lebih
mudah untuk dipindah antar sistem komputer (porting)
Universitas Kristen Maranatha -- IT Department
22
Sistem Operasi Komputer
Sistem generasi (SYSGEN)
SOK dirancang untuk dapat dijalankan pada setiap tipe
mesin
SYSGEN memberikan informasi yang mengacu pada
konfigurasi hardware tertentu
Booting: mulai menjalankan komputer dengan meloading kernel yang ada
Program bootstrap: kode yang tersimpan dalam ROM
yang digunakan untuk menunjukkan kernel dan
menaruhnya pada RAM, dan mulai eksekusi program
Latihan Soal
1.
2.
3.
4.
5.
6.
7.
Sebutkan aktivitas yang dilakukan pada manajemen
proses !
Sebutkan aktivitas yang dilakukan pada manajemen
memori !
Sebutkan jenis-jenis layanan yang dilakukan SOK !
Apakah system call itu?
Sebutkan keuntungan digunakannya struktur terlapis
Sebutkan keuntungan digunakannya mesin virtual
Sebutkan keuntungan digunakannya struktur clientserver
Universitas Kristen Maranatha -- IT Department
23
Download