Upload
vuongliem
View
216
Download
0
Embed Size (px)
Citation preview
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 1/89
Gambaran UmumSistem Operasi
Sistem Operasi (TKE133117)Program Studi Teknik Elektro, Unsoed
Iwan Setiawan <stwn at unsoed.ac.id>
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 2/89
Elemen Sistem Komputer
Stallings, 2011.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 3/89
Memindah, menyimpan,dan memproses informasi.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 4/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 5/89
Sistem Operasi (2)
● Pada Sistem Operasi (SO) seperti Windows atau Linux dibutuhkan jutaan baris kode untuk membangunnya.
Tanenbaum, 2009.
Tujuan SO
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 7/89
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.
Fungsi SO
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 9/89
Fungsi SO
● Antarmuka pengguna dan komputer.
● Pengelola sumber daya komputer.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 10/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 11/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 12/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 13/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 14/89
Infrastruktur Perangkat Keras/Lunak
Sta
lling
s, 2
011.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 15/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 16/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 17/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 di-porting 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 18/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 19/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 20/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 21/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 22/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 23/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 24/89
Fungsi SO: Pengelola Sumber Daya (3)
Stallings, 2012.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 25/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.
26/89
Perangkat keras
Aplikasi AplikasiAplikasi
Shared Runtime Librariesmode pengguna
mode kernel
Antarmuka System Call
Komponen Device Driver
memorymanager
taskmanager
filemanager
networkmanager
SO/KernelCruse, B.A. 2004. CS 326: Operating Systems.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 27/89
Hardware and peripherals
Operating system kernel
C library
Shared libraries
Command line applications
Graphical user applications
Linux, Hurd...
GNU C library, uClibc...
libjpeg, libstdc++, libxml...
ls, mkdir, wget, ssh, gcc, busybox, shells (scripts)...
Web browser, office, multimedia...
User space
Kernel Space
Hardware
CC By-SA, free-electrons.com
Perkembangan SO
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 29/89
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 30/89
Karena perkembangan tersebut muncul kebutuhan desain SO yang lebih baik.
(modular, dokumentasi, dst.)
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 31/89
Tak lepas dari sejarah arsitektur komputer.
Geni, CC By-SA, https://en.wikipedia.org/wiki/File:Babbage_Difference_Engine.jpg
Charles Babbage (1791-1871)
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 33/89
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 34/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 35/89
Sistem Batch (1)
Tanenbaum, 2009.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 36/89
Sistem Batch (2)
Batch of jobs
1 2
3 4
5
6
Tanenbaum, 2009.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 37/89
Sistem Batch (3)
Tanenbaum, 2009.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 38/89
SO: Fortran Monitor System (FMS),IBSYS untuk IBM 7094.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 39/89
Tata Letak Memori untuk Monitor
Sta
lling
s, 2
012.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 40/89
Job Control Language (JCL).
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 41/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 42/89
mode kernel versus mode pengguna
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 43/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 44/89
Multiprogramming
Tanenbaum, 2009.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 45/89
Multiprogramming?
Stallings, 2011.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 46/89
Multiprogramming/Multitasking (1)
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 47/89
Multiprogramming/Multitasking (1)
Stallings, 2011.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 48/89
Multiprogramming/Multitasking (2)
Stallings, 2011.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 49/89
Multiprogramming/Multitasking (3)
Stallings, 2012.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 50/89
Multiprogramming/Multitasking (4)
Stallings, 2011.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 51/89
Pengelolaan memori.Algoritma penjadwalan.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 52/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 53/89
Batch Multiprogramming vs. Time Sharing
Stallings, 2011.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 54/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 55/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 56/89
Kristiyan Bogdanov, CC BY-SA, https://en.wikipedia.org/wiki/File:Windows_Updated_Family_Tree.png
Linimasa Pengembangan Windows
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 57/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 58/89
Perkembangan SO
● Pemrosesan serial.
● Tidak ada SO, interaksi langsung dengan komputer, konsol dengan lampu, saklar toggle, beberapa perangkat masukan, pencetak.
● Akses serial ke komputer.● Masalah: penjadwalan seperti alokasi waktu, dan waktu setup sistem dan
program.● Sistem batch sederhana.
● 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 59/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 60/89
Implementasi Proses
Stallings, 2012.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 61/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 62/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 63/89
Konsep Memori Virtual
Stallings, 2012.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 64/89
Pengalamatan Memori Virtual
Stallings, 2012.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 65/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 66/89
Penjadwalan Proses (Hal. 69-70)
Stallings, 2012.
Jenis SO
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 68/89
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.
SO Modern
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 70/89
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 71/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 72/89
Multiprogramming dan Multiprocessing
Sta
llin
gs, 2
012
.
Struktur SO
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 74/89
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 (TKE113117) - Program Studi Teknik Elektro, Unsoed
system call
Struktur Monolitik (2)
Tanenbaum, 2009.
Sistem Operasi (TKE113117) - Program Studi Teknik Elektro, Unsoed
Tidak ada struktur, “glondongan”, SOberisi kumpulan prosedur yang bebassaling memanggil, tidak ada abstraksiantar modul-modulnya.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 77/89
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 (TKE113117) - Program Studi Teknik Elektro, Unsoed
Struktur Mikrokernel (1)
Tanenbaum, 2009.
Sistem Operasi (TKE113117) - Program Studi Teknik Elektro, Unsoed
Sedapat mungkin implementasi di modepengguna, hanya tersisa mikrokernelyang berisi fungsi-fungsi utama danmenangani komunikasi antar modulatau server.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 80/89
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 81/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 82/89
Struktur Lapis
Tanenbaum, 2009.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 83/89
Struktur Klien-Server
Tanenbaum, 2009.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 84/89
Struktur Mesin Virtual
Tanenbaum, 2009.
System Call
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 86/89
System Call read(fd,buffer,nbytes)
Tanenbaum, 2009.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 87/89
Contoh System Call (1)
Tanenbaum, 2009.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 88/89
Contoh System Call (2)
Tanenbaum, 2009.
Sistem Operasi (TKE133117) - Program Studi Teknik Elektro, Unsoed 89/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.