Overview Sistem Operasi Pertemuan ke1 Agustus 2012 Sistem

  • Slides: 38
Download presentation
Overview Sistem Operasi (Pertemuan ke-1) Agustus 2012

Overview Sistem Operasi (Pertemuan ke-1) Agustus 2012

Sistem Operasi? Ø Adalah program yang mengatur eksekusi program aplikasi Ø Merupakan penghubung (interface)

Sistem Operasi? Ø Adalah program yang mengatur eksekusi program aplikasi Ø Merupakan penghubung (interface) antara aplikasi dengan perangkat keras Ø Merupakan jembatan penghubung antara user dengan perangkat keras komputer Sistem Operasi/20100820 #1

Kemampuan apa yang harus dimiliki oleh Sistem Operasi ? Ø Dapat memberi kenyamanan bagi

Kemampuan apa yang harus dimiliki oleh Sistem Operasi ? Ø Dapat memberi kenyamanan bagi user dalam memanfaatkan resource komputer v Sebagai interface user dengan komputer Ø Dapat mengatur resource komputer (resource manager) v Resource komputer dapat dimanfaatkan secara lebih efisien Ø Dapat berkembang (berevolusi) v Dapat dikembangkan atau ditambahkan fungsi atau layanan baru tanpa mengganggu layanan yang telah ada Sistem Operasi/20100820 #2

Layer/Tingkatan Sistem Komputer (1) Sistem Operasi/20100820 #3

Layer/Tingkatan Sistem Komputer (1) Sistem Operasi/20100820 #3

Layer/Tingkatan Sistem Komputer (2) Banking system Airline reservation Web browser Compilers Editors Command interpreter

Layer/Tingkatan Sistem Komputer (2) Banking system Airline reservation Web browser Compilers Editors Command interpreter Application programs System programs Operating system Machine language Microprogramming Hardware Physical devices Sistem Operasi/20100820 #4

Sistem Operasi sebagai Interface antara User dan Komputer (1) Ø Layanan yang dapat disediakan

Sistem Operasi sebagai Interface antara User dan Komputer (1) Ø Layanan yang dapat disediakan Sistem Operasi: v Mendukung pengembangan program aplikasi § OS menyediakan fasilitas dan layanan (program utility) untuk pengembangan program aplikasi, misal: editor dan debugger v Meng-eksekusi program § Load data dan instruksi ke memori § Inisialisasi I/O device dan resource lain § Atur penjadualan pengeksekusian program v Menyediakan akses ke I/O device § OS menyediakan interface yang seragam untuk berbagai jenis I/O device yang berbeda dengan cara menyembunyikan detail I/O tsb Programmer cukup menggunakan perintah read dan write sederhana Sistem Operasi/20100820 #5

Sistem Operasi sebagai Interface antara User dan Komputer (2) Ø Layanan yang dapat disediakan

Sistem Operasi sebagai Interface antara User dan Komputer (2) Ø Layanan yang dapat disediakan Sistem Operasi: (lanjutan) v Mengontrol pengaksesan file § OS menyediakan fasilitas untuk mengatur hak akses terhadap file (read, write, hide) v Mengontrol pengaksesan sistem § OS dapat memproteksi resource dan data dari user yang tidak berhak OS mencegah terjadinya rebutan resource § v Menyediakan data-data accounting (log) § OS memonitor parameter performansi (misal response time) § untuk perbaikan selanjutnya OS mengumpulkan statistik penggunaan resource untuk keperluan penagihan (pada sistem multi user) Sistem Operasi/20100820 #6

Sistem Operasi sebagai Interface antara User dan Komputer (3) Ø Layanan yang dapat disediakan

Sistem Operasi sebagai Interface antara User dan Komputer (3) Ø Layanan yang dapat disediakan Sistem Operasi: (lanjutan) v Men-deteksi kesalahan/error § Kesalahan H/W, misal: + Memory error + Device failure § Kesalahan S/W, misal: + Arithmetic overflow + Pembagian dengan nol + Akses ke lokasi memori terlarang + Kegagalan OS memenuhi request dari program aplikasi ( time out) § Memberikan respons terhadap error yang terjadi dengan efek seminimal mungkin terhadap aplikasi yang sedang berjalan dengan cara: + Hentikan program penyebab error + Mencoba kembali (retry) + Hanya berupa laporan telah terjadi error Sistem Operasi/20100820 #7

OS Sebagai Resource Manager (1) Ø Komputer = kumpulan resource yang berfungsi untuk memindahkan,

OS Sebagai Resource Manager (1) Ø Komputer = kumpulan resource yang berfungsi untuk memindahkan, memproses, dan menyimpan data v OS bertanggung jawab terhadap aktifitas tersebut Ø Model kontrol oleh OS = model kontrol tidak lazim, karena OS tidak selamanya menjadi pengontrol: v OS = program yang dieksekusi oleh prosesor § Saat OS dieksekusi prosesor yang mengontrol OS v Saat program lain (bukan OS) dieksekusi OS menjadi pengontrol § Termasuk mengendalikan prosesor Sistem Operasi/20100820 #8

OS Sebagai Resource Manager (2) Kernel/nucleus = Bagian OS yang di memori = Fungsi

OS Sebagai Resource Manager (2) Kernel/nucleus = Bagian OS yang di memori = Fungsi yang sering digunakan dan bagian OS lain yang sedang digunakan Sistem Operasi/20100820 #9

Mengapa Sistem Operasi Ber-evolusi ? Ø Supaya dapat memanfaatkan kemajuan di bidang teknologi H/W

Mengapa Sistem Operasi Ber-evolusi ? Ø Supaya dapat memanfaatkan kemajuan di bidang teknologi H/W v H/W memori (RAM) berkembang sehingga dapat digunakan cara pengaturan memori lebih baik (model paging atau segment) OS diperbarui sehingga dapat memanfaatkan kemajuan di bidang H/W tersebut v H/W monitor (display) telah berkembang sehingga dapat menampilkan informasi secara grafis (tidak hanya mode teks) OS dikembangkan sehingga beberapa aplikasi dapat ditampilkan secara bersamaan dalam “window” Ø Ada penambahan layanan baru v Misal: penambahan tool baru yang dapat meningkatkan performansi OS Ø Koreksi terhadap kesalahan/bug Ø Apa ciri OS yang baik ? (dilihat dari sisi perancang OS) v v tersusun secara modular interface antar modul terdefinisi dengan baik interface antar modul sesederhana mungkin terdokumentasi secara baik Sistem Operasi/20100820 #10

Evolusi Sistem Operasi Ø Serial Processing (1940 – 1950) v User harus mengakses mesin

Evolusi Sistem Operasi Ø Serial Processing (1940 – 1950) v User harus mengakses mesin (komputer) secara langsung dan eksekusi job dilakukan satu per satu secara urut dan bergantian Ø Simple Batch System (1950) v Beberapa job (program) yang akan diproses dikumpulkan menjadi satu (menjadi sebuah batch) oleh operator komputer sebelum diproses oleh komputer Ø Multiprogrammed Batch System v Job (program) yang diproses berjumlah lebih dari satu dan diproses secara “bersamaan” Ø Time-Sharing System (1961) v Sebuah komputer (support multiprogramming) digunakan oleh lebih dari satu user secara bersamaan untuk mengerjakan interaktif job Sistem Operasi/20100820 #11

Contoh Evolusi Berbagai Sistem Operasi 55 IOCS IBSYS 60 CTSS 65 DOS/360 70 75

Contoh Evolusi Berbagai Sistem Operasi 55 IOCS IBSYS 60 CTSS 65 DOS/360 70 75 TSO DOS/VDSE MVS/370 VM/370 SYSTEM III 80 85 VS MVS/XA VM/XA SYSTEM V 90 VS/ESA MVS/ES 95 MULTICS CP/CM 5 VM/ESA SYSTEM V. 4 UNIX RSX-11 M UNIXV. 7 VMS 1. 0 4. 1 BSD XENIX MS-DOS 1. 0 SUN OS 4. 2 BSD AIX POSIX MACH OSF/1 4. 3 BSD AIX/370 LINUX AIX/ESA SOLARIS 2 00 03 RT-11 4. 4 BSD CP/M OS/2 WIN 3. 0 VMS 5. 4 DR/DOS WIN 3. 1 WIN NT WIN 9 X VMS 7. 3 WIN 2000 LINUX 2. 6 SOLARIS 10 WIN XP WIN Server 2003 Sistem Operasi/20100820 #12

Evolusi Windows dan Linux 1990 4. NT W W in do w s VM

Evolusi Windows dan Linux 1990 4. NT W W in do w s VM S NT v 1 3. 1 2000 1980 1990 2000 v 2. 2 v 2. 3. 4 v 2. 6 0 0 v 2. v 1. x nu Li IX UN UN IX pu V 6 bl ic 1970 0 in do W ws in 2 d Se ow 000 rv s X er P 20 03 1980. 0 1970 (see http: //www. levenez. com for diagrams showing history of Windows & Unix) Sistem Operasi/20100820 #13

Serial Processing ≠ OS Ø Programmer berinteraksi langsung dengan H/W komputer Ø Tanpa sistem

Serial Processing ≠ OS Ø Programmer berinteraksi langsung dengan H/W komputer Ø Tanpa sistem operasi Ø Mesin dijalankan dari sebuah konsole yang dilengkapi dengan lampu display, saklar, peralatan input, dan printer Ø Masalah utama: v Penjadualan: § Sebelum menggunakan mesin user harus memesan terlebih dahulu § Jika user memperkirakan job selesai dalam 1 jam dan ternyata selesai dalam 45 menit mesin menunggu sia-sia selama 15 menit § Jika job tidak selesai dalam waktu yang telah ditentukan harus berhenti bisa jadi harus diulangi dari awal v Waktu setup: § Setiap satu job membutuhkan satu persiapan tersendiri (loading compiler, source program, penyimpanan compiled program, loading dan linking) § Bila terjadi error setup harus dilakukan dari awal lagi boros waktu Sistem Operasi/20100820 #14

Simple Batch System (1) Ø Simple batch system uniprogramming Ø Tujuan: untuk meningkatkan utilisasi

Simple Batch System (1) Ø Simple batch system uniprogramming Ø Tujuan: untuk meningkatkan utilisasi mesin (komputer) Ø Prinsip kerja: v Digunakan sebuah software (“sistem operasi”) yang disebut “monitor” yang berfungsi untuk mengatur urutan eksekusi job (program) v User tidak langsung berinteraksi dengan komputer v User mengirimkan job melalui card atau pita magnet v Komputer dijalankan oleh operator v Setiap job langsung dieksekusi setelah job yang di depannya selesai dieksekusi tidak ada waktu terbuang Sistem Operasi/20100820 #15

Simple Batch System (2) Ø Monitor di-load di lokasi memori tertentu Punch card Sistem

Simple Batch System (2) Ø Monitor di-load di lokasi memori tertentu Punch card Sistem Operasi/20100820 #16

Simple Batch System (3) Ø Apa yang dilakukan monitor ? v Baca sebuah job

Simple Batch System (3) Ø Apa yang dilakukan monitor ? v Baca sebuah job yang ada di card atau tape v Taruh job tersebut ke dalam area program user v Serahkan kontrol (eksekusi) terhadap job tersebut kepada prosesor v Bila job selesai ambil alih kontrol v Kirim hasil job ke device output (printer) v Baca job berikutnya Sistem Operasi/20100820 #17

Simple Batch System (4) Ø Apa yang dilakukan prosesor ? v Eksekusi instruksi (yang

Simple Batch System (4) Ø Apa yang dilakukan prosesor ? v Eksekusi instruksi (yang merupakan bagian dari program monitor) yang ada di memori § Prosesor sebagai pengendali v Bila program yang dieksekusi adalah perintah untuk membaca job, maka prosesor beralih dari mengeksekusi program monitor menjadi mengeksekusi program job § Prosesor berubah dari pengontrol menjadi yang dikontrol OS v Demikian seterusnya sampai seluruh job selesai dieksekusi Sistem Operasi/20100820 #18

Feature Simple Batch System (1) Ø Proteksi memori: v Area program monitor dilindungi terhadap

Feature Simple Batch System (1) Ø Proteksi memori: v Area program monitor dilindungi terhadap pengaksesan oleh program user § Bila terjadi pengaksesan ilegal ada pesan error job dibatalkan eksekusi job berikutnya Ø Timer: v Setiap job diberi timer job tidak boleh memonopoli resource v Bila waktu habis program dihentikan prosesor mengembalikan kontrol ke monitor Sistem Operasi/20100820 #19

Feature Simple Batch System (2) Ø Instruksi eksklusif (Privileged instructions) v Instruksi tertentu dilindungi

Feature Simple Batch System (2) Ø Instruksi eksklusif (Privileged instructions) v Instruksi tertentu dilindungi dari pengaksesan oleh program user dan hanya boleh diakses oleh monitor, misal perintah ke I/O v Program user yang akan mengakses I/O device harus melalui monitor § Bila user langsung mengakses I/O ada pesan error kontrol diambil alih oleh monitor v Tujuan: § Untuk mencegah jangan sampai suatu program mengakses I/O device yang sedang diakses oleh program lain Ø Interrupts v Fasilitas ini digunakan untuk memperbaiki perpindahan kontrol antara program monitor dan program user secara fleksibel Sistem Operasi/20100820 #20

Mode pada Simple Batch System Ø User mode v Adalah kondisi pada saat program

Mode pada Simple Batch System Ø User mode v Adalah kondisi pada saat program user (job) sedang dieksekusi oleh prosesor v Protected memory dan privileged instructions tidak boleh diakses Ø Kernel mode v Adalah kondisi pada saat program monitor (OS) sedang dieksekusi oleh prosesor v Protected memory dan priviledged instructions boleh diakses Sistem Operasi/20100820 #21

Kekurangan Simple Batch System Ø Apa kekurangan Simple Batch System ? v. Terjadi overhead:

Kekurangan Simple Batch System Ø Apa kekurangan Simple Batch System ? v. Terjadi overhead: § Sebagian lokasi memori ditempati oleh monitor § Sebagian waktu prosesor digunakan untuk mengeksekusi monitor § Waktu prosesor belum termanfaatkan secara maksimal, mengapa ? +Prosesor sering idle (menganggur) karena I/O device jauh lebih lambat dibanding prosesor Sistem Operasi/20100820 #22

Contoh kasus Simple Batch System Ø Sebuah komputer akan membaca, memproses, dan menyimpan kembali

Contoh kasus Simple Batch System Ø Sebuah komputer akan membaca, memproses, dan menyimpan kembali sebuah file ke media penyimpan data (melalui I/O) yang menyimpan sejumlah record. Jika: v Waktu untuk membaca sebuah file = 15 µS v Waktu untuk memproses sebuah file = 1 µS v Waktu untuk menyimpan sebuah file = 15 µS Maka: v Total waktu yang diperlukan untuk mengolah sebuah file = 31 µS v Utilisasi CPU = 1/31 = 0. 032 = 3. 2% v 96, 8% waktu CPU hanya untuk menunggu !!! Sistem Operasi/20100820 #23

Eksekusi job pada Simple Batch System Ø Contoh komputer simple batch system : v

Eksekusi job pada Simple Batch System Ø Contoh komputer simple batch system : v IBM 701 (1950) v IBM 704 v IBM 7090/7094 (1960) dengan menggunakan sistem operasi IBSYS Sistem Operasi/20100820 #24

Multiprogrammed Batch System (1) Ø Multiprogrammed batch system multiprogramming multitasking OS modern Ø Tujuan:

Multiprogrammed Batch System (1) Ø Multiprogrammed batch system multiprogramming multitasking OS modern Ø Tujuan: untuk meningkatkan utilisasi prosesor Ø Contoh eksekusi multiprogram dengan 2 buah program: v Program B dieksekusi pada saat program A sedang mengakses device lain melalui I/O Sistem Operasi/20100820 #25

Multiprogrammed Batch System (2) Ø Contoh eksekusi multiprogram dengan 3 buah program: v Semakin

Multiprogrammed Batch System (2) Ø Contoh eksekusi multiprogram dengan 3 buah program: v Semakin banyak program yang dieksekusi utilitas prosesor semakin tinggi Sistem Operasi/20100820 #26

Contoh kasus Multiprogrammed Batch System (1) Ø Ada 3 buah job (program) yang akan

Contoh kasus Multiprogrammed Batch System (1) Ø Ada 3 buah job (program) yang akan dieksekusi melalui sebuah komputer yang mempunyai memori 250 MB (di luar OS), harddisk, terminal, dan printer. Ø Karakteristik masing-masing job adalah sbb: Sistem Operasi/20100820 #27

Contoh kasus Multiprogrammed Batch System (2) Ø Hasil pengujian ditampilkan dalam Histogram utilitas sbb:

Contoh kasus Multiprogrammed Batch System (2) Ø Hasil pengujian ditampilkan dalam Histogram utilitas sbb: Sistem Operasi/20100820 #28

Contoh kasus Multiprogrammed Batch System (3) Ø Hasil perbandingan penggunaan uniprogramming dan multiprogramming terhadap

Contoh kasus Multiprogrammed Batch System (3) Ø Hasil perbandingan penggunaan uniprogramming dan multiprogramming terhadap utilitas resource adalah sbb: Sistem Operasi/20100820 #29

Contoh kasus Multiprogrammed Batch System (4) Ø Apa yang dapat anda simpulkan dari histogram

Contoh kasus Multiprogrammed Batch System (4) Ø Apa yang dapat anda simpulkan dari histogram utilitas tersebut ? v Waktu eksekusi multiprogramming 2 kali lebih cepat dibanding uniprogramming v Utilitas setiap resource komputer pada multiprogramming lebih tinggi daripada uniprogramming v. . . Sistem Operasi/20100820 #30

Time Sharing System (1) Ø Time sharing system interactive mode multi user Ø Time

Time Sharing System (1) Ø Time sharing system interactive mode multi user Ø Time sharing system adalah: v Adalah sistem yang membagi waktu prosesor kepada sejumlah user, sehingga semua user dapat mengakses resource komputer secara bersamaan melalui terminal (keyboard dan display) masing-masing v Merupakan sistem multiprogramming yang dimanfaatkan untuk menangani beberapa job interaktif v Bila terdapat n user, maka setiap user mendapatkan giliran waktu prosesor sebanyak 1/n dalam satu putaran Ø User akan merasa “seolah-olah” menggunakan sebuah komputer pribadi, mengapa…? Sistem Operasi/20100820 #31

Time Sharing System (2) • Mengapa timbul gagasan untuk membuat sistem model time sharing

Time Sharing System (2) • Mengapa timbul gagasan untuk membuat sistem model time sharing ? • Komputer telah dapat digunakan untuk melakukan multiprogramming v Pada tahun 1960 ukuran komputer sangat besar dan sangat mahal tidak realistis bila satu user satu komputer Ø Contoh: CTSS v Compatible Time-Sharing System (CTSS) merupakan sistem operasi model time sharing pertama yang dikembangkan di MIT yang dijalankan pada komputer IBM 709 (th 1961) dan IBM 7094 v CTSS dapat digunakan oleh 32 user bersama-sama Sistem Operasi/20100820 #32

Contoh Kasus Time Sharing System (1) Ø Sebuah komputer CTSS mempunyai memori berkapasitas 32.

Contoh Kasus Time Sharing System (1) Ø Sebuah komputer CTSS mempunyai memori berkapasitas 32. 000 word masing-masing 36 bit Ø Program monitor berukuran 5. 000 word, sehingga memori yang tersisa untuk user sebanyak 27. 000 word Ø Setiap program user selalu diletakkan pada alamat 5. 000 Ø Komputer menghasilkan clock interrupt setiap 0, 2 detik v Setiap user memperoleh slot waktu sebesar 0, 2 detik Ø Terdapat 4 user yang mempunyai job dan membutuhkan memori sbb: JOB 1=15. 000, JOB 2 = 20. 000, JOB 3 = 5. 000, dan JOB 4 = 10. 000 v Ruang memori yang tersedia < jumlah total memori yang dibutuhkan user v Data user di memori yang akan ditimpa oleh data user lain harus dipindahkan ke harddisk Sistem Operasi/20100820 #33

Contoh Kasus Time Sharing System (2) Ø Urut-urutan eksekusi job: Sistem Operasi/20100820 #34

Contoh Kasus Time Sharing System (2) Ø Urut-urutan eksekusi job: Sistem Operasi/20100820 #34

Contoh Kasus Time Sharing System (3) Ø Keterangan gambar: (a) JOB 1 (15 K)

Contoh Kasus Time Sharing System (3) Ø Keterangan gambar: (a) JOB 1 (15 K) dieksekusi dan menempati alamat 5. 000 – 20. 000 (b) JOB 2 (20 K) dieksekusi dan menempati alamat 5. 000 – 25. 000 semua JOB 1 dipindah ke disk (c) JOB 3 (5 K) dieksekusi dan menempati alamat 5. 000 – 10. 000 sebagian JOB 2 dipindah (tidak semua) ke disk hemat waktu penulisan (d) JOB 1 (15 K) dieksekusi lagi dan menempati alamat 5. 000 – 20. 000 JOB 3 dan sebagian JOB 2 dipindah ke disk (e) JOB 4 (10 K) dieksekusi dan menempati alamat 5. 000 – 15. 000 sebagian JOB 1 dipindah ke disk (f) JOB 2 (20 K) dieksekusi lagi dan menempati alamat 5. 000 – 25. 000 semua JOB 4 dan bagian JOB 1 dipindah ke disk. Bagian JOB 2 di disk dipindahkan ke memori Sistem Operasi/20100820 #35

Permasalahan Pada Time Sharing Ø Bagaimana cara mencegah agar suatu program user tidak dapat

Permasalahan Pada Time Sharing Ø Bagaimana cara mencegah agar suatu program user tidak dapat mengakses data user lain ? Ø Bagaimana cara agar suatu file tidak dapat diakses oleh user yang tidak berhak ? Ø Bagaimana cara mencegah agar tidak terjadi rebutan resource (misal printer dan harddisk) ? Ø Ingin tahu jawabannya…… Ikuti terus perkuliahan ini, don’t miss it……… ! Sistem Operasi/20100820 #36

Referensi: [STA 05] Stallings, William. 2009. Operating System: Internal and Design Principles. 6 th

Referensi: [STA 05] Stallings, William. 2009. Operating System: Internal and Design Principles. 6 th edition. Prentice Hall Sistem Operasi/20100820 #37