Document

advertisement
III. Struktur sistem operasi
III.1. Struktur sederhana
• Sistem operasi yang kecil,
sederhana dan terbatas pada
hardware contoh MSDOS
dan UNIX
MSDOS
• MSDOS menggunakan single
tasking dan single mode
(tanpa proteksi hardware)
• Terdapat dua fasilitas layanan
interrupsi :
- Layanan ROM BIOS
- Layanan di MS DOS
Program Aplikasi
Program sistem resident
MS DOS device drivers
ROM BIOS device drivers
1
MS DOS pada
IO.sys dan MSDOS.sys
ROM BIOS
Interrupsi
0x05
0x10
0x11
0x12
0x13
0x14
0x15
0x16
0x17
0x18
0x19
0x1A
Deskripsi
Utilitas Print-Screen
Video I/O
Daftar perangkat
Ukuran memori
Disk I/O
Serial port I/O
Cassete control
Keyboard I/O
Printer I/O
Mengeksekusi ROM BASIC
Mengeksekusi bootstrap loader
Waktu dan tanggal
Interrupsi
0x20
0x21
0x22
0x23
0x24
0x25
0x26
0x27
0x2A
0x2F
Deskripsi
Program terminate
Function request
Terminate address
Control-break exit address
Critical error handler vector
Absolute disk read
Absolute disk write
Terminate & stay resident
MS-NET access
Printer Multiplex
UNIX
• Terdiri dari Kernel dan program sistem
• Kernel berisi sistem file, penjadwalan CPU,
manajemen memori dan system call
• Program sistem memanggil fungsi yang ada pada
kernel
2
User Program
Trap
User Level
Libraries
Diagram Blok
Sistem Kernel UNIX
Kernel Level
System Call Interface
File Subsystem
Process
Control
Subsystem
Scheduler
Memory
Management
Buffer Cache
Character
Inter-process
Communication
Blok
Device Drivers
Hardware Control
Kernel Level
Hardware Level
3
Hardware
Struktur UNIX
users
Shell dan perintah-perintah;
compiler dan interpreter;
system libraries;
antarmuka system call ke kernel
sinyal;
sistem file;
Penjadwalan CPU;
pengendali terminal;
swapping;
page replacement
sistem karakter I/O;
sistem blok I/O;
demand paging;
terminal drivers;
disk & tape drivers virtual memory;
terminal controllers
terminals
device controllers
disk & tapes
memory controllers
memory fisik
4
III.2. Struktur Monolithic
• Merupakan struktur sederhana yang dilengkapi dengan
dual mode
• Berupa kumpulan prosedur yang dapat dipanggil bila
diperlukan dan dieksekusi pada monitor mode
• User program melakukan trap pada kernel. Intruksi
berpindah dari user mode ke monitor mode dan
mentransfer kontrol ke sistem operasi
• Sistem operasi mengecek parameter dari pemanggilan
tersebut untuk menentukan system call mana yang
memanggil
• Sistem operasi menunjuk ke suatu tabel yang berisi
system call yang dimaksud
• Setelah system call selesai, kontrol dikembalikan ke
user program
5
Kelemahan sistem monolithic
• Merupakan pemborosan bila setiap komputer harus
menjalankan kernel monolitik karena sangat besar
ukurannya sementara sebenarnya tidak memerlukan seluruh
layanan yang disedikan kernel
• Pengujian dan penghilangan kesalahan sulit dilokalisasi dan
bila ada kesalahan dapat mematikan seluruh sistem
Keunggulan sistem monolithic
• Layanan dapat dilakukan sangat cepat karena terdapat di
satu ruang yang sama
6
III.3. Struktur Berlapis
• Sistem operasi dibagi menjadi modul-modul (modular)
dan tiap modul memiliki hirarki top-down.
• Modul yang merupakan lapisan bawah akan melayani
lapisan di atasnya.
• Contoh : UNIX termodifikasi, THE, Venus dan OS2
Struktur THE :
Lapis-5 : user program
Lapis-4 : buffering untuk I/O device
Lapis-3 : operator-console device driver
Lapis-2 : manajemen memori
Lapis-1 : penjadwalan CPU
Lapis-0 : hardware
7
12
Modern Operating System Design Hierarchy
Name
Objects
User programming
Shell
environment
User processes
User processes
11
Directories
Directories
10
Devices
External devices, such
as printers, displays,
and keyboards
9
File system
Files
8
Communication
Pipes
7
Virtual memory
Local secondary
store
Level
13
6
5
4
3
2
1
(Denning & Brown)
Example Operations
Segments, pages
Blocks of data, device
channels
Primitive process,
Primitive processes
semaphore, ready list
Interrupt-handling
Interrupts
program
Procedures, call stack,
Procedures
display
Evaluation stack, microInstruction set
program interpreter,
scalar and array data
Electronic circuits
Register, gates, buses, etc
Statements in shell language
Quit, kill, suspend, resume
Create, destroy, attach,
detach,
search, list
Create, destroy, open, close,
read, write
Create, destroy, open, close
read, write
Create, destroy, open, close,
read, write
Read, write, fetch
Read, write, allocate, free
Suspend, resume, wait, signal
Invoke, mask, unmask, retry
Mark stack, call, return
Load, store, add, substract,
branch
Clear, transfer, activate, complement
8
Keunggulan Struktur Berlapis
• Karena sistem dibagi menjadi beberapa modul, tiap lapisan
dapat dirancang dan diuji secara independen
Kelemahan Struktur Berlapis
• Fungsi-fungsi sistem operasi harus diberikan ke setiap
lapisan secara hati-hati
III. 4. Struktur dengan Mesin Virtual
• Awalnya struktur ini melakukan simulasi mesin nyata dan
hasil simulasi berupa mesin virtual yang digunakan user
• Kemudian berkembang menjadi emulator sistem operasi
yang memungkinkan sistem operasi diemulasikan pada
sistem operasi yang berbeda
• Mula-mula digunakan pada IBM S/370 dengan VM370-nya
Contoh emulasi sistem operasi
• Sistem operasi MS-Windows NT dapat menjalankan
aplikasi untuk MS-DOS, OS/2 mode teks dan aplikasi
Win16. Aplikasi tersebut dijalankan sebagai masukan bagi
subsistem di MS-Windows NT yang mengemulasikan
system calls yang dipanggil aplikasi dengan WIN32 API
• IBM mengembangkan WABI yang mengemulasikan WIN32
API sehingga diharapkan sistem operasi yang menjalankan
WABI dapat menjalankan aplikasi-aplikasi untuk MS
Windows
• Pada LINUX ada DOSEMU untuk menjalankan aplikasi
DOS pada LINUX dan WINE untuk menjalankan aplikasi
MS Windows pada LINUX
10
III.5. Struktur dengan Client-Server
• Sistem operasi berupa kumpulan proses yang dapat
dikategorikan :
- Server : proses yang menyediakan layanan
- Client : proses yang meminta layanan
• Server dan client ditempatkan pada user mode
• Kernel dibuat sekecil mungkin dan hanya bertugas
mengatur komunikasi antara client dan server
client
proses
client
proses
proses
server
terminal
server
kernel
.........
file
server
memory
server
user
mode
monitor
mode
11
Kelemahan Struktur Client Server
• Layanan dilakukan lambat karena harus melalui pertukaran
pesan yang dapat menjadi bottleneck
Keunggulan Struktur Client Server
• Pengembangan dapat dilakukan secara modular
• Kesalahan pada sub sistem tidak akan mematikan seluruh
sistem
• Dapat diadaptasikan pada sister terdistribusi
Mesin-1
Mesin-2
Mesin-3
Mesin-4
Client
File
server
Proces
server
Terminal
server
Kernel
Kernel
Kernel
Kernel
......
12
Jaringan
III.6. Struktur Berorientasi Obyek
• Sistem operasi mengerjakan layanan sebagai obyek
• Tiap obyek berisi (encapsulated) struktur data dan operasi
data dan diberi tipe sesuai dengan propertinya (proses,
direktori, berkas)
Contoh : Window NT, Medusa, X-kernel
Pelayanan Sistem Operasi (pada programmer)
• Eksekusi Program
• Operasi I/O
• Manipulasi sistem file (pembuatan, penghapusan, write,
read)
• Komunikasi
• Pendeteksian kesalahan
13
System Call
System call dapat dikelompokkan menjadi 5
kategori
A. Kontrol Proses
• Mengakhiri (end) dan membatalkan (abort)
• Mengambil (load) dan eksekusi (execute)
• Membuat dan mengakhir proses
• Menentukan dan mengeset atribut proses
• Wait for time
• Wait event, signal event
• Mengalokasikan dan membebaskan memori
14
B. Memanipulasi File
D. Informasi Lingkungan
• Membuat dan menghapus file • Mengambil atau mengeset
waktu dan tanggal
• Membuka dan menutup file
• Mengambil atau mengeset
• Membaca, menulis dan
sistem data
mereposisi file
• Menentukan dan mengeset • Mengambil atau mengeset
proses, file atau attribut
atribut file
device
C. Manipulasi Device
• Meminta dan membebaskan
device
• Membaca, menulis dan
mereposisi device
• Menentukan dan mengeset
atribut device
E. Komunikasi Proses
• Membuat dan menghapus
sambungan komunikasi
• Mengirim dan menerima
pesan
• Mentransfer status 15
informasi
Download