Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Sistem Operasi? Adalah program yang mengatur eksekusi program aplikasi

Presentasi serupa


Presentasi berjudul: "Sistem Operasi? Adalah program yang mengatur eksekusi program aplikasi"— Transcript presentasi:

0 Overview Sistem Operasi (Pertemuan ke-1)
Agustus 2012

1 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

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

3 Layer/Tingkatan Sistem Komputer (1)

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

5 Sistem Operasi sebagai Interface antara User dan Komputer (1)
Layanan yang dapat disediakan Sistem Operasi: Mendukung pengembangan program aplikasi OS menyediakan fasilitas dan layanan (program utility) untuk pengembangan program aplikasi, misal: editor dan debugger Meng-eksekusi program Load data dan instruksi ke memori Inisialisasi I/O device dan resource lain Atur penjadualan pengeksekusian program 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

6 Sistem Operasi sebagai Interface antara User dan Komputer (2)
Layanan yang dapat disediakan Sistem Operasi: (lanjutan) Mengontrol pengaksesan file OS menyediakan fasilitas untuk mengatur hak akses terhadap file (read, write, hide) Mengontrol pengaksesan sistem OS dapat memproteksi resource dan data dari user yang tidak berhak OS mencegah terjadinya rebutan resource 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)

7 Sistem Operasi sebagai Interface antara User dan Komputer (3)
Layanan yang dapat disediakan Sistem Operasi: (lanjutan) 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

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

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

10 Mengapa Sistem Operasi Ber-evolusi ?
Supaya dapat memanfaatkan kemajuan di bidang teknologi H/W 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 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 Misal: penambahan tool baru yang dapat meningkatkan performansi OS Koreksi terhadap kesalahan/bug Apa ciri OS yang baik ? (dilihat dari sisi perancang OS) tersusun secara modular interface antar modul terdefinisi dengan baik interface antar modul sesederhana mungkin terdokumentasi secara baik

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

12 Contoh Evolusi Berbagai Sistem Operasi
55 60 65 70 75 80 85 90 95 00 03 IOCS DOS/360 DOS/VDSE VS VS/ESA OS/360 MVS/370 MVS/XA MVS/ES TSO IBSYS CTSS CP/CM5 VM/370 VM/XA VM/ESA SYSTEM III SYSTEM V SYSTEM V.4 MULTICS UNIX UNIXV.7 AIX/370 AIX SUN OS POSIX SOLARIS 2 4.1BSD 4.2BSD 4.3BSD 4.4BSD MACH OSF/1 AIX/ESA XENIX MS-DOS 1.0 CP/M DR/DOS OS/2 WIN 3.0 WIN NT WIN 2000 WIN 9X WIN XP LINUX RSX-11M VMS 1.0 VMS 5.4 VMS 7.3 WIN 3.1 SOLARIS 10 RT-11 LINUX 2.6 WIN Server 2003

13 Evolusi Windows dan Linux
1970 1980 1990 2000 VMS v1.0 Windows NT 3.1 NT 4.0 Windows 2000 Windows XP Server 2003 UNIX public UNIX V6 Linux v1.0 v2.0 v2.2 v2.3 v2.4 v2.6 (see for diagrams showing history of Windows & Unix)

14 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: 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 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

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

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

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

18 Simple Batch System (4) Apa yang dilakukan prosesor ?
Eksekusi instruksi (yang merupakan bagian dari program monitor) yang ada di memori Prosesor sebagai pengendali 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 Demikian seterusnya sampai seluruh job selesai dieksekusi

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

20 Feature Simple Batch System (2)
Instruksi eksklusif (Privileged instructions) Instruksi tertentu dilindungi dari pengaksesan oleh program user dan hanya boleh diakses oleh monitor, misal perintah ke I/O 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 Tujuan: Untuk mencegah jangan sampai suatu program mengakses I/O device yang sedang diakses oleh program lain Interrupts Fasilitas ini digunakan untuk memperbaiki perpindahan kontrol antara program monitor dan program user secara fleksibel

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

22 Kekurangan Simple Batch System
Apa kekurangan Simple Batch System ? 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

23 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: Waktu untuk membaca sebuah file = 15 µS Waktu untuk memproses sebuah file = 1 µS Waktu untuk menyimpan sebuah file = 15 µS Maka: Total waktu yang diperlukan untuk mengolah sebuah file = 31 µS Utilisasi CPU = 1/31 = = 3.2% 96,8% waktu CPU hanya untuk menunggu !!!

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

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

26 Multiprogrammed Batch System (2)
Contoh eksekusi multiprogram dengan 3 buah program: Semakin banyak program yang dieksekusi  utilitas prosesor semakin tinggi

27 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:

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

29 Contoh kasus Multiprogrammed Batch System (3)
Hasil perbandingan penggunaan uniprogramming dan multiprogramming terhadap utilitas resource adalah sbb:

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

31 Time Sharing System (1) Time sharing system  interactive mode  multi user Time sharing system adalah: 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 Merupakan sistem multiprogramming yang dimanfaatkan untuk menangani beberapa job interaktif 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…?

32 Time Sharing System (2) Mengapa timbul gagasan untuk membuat sistem model time sharing ? Komputer telah dapat digunakan untuk melakukan multiprogramming Pada tahun 1960 ukuran komputer sangat besar dan sangat mahal  tidak realistis bila satu user satu komputer Contoh: CTSS 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 CTSS dapat digunakan oleh 32 user bersama-sama

33 Contoh Kasus Time Sharing System (1)
Sebuah komputer CTSS mempunyai memori berkapasitas word masing-masing 36 bit Program monitor berukuran word, sehingga memori yang tersisa untuk user sebanyak word Setiap program user selalu diletakkan pada alamat 5.000 Komputer menghasilkan clock interrupt setiap 0,2 detik Setiap user memperoleh slot waktu sebesar 0,2 detik Terdapat 4 user yang mempunyai job dan membutuhkan memori sbb: JOB1=15.000, JOB2 = , JOB3 = 5.000, dan JOB4 = Ruang memori yang tersedia < jumlah total memori yang dibutuhkan user Data user di memori yang akan ditimpa oleh data user lain harus dipindahkan ke harddisk

34 Contoh Kasus Time Sharing System (2)
Urut-urutan eksekusi job:

35 Contoh Kasus Time Sharing System (3)
Keterangan gambar: (a) JOB1 (15 K) dieksekusi dan menempati alamat – (b) JOB2 (20 K) dieksekusi dan menempati alamat –  semua JOB1 dipindah ke disk (c) JOB3 (5 K) dieksekusi dan menempati alamat –  sebagian JOB2 dipindah (tidak semua) ke disk  hemat waktu penulisan (d) JOB1 (15 K) dieksekusi lagi dan menempati alamat –  JOB3 dan sebagian JOB2 dipindah ke disk (e) JOB4 (10 K) dieksekusi dan menempati alamat –  sebagian JOB1 dipindah ke disk (f) JOB2 (20 K) dieksekusi lagi dan menempati alamat –  semua JOB4 dan bagian JOB1 dipindah ke disk. Bagian JOB2 di disk dipindahkan ke memori

36 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……… !

37 Referensi: [STA05] Stallings, William Operating System: Internal and Design Principles. 6th edition. Prentice Hall


Download ppt "Sistem Operasi? Adalah program yang mengatur eksekusi program aplikasi"

Presentasi serupa


Iklan oleh Google