Anda di halaman 1dari 48

STRUKTUR

SISTEM OPERASI
Pertemuan 5
Struktur Sistem Operasi
 Struktur Sistem Operasi
• Metode untuk mengorganisasi dan membangun
sistem operasi

 Contoh: MS-DOS
 Saat dirancang kemampuan PC sangat minimal
• Prosesor: 8086 (10 MHz), Max. memory: 640
Kb
 MS-DOS – dibuat dengan menyediakan
“fungsional” dari OS sebanyak mungkin pada
resources yang sangat terbatas (memori)
Struktur Sistem Operasi
 Tidak dalam bentuk modul => monolithic (satu

kesatuan):
o MS-DOS menjadi satu kesatuan besar tanpa

batasan jelas – fungsional dan interface


o Semua komponen sistem operasi tergabung

atau bercampur menjadi satu (aplikasi dan


sistem operasi tidak ada pemisahan yang jelas)
Struktur Sistem Operasi
o Semua program bagian (fungsi, prosedure

atau sub rutin) dapat mengakses program-


program lainnya
o Terdapat struktur yang sangat sederhana

dan “proteksi” yang longgar (single user


system)
Model Layer MS-DOS
Struktur Sistem Operasi

Sistem Monolithic

Sistem Berlapis

Sistem Mesin Virtual

Sistem Client-Server

Sistem Berorientasi Obyek


Sistem Monolithic
 Sistem yang paling umum dalam sistem operasi

 Disebut juga dengan “The Big Mess”

 Ditulis sebagai sekumpulan prosedur, yang mana

dapat dipanggil oleh yang lain pada saat prosedur itu


diperlukan
 Terdapat struktur yang kecil, yaitu Systemcalls;

permintaannya dipenuhi dengan meletakkan


parameter – parameter yang tersedia (seperti register)
Sistem Monolithic
 Tidak terstruktur secara jelas

 Kumpulan program yang menggunakan langsung

resources hardware
 Terdapat program-program yang mewakili fungsi OS:

processor management dan memory management


 OS awal: satu kesatuan proses, dimana kontrol

berpindah dari program-program tersebut


(“procedure calls”)
Sistem Monolithic
 Program user (proses): menjadi satu bagian

rutin dari (loop) program utama jika tidak


melakukan fungsi OS
 User program dijalankan oleh “call” dari OS =>

eksekusi pada user mode akan berhenti:


 timeout (timer interrupt)

 kembali ke OS (service)
 Interrupt (hardware)
Sistem Monolithic
 Struktur terbatas pada dua layer (ada yg menyebut tiga)

 Systems programs: bagian OS yang dibangun di atas

kernel – extended machine


 Kernel

 Operasi vital yang penting dan melindungi

resources hardware
 Semua service untuk user proses melalui

mekanisme system call


Sistem Monolithic
 Tugas utama kernel menyediakan fasilitas

untuk: multiprogramming/multitasking –
dimana proses-proses dapat berjalan serentak
(concurrent) dan terpisah
 UNIX (1978)

• Menggunakan pendekatan rancangan


sederhana dengan dukungan H/W yang
terbatas (PDP-11)
Sistem Monolithic
 Struktur dasar sistem operasi:

1. Program utama (membuat permintaan ke service


procedure)

2. Sekumpulan service procedure (membawa system


call)

3. Sekumpulan utilitas procedure (membantu service
procedure)
Sistem Monolithic
Model Sistem UNIX
Sistem Monolithic
 Kelebihan:
 Layanan terhadap job-job yang ada bisa dilakukan dengan cepat
karena berada pada satu ruang alamat memory.

 Kelemahan:
1. Disappearance dan pengujian dari eror sangatlah sulit, karena
sistem tidak dapat dipisahkan dan dilokalisasikan.
2. Sistem sulit untuk menyediakan fasilitas pengamanan (security).
3. Merupakan pemborosan yang sangat besar apabila setiap
komputer harus menjalankan kernel monolitik, karena sistem
tersebut sebenarnya tidak memerlukan seluruh layanan yang
disediakan oleh kernel. (Tidak Fleksibel)
4. Apabila ada kesalahan pemrograman pada suatu bagian
dari kernel, maka menyebabkan matinya seluruh sistem.
Sistem Berlapis
 Dibentuk secara hirarki berdasar lapisan-lapisan

(lebih dari 3 lapis)


 Lapisan bawah memberi layanan ke lapisan lebih

atas
 Setiap layer atas melingkupi layer di bawahnya

(kendali, akses)
 Lapisan yang paling bawah (0) => perangkat keras

 Lapisan yang paling tinggi (N) => user-interface


Sistem Berlapis
 Sebuah lapisan adalah implementasi dari obyek abstrak

yang merupakan enkapsulasi dari data dan operasi yang


bisa memanipulasi data tersebut.
 Struktur berlapis dimaksudkan untuk mengurangi

kompleksitas rancangan dan implementasi sistem


operasi.
 Tiap lapisan mempunyai fungsional dan antarmuka

masukan-keluaran (interface) antara dua lapisan yang


bersebelahan.
Sistem Berlapis
 Menurut Tanenbaum dan Woodhull, sistem terlapis terdiri dari enam
lapisan, yaitu:
 Lapis 5 – The operator
Berfungsi untuk pemakai operator.
 Lapis 4 – User programs
Berfungsi untuk aplikasi program pemakai.
 Lapis 3 – I/O management
Berfungsi untuk menyederhanakan akses I/O pada level atas.
 Lapis 2 -Operator-operator communication
Berfungsi untuk mengatur komunikasi antar proses.
 Lapis 1 -Memory and drum management
Berfungsi untuk mengatur alokasi ruang memori atau drum
magnetic.
 Lapis 0 -Processor allocation and multiprogramming
Berfungsi untuk mengatur alokasi pemroses dan switching, multi
programming dan pengaturan prosessor.
Struktur Berlapis OS/2
Contoh: OS/2
Struktur Berlapis THE
 Contoh : Sistem Operasi THE (Technique

Hoogesschool Endiche), Djikstra, 1968


Lapisan Fungsi

5 The Operator
4 User Programs
3 I/O Management
2 Operator Proccess Communication
1 Memory & Drum Management
0 Processor Allocation & Multiprogramming
Sistem Berlapis
 Kelebihan:
• Memiliki rancangan modular, yaitu sistem dibagi
menjadi beberapa modul & tiap modul dirancang
secara independen.
• Pendekatan berlapis menyederhanakan rancangan,
spesifikasi dan implementasi sistem operasi.
 Kekurangan:
• Fungsi-fungsi sistem operasi diberikan ke tiap
lapisan secara hati-hati.
Sistem Mesin Virtual
 Sebuah mesin virtual menggunakan (misalkan
terdapat system program) => control program yang
mengatur pemakaian resources hardware.
 Control program = trap system call + hardware
access.
 Control program:

 Memberikan fasilitas ke proses user

 Mendapatkan jatah CPU dan memori.

 Menyediakan interface “identik” dengan apa yang


disediakan oleh hardware => sharing devices
untuk berbagai proses.
Sistem Mesin Virtual
 Virtual machine => control program yang minimal

 VM memberikan ilusi multitasking: seolah-olah


terdapat prosesor dan memori ekslusif yang
digunakan
 VM memilah fungsi multitasking dan
implementasi extended machine (tergantung
user proses) => flexible dan lebih mudah untuk
maintained (proteksi).
Model Sistem VM
Sistem Mesin Virtual
 Kelebihan:
1. Menyediakan proteksi yang lengkap untuk sumber daya sistem
(dengan  meniadakan pembagian sumber daya secara
langsung, sehingga  tidak ada masalah proteksi)

2. Dapat mendefinisikan suatu jaringan dari virtual machine


(jaringan dimodelkan setelah komunikasi fisik jaringan
diimplementasikan pada perangkat lunak.)
 Kekurangan:

1. Sistem penyimpanan harus besar (ukuran daya


penyimpanannya identik dengan ukuran sebenarnya)

2. Pengimplementasian sulit (harus menyediakan duplikasi dari


mesin utama)
Virtual Machine
Jika setiap user diberikan satu virtual machine:
user bebas untuk menjalankan OS (kernel) yang diinginkan
pada VM tersebut.

 Potensi lebih dari satu OS dalam satu komputer.


 Contoh:
IBM VM370: menyediakan VM untuk berbagai OS: CMS
(interaktif), MVS, CICS, dll.

 Problem:
• Sharing disk => setiap OS mempunyai file system yang
mungkin berbeda.
• IBM: virtual disk (minidisk) yang dialokasikan untuk user
melalui VM.
Java Virtual Machine
 Program Java dicompile pada platform-neutral
bytecodes yang dieksekusi oleh Java Virtual
Machine (JVM)
 JVM terdiri dari :
- class loader (me-”load” class file)
- class verifier (verifikasi bytecode)
- runtime interpreter
 Kompiler Just-In-Time (JIT) meningkatkan kinerja
Java Virtual Machine
Java Virtual Machine
Sistem Client-Server
 Sistem operasi merupakan kumpulan proses yang
dikategorikan sebagai server dan client.
 Server adalah proses yang menyediakan layanan,
sedangkan client adalah proses yang memerlukan /
meminta layanan.
 Dengan arsitektur client / server, kode dapat diangkat ke
level tinggi sehingga kernel dapat dibuat sekecil
mungkin.
 Semua tugas diangkat menjadi proses level pemakai.
 Kernel hanya mengatur komunikasi antara client dan
server.
 Kernel berukuran kecil ini popular dengan sebutan
mikrokernel.
Sistem Client-Server
 Implementasi fungsi OS (extended machine) dapat
menjadi bagian dari user proses (client)
 Request service ke server proses (kernel).
 Kernel: terdiri dari server (file, memory, I/O dll) yang
melayani request dari client proses.
 Akses ke hardware harus melalui server proses dari kernel
yang mengontrol hardware tersebut.
 Proses : partisi dan struktur yang sangat jelas
(interface dan fungsional).
 Konsekuensi : lambat (komunikasi antar client dan
server), tidak efisien dalam menggunakan resources.
Model Client Server
Sistem Client-Server
 Keunggulan:
 Pengembangan dapat dilakukan secara modular
 Kesalahan (bugs) di satu sistem tidak merusak
subsistem lain
 Mudah diadaptasi untuk sistem tersebar (terdistribusi)

 Kelemahan:
 Layanan dilakukan secara lambat karena harus melalui
pertukaran pesan
 Pertukaran pesan dapat menjadi bottleneck
 Tidak semua tugas dapat dijalankan di tingkat pemakai
(sebagai proses pemakai)
Sistem Berorientasi Objek
 Layanan diimplementasikan sebagai obyek-
obyek.
 Model ini sangat terstruktur dan memisahkan
antara layanan dan implementasinya.
 Sistem operasi ini distrukturkan berdasarkan
paradigma obyek, sehingga layanan
diimplementasikan sebagai kumpulan obyek
 Obyek mengapsulkan struktur data dan
sekumpulan operasi pada struktur data tersebut
Sistem Berorientasi Objek

 Contoh :

 Sistem Operasi X-Kernel

 Sistem Operasi MS Windows NT sudah


mengadopsi beberapa teknologi berorientasi
obyek, tetapi belum secara keseluruhan.
 Eden

 Amoeba
Sistem Berorientasi Objek
Sistem Berorientasi Objek
 Kelebihan:

 Mudah dalam pengembangan / pembuatan

 Mudah dalam pemeliharaan

 Kekurangan:
 Pengetahuan terhadap keseluruhan fungsi
sistem kurang menyeluruh
Perancangan Sistem
Tujuan Perancangan Sistem :
 Tujuan User

Sistem operasi mudah digunakan, mudah


dipelajari, handal, aman dan cepat
 Tujuan Sistem

Sistem operasi mudah didisain,


diimplementasikan dan dikelola, memiliki
fleksibilitas, handal, bebas kesalahan dan efisien
Implementasi Sistem
 Secara tradisional ditulis dalam bahasa assembly, saat ini
sistem operasi dapat ditulis dalam bahasa tingkat tinggi.

 Code written in a high-level language:

 Dapat ditulis secara cepat.

 Lebih compact.

 Lebih mudah dipahami dan didebug.

 Sistem operasi jauh lebih mudah untuk di port (dipindahkan


ke hardware lain) jika ditulis dalam bahasa tingkat tinggi)
System Generation
 Sistem operasi didisain untuk dijalankan pada berbagai

kelas mesin.

 Sistem harus dikonfirgurasi untuk setiap komputer secara

spesifik

 Program SYSGEN memberikan informasi mengenai

konfigurasi khusus dari sistem perangkat keras


System Generation

 SYSGEN:
Proses memodifikasi sistem peng-
operasian yang berasal dari pembuat agar
sesuai dengan sistem yang dikehendaki oleh
pemakai.
System Generation
 Booting –awal komputer diaktifkan dengan

melakukan loading kernel.

 Bootstrap program – kode yang disimpan di ROM

yang dapat ditempatkan pada kernel, di load ke


memori dan memulai eksekusi.
Latihan
1. Jelaskan perbedaan “system program” dengan
“system call” !

2. Jelaskan struktur sistem operasi monolitik !


3. Apa yang dimaksud dengan “sysgen” ?

4. Jelaskan aktifitas yang berkaitan dengan manajemen


proses pada sistem operasi !

5. Gambarkan struktur sistem operasi menggunakan


virtual machine, dan jelaskan !
Tugas Individu
 Membuat catatan (atau rangkuman) di buku

catatan masing-masing sesuai dengan materi


(PowerPoint via email) yang telah dibagikan
 Diperiksa saat menjelang ujian UTS & UAS

(seminggu sebelumnya)
 Ada poin penilaian
Tugas Kelompok
 Dikumpulkan dalam bentuk:

1. Softcopy (tulisan ilmiah) + PowerPoint >>>> ke email


2. Hardcopy >>>> di kelas
 Ekstensi:

- pertemuan ke 7 (no. 1)
- saat presentasi kelompok (no. 2)
 Reguler (pagi & sore):

- pertemuan ke 8 setelah UTS (no. 1)

- saat presentasi kelompok (no. 2)


Tugas Kelompok
1. DOS & Windows 3.11

2. Windows 95/98

3. Windows XP

4. Windows 7

5. LINUX

6. Windows Server / Windows NT

7. OS Android

8. OS Blackberry
Materi Tulisan dan Presentasi
Bab 1 Pendahuluan
1. Sejarah/Latar Belakang
2. Perkembangan/Evolusi
Bab 2 Pembahasan
1. Struktur Sistem
2. Arsitektur Sistem
3. Keunggulan
4. Kelemahan
5. Implementasi
Bab 3 Kesimpulan
Terima kasih

Anda mungkin juga menyukai