SISTIM OPERASI (Operating System) IKI-20230 What is an Operating System?

SISTIM OPERASI
(Operating System)
IKI-20230
Pengantar
Johny Moningka
([email protected])
Fakultas Ilmu Komputer
Universitas Indonesia
Semester 2000/2001
What is an Operating System?
n
Perangkat lunak yang bertindak sebagai
perantara antara pemakai komputer dan
perangkat keras
n
n
Pemakai komputer: “common user”, programmer,
aplikasi (program)
Tujuan:
n
n
n
Menjalankan program-program dari user dan
membantu user dalam menggunakan komputer
Menyediakan sarana sehingga pemakaian komputer
menjadi mudah (convenient)
Memanfaatkan perangkat keras komputer yang
terbatas secara efisien (resource manager)
JM-2000/v1.1/2
1
OS: abstraction
Membungkus hardware: “makes pretty”,
makes portable, makes infinite,
makes secure
C compiler
E-commerce
Word-Processor
OS
Hardware
JM-2000/v1.1/3
Computer System Components
1. Hardware – menyediakan “basic computing
resources” (CPU, memory, I/O devices).
2. Operating system –
mengendalikan/mengkoordinasi pemakaian
hardware oleh berbagai aplikasi/program dari
users
3. Applications programs – menggunakan system
resources untuk menyelesaikan masalah
komputasi dari users (compilers, database
systems, video games, business programs).
4. Users (people, machines, other computers).
JM-2000/v1.1/4
2
Abstract View of System Components
JM-2000/v1.1/5
Operating System Definitions
n
Resource allocator
n
n
n
Control program
n
n
Mengatur resources
Mengalokasikan dan mengontrol pemakaian
resources dari berbagai program/aplikasi
Mengendalikan eksekusi user program dan
pemakaian system resources (contoh: operasi pada
I/O devices) => handal, reliable, terlindung
Kernel
n
n
Sistim program yang berjalan (“ada”) terus menerus
saat komputer aktif
Kontras dengan aplikasi yang di “load”, eksekusi dan
terminasi
JM-2000/v1.1/6
3
OS Evolution
n
OS sederhana:
n
Program tunggal, satu user, satu mesin komputer
(CPU) : komputer generasi pertama, awal mesin PCs,
controller: lift, Playstation etc.
No problems, no bad people, no bad programs =>
interaksi sederhana
Problem: terbatas pemakaiannya;
n
“Searching for “an ultimate machine … (as a human)””
n
n
JM-2000/v1.1/7
Simple Batch Systems
n
Memakai seorang operator
n
n
n
n
Menambahkan card reader
Mengurangi waktu setup: batch jobs yang mirip/sama
Automatic job sequencing – secara otomatis kontrol akan
di transfer dari satu job ke job yang lain.
n
n
Bentuk OS primitif
Resident monitor
n
Fungsi monitor: awal (initial) melakukan kontrol
Transfer control ke job (pertama)
n
Setelah job selesai, control kembali ke monitor
n
n
User ≠ operator
Control cards: mengatur batch jobs
JM-2000/v1.1/8
4
Multiprogrammed Batch Systems
Beberapa jobs disimpan di memori p a d a s a a t b e r s a m a a n , d a n C P U
melakukan multiplexing ke jobs-jobs tersebut
JM-2000/v1.1/9
OS Features: multiprog.
n
n
n
n
I/O rutin dikendalikan dan diatur oleh sistim
Memory management – sistim harus
mengalokasikan memori untuk beberapa jobs
sekaligus
CPU scheduling – sistim harus memilih jobs
mana yang telah siap akan dijalankan
Alokasi dari I/O devices untuk jobs dan proteksi
bagi I/O devices tersebut
Sistim menjadi => complex
n
Bagaimana kalau program “loops terus menerus”,
going mad etc. => proteksi
JM-2000/v1.1/10
5
Time sharing systems
n
n
n
CPU melakukan multiplex pada beberapa jobs
yang berada di memory (dan disk)
CPU hanya dialokasikan kepada jobs yang telah
siap dan berada di memori
Besar memori masih sangat terbatas:
n
n
A job swapped in and out of memory to the disk.
Komunikasi on-line (interaktif) antara user dan
sistim: jika OS telah selesai mengeksekusi satu
perintah, menunggu perintah berikut bukan dari
“card reader”, tapi dari terminal user
n
On-line system must be available for users to access
data and code.
JM-2000/v1.1/11
Personal-Computer Systems
n
n
n
n
Personal computers – sistim komputer yang
dirancang khusus untuk single user
I/O devices – keyboards, mice, display screens,
small printers.
User convenience and responsiveness.
Fungsi dasar mirip (adopsi) dari OS pada sistim
yang besar
n
n
Sederhana: tidak terlalu fokus pada utilisasi CPU dan
proteksi
Contoh: MS-DOS untuk PC banyak mengambil
features dari UNIX, minus proteksi dan CPU scheduler
yang rumit.
JM-2000/v1.1/12
6
Parallel Systems
n
n
Sistim multiprosesor: lebih dari satu CPU yang terhubung
secara dekat satu sama lain
Symmetric multiprocessing (SMP)
n
n
n
n
Setiap prosesor menjalankan “identical copy” dari OS
Banyak proses dapat berjalan serentak murni dengan
menggunakan resources pada masing-masing CPU
Most modern operating systems support SMP
Asymmetric multiprocessing
n
Setiap prosesor telah ditentukan untuk menjalankan task tertentu:
n
Master processor mengontrol, menjadwalkan dan
mengalokasikan task ke slave processors
More common in extremely large systems (main-frame)
n
JM-2000/v1.1/13
Real-Time Systems
n
n
n
Digunakan sebagai control device untuk aplikasi khusus
(misalkan medical imaging systems, industrial control
process dll).
Kemampuan untuk beroperasi, response dalam batasan
“waktu tertentu” => OS harus sederhana, cepat, dan
dapat memenuhi jadwal task (scheduling dll).
Hard real-time system.
n
n
n
Secondary storage sangat terbatas atau tidak ada (menggunakan
ROM, flash RAM).
Task dapat diprediksi/ditentukan: waktu selesai dan response.
Soft real-time system
n
n
Lebih leluasa batasan waktu dari “hard real-time system”.
Lebih umum digunakan di industri, aplikasi multimedia (video
streaming, virtual reality).
JM-2000/v1.1/14
7
Distributed Systems
n
n
n
Distribusikan kemampuan komputasi dan
“resources” ke berbagai komputer di jaringan.
Loosely coupled system – each processor has its
own local memory; processors communicate with
one another through various communications
lines, such as high-speed buses or telephone
lines.
Advantages of distributed systems.
n
n
n
n
Resources Sharing
Computation speed up – load sharing
Reliability
Communications
JM-2000/v1.1/15
Migrasi OS vs Sistim Komputer
JM-2000/v1.1/16
8
OS (now!)
n
SOFTRES (survey 1998): requirements for OS
n
n
n
n
Availability tinggi: diandalkan untuk operasi / bisnis
yang kritis (uptime terus menerus)
Skalabilitas: mendukung multiprosesor (prosesing
power dapat ditingkatkan), cluster (distributed
processing, server dapat ditambah)
Manajemen: bagaimana mengurangi biaya (peope are
expensive !) pemeliharaan (cost of ownership),
misalkan centralized account, security policy, flexible
administration point etc.
Internet networks support & application
JM-2000/v1.1/17
Why we study …
n
An experience and exercise,
n
n
n
n
Memberikan “lahan” untuk implementasi “core CS”
Landasan, dukungan untuk system programming, aplikasi
dan software package
OS is a complex system, magic to other people
n Most interesting things are complex: “multi”
disc game, puzzle, girl/”doi”, Gus Dur, Pansus,
etc.
n
It’s impact on every aspect of how people using computer,
services and now: doing business and personal/life-style
JM-2000/v1.1/18
9
Course Content
n
Overview
n
n
n
n
n
Proses & Thread
CPU Scheduling
Sinkronisasi & Concurrent
System
Deadlock
Protection & Security
n
Manajemen Proses
n
n
n
Struktur OS
n
n
Protection
Security
Case:
n
n
Linux/UNIX
Windows NT
Manajemen Storage
n
n
n
n
Memory Management
Virtual Memory
File System
Secondary Storage
JM-2000/v1.1/19
Administra-trivia
n
n
2 test tertulis (mid & final)
Assigment:
n
n
Distributed workload
n
n
n
4 tugas program labs (kelompok)
Test/Exams: 65 % (UTS: 30% ; UAS: 35%)
Labs Assigments: 35 %
Text books:
n
Operating System Concepts: Silberschatz/Galvin – Addison
Wesley, 5th Edition
n
MINIX Operating System, Design & Implementation, 2nd Edition A. S Tanenbaum dan AS Woodhull, Pretince Hall.
JM-2000/v1.1/20
10