Gambaran Umum Sistem Operasi Sistem Operasi (TKE133117)

advertisement
Gambaran Umum
Sistem Operasi
Sistem Operasi (TKE133117)
Program Studi Teknik Elektro, Unsoed
Iwan Setiawan <stwn at unsoed.ac.id>
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
1/89
Elemen Sistem Komputer
Stallings, 2011.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
2/89
Memindah, menyimpan,
dan memproses informasi.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
3/89
Sistem Operasi (1)
●
●
●
Lapisan perangkat lunak yang mengelola
semua komponen dalam sebuah sistem
komputer. (Tanenbaum, 2009)
Perangkat lunak yang mengendalikan eksekusi
perangkat lunak aplikasi dan bertindak sebagai
antarmuka antara aplikasi dan perangkat keras
komputer. (Stallings, 2012)
Perangkat lunak terbesar dan terumit pada
sebuah sistem komputer.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
4/89
Sistem Operasi (2)
●
Pada Sistem Operasi (SO) seperti Windows
atau Linux dibutuhkan jutaan baris kode untuk
membangunnya.
Tanenbaum, 2009.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
5/89
Tujuan SO
Tujuan Sistem Operasi
●
●
●
Kenyamanan: membuat komputer nyaman untuk
digunakan. Antarmuka. Pemrogram dan pengguna awam.
Efisiensi: membuat penggunaan sumber daya pada
sebuah sistem komputer menjadi lebih efisien.
Mampu untuk dikembangkan lebih lanjut:
memungkinkan pengembangan, pengujian, dan
penambahan fungsi baru secara efektif, tanpa
mengganggu layanan yang sudah tersedia.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
7/89
Fungsi SO
Fungsi SO
●
Antarmuka pengguna dan komputer.
●
Pengelola sumber daya komputer.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
9/89
Fungsi SO: Antarmuka (1)
●
●
●
●
Fungsi SO: sebagai antarmuka bagi pengguna dan
aplikasi dengan perangkat keras komputer. Pengguna:
pemrogram dan pengguna akhir.
Melihat SO “dari atas ke bawah” (top-down).
Disebut pula sebagai fungsi perluasan mesin karena
mesin sebagai perangkat keras diperluas ke atas (di
dalam hirarki lapisan sistem komputer).
Disebut pula sebagai fungsi mesin virtual karena
pengguna seolah-olah menggunakan mesin secara
langsung melalui SO, termasuk pemanfaatan fasilitas dan
layanan sistem komputer secara umum.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
10/89
Fungsi SO: Antarmuka (2)
●
Disebut pula sebagai fungsi abstraksi karena SO
menyembunyikan kompleksitas perangkat keras yang
sebenarnya dan memberikan antarmuka yang nyaman bagi
pemrogram.
●
●
Akses ke sumber daya komputer dapat dilakukan melalui
antarmuka layanan yaitu system call.
Pengguna menggunakan program aplikasi. Bagaimana jika
pemrogram harus melakukan pengembangan program
aplikasi dalam tingkat bahasa mesin?
●
●
Pemrogram harus paham arsitektur dan rincian tingkat
bawah dari sebuah komputer.
Kompleks. Beda perangkat keras, beda cara memprogram.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
11/89
Pembacaan Floppy Disk
●
●
●
●
Terdapat perintah yang digunakan untuk memuat nilai pada
register perangkat atau I/O AR.
Digunakan untuk membaca, menulis, memindahkan lengan
cakram, melakukan format, termasuk inisialisasi, sensing,
mereset, kalibrasi kontroler dan drive-nya.
Masing-masing memiliki parameter tersendiri, misal: blok cakram
yang akan dibaca, jumlah sektor per track, mode perekaman
pada medium fisik, ruang antar sektor, dan bagaimana aksi ketika
ada tanda pada alamat data yang telah dihapus.
Kemudian dalam operasinya terdapat hal-hal seperti status balik
(return status) dan galat, motor drive apakah sudah dihidupkan
atau belum, waktu tunda antara pembacaan dan penulisan, dan
lain-lain.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
12/89
Fungsi SO: Antarmuka (3)
●
●
Utilitas dan pustaka tersedia untuk memudahkan
pemrogram aplikasi. Berisi fungsi-fungsi yang sering
digunakan dalam membuat program serta untuk
mengakses fasilitas dan layanan di dalam sistem
komputer.
Antarmuka yang tersedia di dalam sistem komputer
tersedia sesuai dengan tingkat abstraksinya.
●
Instruction Set Architecture (ISA).
●
Application Binary Interface (ABI).
●
Application Programming Interface (API).
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
13/89
Stallings, 2011.
Infrastruktur Perangkat Keras/Lunak
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
14/89
Instruction Set Architecture (ISA)
●
●
●
●
Kumpulan instruksi bahasa mesin yang merupakan
antarmuka antara perangkat keras dan perangkat lunak.
Terdiri dari set instruksi, register prosesor, ukuran word,
mode pengalamatan memori, format alamat dan data.
Baik aplikasi maupun program sistem seperti utilitas dan
pustaka dapat mengaksesnya secara langsung melalui
user ISA.
SO memiliki tambahan instruksi mesin yang berkaitan
dengan pengelolaan sumber daya sistem yaitu system
ISA.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
15/89
Application Binary Interface (ABI)
●
●
●
Standar portabilitas biner/binary portability standard antar
program.
ABI mendefinisikan antarmuka system call ke SO dan
sumber daya perangkat keras dan layanan yang tersedia
melalui user ISA.
Portabilitas biner program.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
16/89
Application Programming Interface (API)
●
●
Menyediakan akses ke sumber daya perangkat keras dan
layanan kepada program (aplikasi) melalui user ISA
dengan library call bahasa aras tinggi.
Dengan adanya API, sebuah program aplikasi dapat diporting ke sistem lain yang menerapkan API yang sama
dengan hanya mengkompilasi ulang.
●
Setiap system call umumnya dilakukan melalui pustaka.
●
Portabilitas kode sumber program.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
17/89
Linux API dan POSIX API
Shmuel Csaba Otto Traian, CC By-SA, https://en.wikipedia.org/wiki/File:Linux_kernel_API.svg
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
18/89
Beberapa Layanan Sistem Operasi (1)
●
●
●
●
Pengembangan program: menyediakan bermacam fasilitas
dan layanan untuk membantu pemrogram membuat program.
Editor dan debugger tidak termasuk ke dalam SO.
Eksekusi program: membantu mengeksekusi dan
menjadwalkan program yang dijalankan oleh pengguna.
Akses ke perangkat I/O: menyediakan antarmuka yang
sederhana untuk mengakses set instruksi dan sinyal kontrol
dari operasi I/O.
Kontrol akses ke berkas: menyediakan antarmuka ke
perangkat I/O penyimpan dan struktur data yang tersimpan di
sana, termasuk mekanisme perlindungan akses ke berkas,
khususnya pada sistem multipengguna.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
19/89
Beberapa Layanan Sistem Operasi (2)
●
●
●
Akses sistem: mengendalikan akses ke dalam sistem secara
menyeluruh maupun ke beberapa sumber daya spesifik.
Terdapat fungsi perlindungan akses sumber daya dan data dari
pengguna yang tidak berhak serta menyelesaikan konflik akses
sumber daya.
Deteksi dan respon terhadap galat: menyediakan respon ke
perangkat lunak di atasnya terhadap galat internal ataupun
eksternal sistem. Respon dapat berupa mematikan program
yang menimbulkan galat, mencoba ulang operasi, atau sekadar
melaporkan galat ke aplikasi.
Perakunan/accounting: mengumpulkan statistik bermacam
sumber daya dan pemantauan unjuk kerja sistem, termasuk
untuk billing.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
20/89
Fungsi SO: Pengelola Sumber Daya (1)
●
Sebuah komputer terdiri dari banyak sumber daya yang dapat
digunakan untuk memindahkan, menyimpan, dan memproses
data, serta melakukan pengendalian terhadap penggunaannya.
●
SO bertanggung jawab untuk mengelola sumber daya tersebut.
●
Melihat SO “dari bawah ke atas” (bottom-up).
●
Kasus saat sistem komputer menjalankan banyak program dalam
satu waktu. Contoh:
●
●
pencetak. Bagaimana jika terdapat 2 program yang
menggunakan pencetak pada saat yang bersamaan?
komputer dalam jaringan. Bagaimana mengatur masukan dan
keluaran pada 2 komputer yang berbagi perangkat atau berkas
yang sama?
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
21/89
Fungsi SO: Pengelola Sumber Daya (2)
●
Mengelola dan melindungi memori, perangkat I/O, dan
sumber daya lainnya.
●
●
●
●
Mengendalikan alokasi sumber daya tersebut.
Yang dibagi bersama bukan hanya perangkat kerasnya
saja tetapi juga informasi seperti berkas dan basis data.
Berbagi bersama/multiplexing, baik ruang maupun
waktu.
Perlu ada penjadwalan dalam penggunaan sumber
daya.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
22/89
Mekanisme Kendali SO yang Unik
●
●
●
SO merupakan perangkat lunak komputer dan dijalankan di
atas perangkat keras.
SO masih tergantung pada prosesor untuk mendapatkan
kendali terhadap sumber daya komputer.
SO menyediakan instruksi yang akan dijalankan oleh
prosesor, seperti halnya perangkat lunak lain secara umum.
●
●
Yang membedakan hanyalah tujuannya. SO
mengarahkan prosesor dalam penggunaan dengan
sumber daya komputer lainnya dan dalam waktu
eksekusi dirinya sendiri terhadap perangkat lunak lain.
Prosesor harus menjalankan SO dan program lainnya.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
23/89
Fungsi SO: Pengelola Sumber Daya (3)
Stallings, 2012.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
24/89
Mode Kernel dan Pengguna
●
Melindungi perangkat keras.
●
Secara umum, SO berjalan pada mode kernel/supervisor.
●
Pengguna tidak diijinkan mengubah SO sembarangan.
●
●
●
Tetapi Ia boleh mengubah editor, kompilator, atau
perangkat lunak yang berada pada mode pengguna.
Perbedaan mode kernel dan pengguna pada sistem
tertanam/embedded relatif kabur. Tergantung basis
perangkat lunak.
Pada beberapa model seperti mikrokernel, bagian-bagian
tertentu dari SO berada pada mode pengguna.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
25/89
Aplikasi
Aplikasi
Aplikasi
Shared Runtime Libraries
mode pengguna
mode kernel
Antarmuka System Call
memory
manager
task
manager
file
manager
network
manager
Komponen Device Driver
SO/Kernel
Cruse, B.A. 2004. CS 326: Operating Systems.
Perangkat keras
26/89
Graphical user applications
Web browser, office, multimedia...
Command line applications
ls, mkdir, wget, ssh, gcc, busybox, shells (scripts)...
Shared libraries
User
space
libjpeg, libstdc++, libxml...
C library
GNU C library, uClibc...
Operating system kernel
Linux, Hurd...
Kernel
Space
Hardware
Hardware and peripherals
CC By-SA, free-electrons.com
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
27/89
Perkembangan SO
Mengapa SO Perlu Dikembangkan?
●
Peningkatan/upgrade perangkat keras. Tipe perangkat keras yang lebih baru.
●
●
●
●
Di versi awal, Unix dan Macintosh tidak menerapkan mekanisme paging, karena
pada saat itu SO berjalan pada prosesor tanpa perangkat keras paging.
Versi selanjutnya, SO tersebut menambahkan kemampuan untuk memanfaatkan
mekanisme paging.
Penggunaan terminal grafis dan mode-halaman (bukan mode line-at-a-time)
berpengaruh pada desain SO. Dukungan kartu grafis, dan lain-lain.
Layanan baru.
●
Fitur pengukuran dan kendali pada SO. Memudahkan pengguna untuk melihat
dan meningkatkan unjuk kerja/fitur sistem secara fleksibel.
CPUFreq: melihat dan mengeset frekuensi dan penskalaan/scaling tegangan
prosesor secara dinamis. Terdapat beberapa governor/policy/kebijakan.
Algoritma penjadwalan yang dapat dikonfigurasi sesuai kebutuhan.
–
●
●
Perbaikan. Setiap SO memiliki kesalahan program/bug. Proprietary/non-free
versus Free Software/Open Source.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
29/89
Karena perkembangan tersebut muncul
kebutuhan desain SO yang lebih baik.
(modular, dokumentasi, dst.)
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
30/89
Tak lepas dari sejarah arsitektur komputer.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
31/89
Geni, CC By-SA, https://en.wikipedia.org/wiki/File:Babbage_Difference_Engine.jpg
Charles Babbage (1791-1871)
Charles Babbage (1791-1871)
●
●
●
Mesin analitik: mekanik, perlu teknologi yang presisi untuk
membuat roda, gir, dan gigi.
Charles sadar bahwa Ia membutuhkan “perangkat lunak”
untuk mesin analitiknya.
Ada Lovelace berkorespondensi dan mengembangkan
algoritma untuk mesin tersebut.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
33/89
Sejarah Komputer dan SO (1)
●
●
1945-1955: Vacuum Tubes
●
Z3, Collosus, Mark I, ENIAC.
●
Belum ada bahasa pemrograman dan SO.
●
Menggunakan kabel dan plugboard.
●
Komputasi: kalkulasi numerik sederhana.
●
Awal 1950: kartu berlubang/punched card.
1955-1965: Transistor dan Sistem Batch
●
●
Komputer lebih handal. Digunakan oleh perusahaan besar dan universitas.
Mainframe di dalam ruang berpendingin.
Mulai ada perbedaan yang jelas antara perancang, pembangun, operator,
pemrogram, dan personil pemeliharaan.
●
Pemrograman dengan bahasa rakitan/assembly, atau FORTRAN.
●
Menggunakan kartu berlubang yang ditumpuk.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
34/89
Sistem Batch (1)
Tanenbaum, 2009.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
35/89
Sistem Batch (2)
Batch of jobs
3
1
6
4
2
5
Tanenbaum, 2009.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
36/89
Sistem Batch (3)
Tanenbaum, 2009.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
37/89
SO: Fortran Monitor System (FMS),
IBSYS untuk IBM 7094.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
38/89
Stallings, 2012.
Tata Letak Memori untuk Monitor
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
39/89
Job Control Language (JCL).
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
40/89
Kebutuhan Fitur Perangkat Keras
●
●
●
●
Proteksi memori. Program pengguna yang dijalankan tidak
boleh mengubah bagian memori yang menyimpan monitor.
Pewaktu/timer. Digunakan untuk menjaga agar tidak ada
pekerjaan/job yang menguasai penggunaan sistem
komputer. Setiap pekerjaan diberi waktu eksekusi.
Instruksi yang memiliki hak tinggi/privileged instruction.
Instruksi pada aras mesin hanya dapat dijalankan oleh
monitor, khususnya instruksi berkaitan dengan I/O.
Interrupt. Dapat memudahkan SO untuk memberikan dan
mengambil alih kendali dari program pengguna.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
41/89
mode kernel versus mode pengguna
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
42/89
Sejarah Komputer dan SO (2)
●
1965-1980: IC dan Multiprogramming
●
Terdapat 2 lini produk.
Komputer untuk ilmu pengetahuan/rekayasa, berskala besar,
seperti 7094.
– Komputer untuk kegiatan komersial, berfungsi untuk menyimpan
dan mencetak, seperti 1401.
IBM System/360 menggabungkan 2 lini produk tersebut.
Penggunaan Integrated Circuit (IC).
–
●
Saat ini ada zSeries. Biasanya untuk server aplikasi dengan
basis data yang besar.
Multiprogramming: beberapa program di memori dalam satu waktu.
–
●
●
Spooling, Simultaneous Peripheral Operation On Line.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
43/89
Multiprogramming
Tanenbaum, 2009.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
44/89
Multiprogramming?
Stallings, 2011.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
45/89
Multiprogramming/Multitasking (1)
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
46/89
Multiprogramming/Multitasking (1)
Stallings, 2011.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
47/89
Multiprogramming/Multitasking (2)
Stallings, 2011.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
48/89
Multiprogramming/Multitasking (3)
Stallings, 2012.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
49/89
Multiprogramming/Multitasking (4)
Stallings, 2011.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
50/89
Pengelolaan memori.
Algoritma penjadwalan.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
51/89
Sejarah Komputer dan SO (3)
●
1965-1980: IC and Multiprogramming (cont.)
●
Sistem time-sharing muncul karena kebutuhan respon yang
cepat.
Satu sistem dengan banyak pengguna dengan terminal
daring/online.
– Komputer dapat menyediakan layanan yang cepat, dan
interaktif untuk banyak pengguna, tetapi juga dapat
menjalankan batch job di belakang layar.
Compatible Time Sharing System (CTSS) di MIT.
–
●
Kebutuhan proteksi perangkat keras.
Konsep “computer utility”. Muncul MULTiplexed Information and
Computing Service (MULTICS), mulai dikembangkan oleh MIT,
Bell Labs, General Electric.
–
●
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
52/89
Batch Multiprogramming vs. Time Sharing
Stallings, 2011.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
53/89
Generasi Komputer dan SO (3)
●
1965-1980: IC dan Multiprogramming (cont.)
●
MULTICS berpengaruh besar terhadap perkembangan SO.
●
Muncul minikomputer: DEC PDP-1 sampai PDP-11.
●
Ken Thompson menulis versi MULTICS “mini” dengan satu pengguna
pada target PDP-7.
Kemudian berkembang menjadi UNIX.
– Kode sumber tersedia, banyak organisasi mengembangkan versinya
sendiri. Masalah kompatibilitas.
– System V dari AT&T, dan Berkeley Software Distribution (BSD) dari
Universitas California di Berkeley.
– POSIX: standar IEEE untuk antarmuka system call pada sistem
bergaya UNIX.
MINIX muncul tahun 1987. MINIX 3.
–
●
●
Terinpirasi MINIX, Linus Torvalds mengembangkan Linux.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
54/89
Generasi Komputer dan SO (4)
●
1980-sekarang: Personal Computer (PC)
●
Rangkaian Large Scale Integration (LSI).
●
Mikrokomputer, yang kemudian menjadi PC. Lebih murah.
●
1974: Intel 8080, CPU 8 bit, general purpose.
Gary Kildall, sistem operasi berbasis diska, Control Program for
Microcomputers (CP/M).
– Digital Research: mengembangkan dan menjual CP/M.
– Zilog Z80.
IBM PC. Bill Gates dengan lisensi interpreter BASIC.
–
●
Bill Gates membeli Disk Operating System (DOS) dari Seattle Computer
Products seharga 75000 dolar. Paket DOS/BASIC, menjadi MS-DOS.
1983: IBM PC/AT dengan Intel 80286. 80386, 80486. XENIX.
–
●
●
Doug Engelbart di Stanford Research Institute: GUI. XEROX PARC. Steve
Jobs dan Apple. Windows, Windows 95. 98. NT, 2000.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
55/89
Linimasa Pengembangan Windows
Kristiyan Bogdanov, CC BY-SA, https://en.wikipedia.org/wiki/File:Windows_Updated_Family_Tree.png
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
56/89
Eraserhead1, Infinity0, Sav_vas, CC BY-SA, https://en.wikipedia.org/wiki/File:Unix_history-simple.svg
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
57/89
Perkembangan SO
●
Pemrosesan serial.
●
●
●
●
●
Akses serial ke komputer.
Masalah: penjadwalan seperti alokasi waktu, dan waktu setup sistem dan
program.
Sistem batch sederhana.
●
●
Tidak ada SO, interaksi langsung dengan komputer, konsol dengan lampu,
saklar toggle, beberapa perangkat masukan, pencetak.
Komputer masih sangat mahal, memaksimalkan utilitas prosesor,
pengguna tidak lagi mengakses komputer secara langsung, pekerjaan
dimasukkan melalui operator. JCL. Kebutuhan fitur-fitur pada perangkat
keras. Mode kernel dan pengguna.
Sistem multiprogramming batch. Pengelolaan memori, algoritma
penjadwalan.
Sistem time-sharing. Kebutuhan komputasi yang interaktif. Multipengguna.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
58/89
Kemajuan dalam Pengembangan SO
●
Proses.
●
●
Program yang sedang berjalan, atau unit aktivitas yang
berisi sebuah thread eksekusi sekuensial, status
aktivitas, dan set sumber daya sistem yang berkaitan
dengannya.
Pewaktuan dan sinkronisasi: multiprogramming batch,
time sharing, real-time transaction systems.
●
Pengelolaan memori.
●
Perlindungan informasi dan keamanan. CIAA. (Hal. 68-69)
●
Penjadwalan dan pengelolaan sumber daya.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
59/89
Implementasi Proses
Stallings, 2012.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
60/89
Pengelolaan Penyimpan
●
●
●
●
●
Isolasi proses. SO menjaga supaya proses-proses yang berjalan
tidak saling mengganggu masing-masing memori baik data maupun
instruksi.
Alokasi dan pengelolaan otomatis. Program-program yang
berjalan mendapat alokasi pada hirarki memori secara dinamis.
Dukungan pemrograman modular. Pemrogram dapat menentukan
modul-modul program, dan membuat, menghapus, dan mengubah
ukuran modul secara dinamis.
Perlindungan dan kontrol akses. Perlu adanya perlindungan dan
kontrol akses terhadap bagian-bagian memori oleh banyak cara dan
banyak pengguna.
Penyimpanan dalam jangka panjang. Beberapa program
membutuhkan penyimpan informasi dalam waktu yang lama.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
61/89
Pengelolaan Penyimpan
●
●
●
●
●
Solusi: memori virtual dan sistem berkas.
Sistem paging: membuat proses dibagi ke dalam
sejumlah blok berukuran tertentu yang disebut page.
Program mengacu ke sebuah word dengan alamat virtual
yang terdiri dari nomor page dan ofset/nilai awal di dalam
page tersebut.
Setiap page dari sebuah proses dapat menempati lokasi di
mana saja di dalam memori.
Sistem paging menyediakan pemetaan secara dinamis
antara alamat virtual di dalam program dan alamat
nyata/fisik di dalam memori utama.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
62/89
Konsep Memori Virtual
Stallings, 2012.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
63/89
Pengalamatan Memori Virtual
Stallings, 2012.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
64/89
Alokasi Sumber Daya dan Penjadwalan
●
●
●
Keadilan: semua proses diberikan akses yang adil
terhadap sumber daya.
Perbedaan Tingkat Respon: SO dapat memisahkan
secara dinamis antara kelas pekerjaan dan kebutuhan
layanan yang berbeda.
Efisiensi: SO berusaha untuk memaksimalkan lewatan
atau throughput, meminimalkan waktu respon, dan pada
kasus time sharing, dapat mengakomodasi sebanyak
mungkin pengguna.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
65/89
Penjadwalan Proses (Hal. 69-70)
Stallings, 2012.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
66/89
Jenis SO
Jenis SO
●
Mainframe: SO untuk komputer seukuran ruangan yang saat ini
masih digunakan pada pusat data perusahaan besar.
●
Memiliki kapasitas I/O yang besar. 1000 diska, sekian juta GiB.
●
Server.
●
Multiprocessor.
●
Personal computer.
●
Handheld.
●
Embedded.
●
Sensor node.
●
Real-time.
●
Smart card.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
68/89
SO Modern
SO Modern
●
Respon terhadap perkembangan:
●
●
●
●
perangkat keras seperti multiprosesor, multiinti,
perangkat jaringan berkecepatan tinggi, media
penyimpan yang bervariasi dan meningkat ukurannya;
aplikasi-aplikasi baru seperti multimedia, Internet, web,
klien-server, komputasi awan;
ancaman keamanan baru yang semakin canggih,
khususnya ketika sebuah sistem komputer terhubung
ke jaringan atau Internet.
Laju perubahan pada SO tidak hanya berupa modifikasi
dan peningkatan terhadap arsitektur yang sudah ada, tapi
juga teknik/cara baru dalam mengorganisasi SO.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
70/89
Pendekatan dan Desain SO Modern
●
●
Arsitektur mikrokernel.
Multithreading: teknik yang membuat sebuah proses terbagi
menjadi beberapa thread yang dapat berjalan bersamaan.
●
●
Thread: satu unit kerja yang dapat dieksekusi di prosesor.
Memiliki konteks prosesor seperti PC, stack pointer, dst.,
termasuk data yang berkaitan dengan stack.
Proses: kumpulan satu atau lebih thread dan sumber daya
yang berkaitan dengannya.
●
Symmetric multiprocessing (SMP).
●
SO terdistribusi.
●
Desain berorientasi obyek.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
71/89
Stallings, 2012.
Multiprogramming dan Multiprocessing
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
72/89
Struktur SO
Struktur Monolitik (1)
●
Struktur kernel yang umum digunakan.
●
●
●
●
●
Sebuah program utama yang meminta prosedur layanan.
Satu set prosedur layanan yang menjalankan system call
yang diminta.
Satu set prosedur utilitas yang membantu prosedur
layanan.
Fungsi-fungsi SO tersedia dalam kernel termasuk
penjadwalan, sistem berkas, jaringan, device driver,
pengelolaan memori, dan lain-lain.
Umumnya diimplementasikan sebagai proses tunggal dan
fungsi-fungsi tersebut berbagi ruang alamat yang sama.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
74/89
Struktur Monolitik (2)
system call
Tanenbaum, 2009.
Sistem Operasi (TKE113117) - Program Studi Teknik Elektro, Unsoed
Tidak ada struktur, “glondongan”, SO
berisi kumpulan prosedur yang bebas
saling memanggil, tidak ada abstraksi
antar modul-modulnya.
Sistem Operasi (TKE113117) - Program Studi Teknik Elektro, Unsoed
Struktur Monolitik (3)
●
●
●
Pengembangan relatif lebih mudah, karena tidak perlu
mengurusi masalah dan metode komunikasi antar prosedur.
Sulit untuk memahami cara kerja sistem operasinya secara
keseluruhan.
Ketika melakukan perubahan pada sebuah bagian kode
sumber, kita perlu melakukan kompilasi seluruh prosedur
yang ada di dalamnya, dan mengaitkannya dengan linker.
●
●
Pada monolitik modern, terdapat loadable
extension/modules yang dapat dikompilasi dan dimuat
sesuai kebutuhan.
Contoh: penggerak/driver, sistem berkas.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
77/89
Struktur Mikrokernel (1)
Tanenbaum, 2009.
Sistem Operasi (TKE113117) - Program Studi Teknik Elektro, Unsoed
Sedapat mungkin implementasi di mode
pengguna, hanya tersisa mikrokernel
yang berisi fungsi-fungsi utama dan
menangani komunikasi antar modul
atau server.
Sistem Operasi (TKE113117) - Program Studi Teknik Elektro, Unsoed
Struktur Mikrokernel (3)
●
Lebih handal dan aman.
●
●
●
●
Terdiri dari modul-modul yang terdefinisikan dengan baik.
Hanya mikrokernel yang berjalan pada mode kernel/supervisor.
Mikrokernel berisi fungsi-fungsi yang berkaitan dengan ruang
alamat/pengelolaan memori, komunikasi antar proses (IPC),
dan penjadwalan dasar.
Jika sebuah modul/server mempunyai “kutu”, modul tersebut
tidak mematikan seluruh sistem.
●
Modul yang bermasalah dapat dimulai ulang/restart.
●
Kenapa ada tombol reset di komputer kita?
Lebih susah untuk dikembangkan daripada monolitik karena
melibatkan komunikasi antar prosedur dalam modul-modulnya.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
80/89
Struktur Mikrokernel (4)
●
●
●
Modul/server dapat dikustomisasi sesuai kebutuhan
aplikasi.
Pendekatan mikrokernel relatif lebih fleksibel dan cocok
untuk lingkungan terdistribusi.
Mikrokernel berinteraksi dengan cara yang sama terhadap
proses modul/server lokal dan remote.
Tanenbaum, 2009.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
81/89
Struktur Lapis
Tanenbaum, 2009.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
82/89
Struktur Klien-Server
Tanenbaum, 2009.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
83/89
Struktur Mesin Virtual
Tanenbaum, 2009.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
84/89
System Call
System Call read(fd,buffer,nbytes)
Tanenbaum, 2009.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
86/89
Contoh System Call (1)
Tanenbaum, 2009.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
87/89
Contoh System Call (2)
Tanenbaum, 2009.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
88/89
Daftar Bacaan
●
●
●
Stallings, W. 2012. Operating Systems: Internals and
Design Principles, Seventh Edition, Prentice Hall.
Stallings, W. 2011. Operating Systems: Internals and
Design Principles, Seventh Edition, salindia presentasi.
Tanenbaum, A. 2009. Modern Operating Systems, Third
Edition, Prentice Hall.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed
89/89
Download