Вы находитесь на странице: 1из 98

OUTLINE

1.1 Definisi sistem operasi 1.2 Tujuan sistem operasi 1.3 Sistem multiprogramming 1.4 Sistem multiprocessing 1.5 Distributed System

Definisi Sistem Operasi


Sebuah program yang mengatur perangkat keras komputer dengan menyediakan landasan untuk aplikasi di atasnya, serta menghubungkan pengguna dengan perangkat keras. Bertugas mengkoordinasi perangkat keras dalam penggunaan berbagai macam program aplikasi.

OUTLINE
1.1 Definisi sistem operasi 1.2 Tujuan sistem operasi 1.3 Sistem multiprogramming 1.4 Sistem multiprocessing 1.5 Distributed System

Tujuan Sistem Operasi


a. Membuat komputer lebih mudah dan menarik, serta nyaman untuk digunakan. b. Memungkinkan sumber daya komputer digunakan secara efisien. c. Memungkinkan menerima perubahan/pengembangan baru tanpa mengganggu layanan yang telah ada.

OUTLINE
1.1 Definisi sistem operasi 1.2 Tujuan sistem operasi 1.3 Sistem multiprogramming 1.4 Sistem multiprocessing 1.5 Distributed System

Sistem Multiprogramming
Multiprogramming: Sistem Operasi dapat melayani banyak program yang tidak berhubungan dan dijalankan sekaligus dalam satu komputer yang sama.
Pelaksanaan instruksi: program dimuat ke dalam memori, kemudian program dijalankan hingga mengakses perangkat input dan output, kemudian software akan berpindah ke pekerjaan yang lainnya.

OUTLINE
1.1 Definisi sistem operasi 1.2 Tujuan sistem operasi 1.3 Sistem multiprogramming 1.4 Sistem multiprocessing 1.5 Distributed System

Sistem Multiprocessing
Adalah abilitas pemrosesan komputer yang dilakukan secara serentak. Hal ini memungkinkan karena adanya penggunaan dua prosesor lebih dalam sebuah komputer.
Sering disebut dengan Tightly Coupled System.

Terdapat dua jenis multiprocessing:

a. Symmetric Multiprocessing (SMP) Setiap prosesor mengerjakan salinan identik dari sistem operasi dan banyak job yang dapat berjalan di satu waktu tanpa pengurangan kinerja.
b. Asymmetric Multiprocessing (ASMP) Setiap prosesor diberi tugas yang berbeda. Sebuah prosesor bertindak sebagai Master Processor yang bertugas menjadwalkan dan mengalokasikan pekerjaan pada prosesor lain yang disebut Slave Processor.

OUTLINE
1.1 Definisi sistem operasi 1.2 Tujuan sistem operasi 1.3 Sistem multiprogramming 1.4 Sistem multiprocessing 1.5 Distributed System

Distributed System
Masing-masing prosesor memilliki memori lokal tersendiri dan saling berbagi beban kerja serta data melalui LAN atau WAN. Tiga model sistem terdistribusi:
1. Sistem Client-Server

2. Sistem Point-to-point 3. Sistem Kluster

OUTLINE
2.1 Operasi Sistem Komputer 2.2 Struktur I/O 2.3 Struktur penyimpanan 2.4 Clock 2.5 Proteksi hardware

Operasi Sistem Komputer


Secara umum, sistem komputer terdiri atas CPU dan sejumlah device controller yang terhubung melalui sebuah bus yang menyediakan akses ke memori. Device Control mengorntrol hadrware Memory Control mengontrol sinkronisasi devices

OUTLINE
2.1 Operasi Sistem Komputer 2.2 Struktur I/O 2.3 Struktur penyimpanan 2.4 Clock 2.5 Proteksi hardware

Struktur I/O
Perangkat masukan dan keluaran berfungsi memindahkan data antara komputer dan lingkungan eksternal sehingga komputer dipengaruhi dan memperngaruhi lingkungannya. Berkomunikasi dengan sistem komputer dengan mengirim sinyal melalui kabel atau udara.

Struktur I/O (Cont.)

OUTLINE
2.1 Operasi Sistem Komputer 2.2 Struktur I/O 2.3 Struktur penyimpanan 2.4 Clock 2.5 Proteksi hardware

Struktur Penyimpanan
Hirarki storages berdasarkan kecepatan: Register
Memori Cache Memori Utama (RAM)

Cakram Magnetis
Tape Magnetic

OUTLINE
2.1 Operasi Sistem Komputer 2.2 Struktur I/O 2.3 Struktur penyimpanan 2.4 Clock 2.5 Proteksi hardware

Clock
Fungsi clock pada perangkat lunak: Mengelola waktu dan tanggal (waktu nyata) Mencegah proses berjalan lebih dari waktu yang ditetapkan Menghitung pengunaan pemroses Mengerjakan monitoring dan pengumpulan statistik

OUTLINE
2.1 Operasi Sistem Komputer 2.2 Struktur I/O 2.3 Struktur penyimpanan 2.4 Clock 2.5 Proteksi hardware

Proteksi Hardware
Dual Mode Operation Proteksi I/O Proteksi Memory Proteksi CPU

OUTLINE
3.1 Komponen Sistem 3.2 Pelayanan Sistem Operasi 3.3 System Call 3.4 Sistem Program 3.5 Struktur sistem operasi

Komponen Sistem
1) Manajemen proses

Proses: sebuah program yang sedang dieksekusi


Manajemen-manajemen proses dalam OS:
Membuat dan menghapus proses pengguna dan sistem proses. Menunda atau melanjutkan proses. Menyediakan mekanisme untuk sinkronisasi proses. Menyediakan mekanisme untuk komunikasi proses. Menyediakan mekanisme untuk penanganan deadlock.

Komponen Sistem
2) Manajemen Memori Utama Memori utama: array yang lebih besar dari word/byte. Manajemen memori dalam OS:
Menjaga track dari memori yang sedang digunakan dan siapa yang menggunakannya. Memilih program yang akan di-load ke memori.

Komponen Sistem
3. Manajemen Berkas Berkas: kumpulan informasi yang berhubungan, sesuai dengan tujuan pembuat berkas tersebut.

Manajemen berkas dalam OS:


Pembuatan dan penghapusan berkas. Pembuatan dan penghapusan direktori. Mendukung manipulasi berkas dan direktori. Memetakan berkas ke secondary-storage. Mem-back-up berkas ke media non-volatile.

Komponen Sistem
4. Manajemen I/O Komponen Sistem Operasi untuk sistem I/O: Penyangga: menampung sementara data dari/ke perangkat I/O. Spooling: penjadwalan pemakaian I/O sistem supaya lebih efisien. Menyediakan driver: untuk dapat melakukan operasi rinci untuk perangkat keras I/O.

Komponen Sistem
5. Manajemen Penyimpanan Sekunder Untuk menyimpan keseluruhan data dan program komputer dibutuhkan penyimpanan sekunder yang bersifat permanen dan mampu menampung banyak data, sebagai back-up dari memori utama. Contoh: Harddisk, disket, dll.

Komponen Sistem
6. Jaringan Sistem terdistribusi adalah sekumpulan prosesor yang tidak berbagi memori, atau clock. Prosesor-prosesor tersebut terhubung melalui jaringan komunikasi.

Komponen Sistem
7. Sistem Proteksi Proteksi: mekanisme mengontrol akses yang dilakukan oleh program, prosesor atau pengguna ke sistem sumber daya. Mekanisme proteksi harus:
Membedakan antara penggunaan yang sudah diberi izin dan yang belum. Menspesifikasi kontrol untuk dibebankan/diberi tugas. Menyediakan alat untuk pemberlakuan sistem.

Komponen Sistem
8. Command-Interpreter System Program yang membaca dan menerjemakan pernyataan kontrol disebut dengan commandline intepreter atau shell pada UNIX. Fungsinya adalah untuk mengambil dan mengeksekusi pernyataan perintah berikutnya.

OUTLINE
3.1 Komponen Sistem 3.2 Pelayanan Sistem Operasi 3.3 System Call 3.4 Sistem Program 3.5 Struktur sistem operasi

Pelayanan Sistem Operasi


Eksekusi Program: sistem harus dapat memanggil program ke memori dan menjalankannya. Operasi-operasi I/O: pengontrolan sistem I/O dilakukan oleh sistem operasi agar efisien dan aman. Manipulasi sistem file: kapabilitas program untuk membaca, menulis, membuat dan menghapus file

Pelayanan Sistem Operasi


Komunikasi: dilakukan dengan cara berbagi memori /pengiriman pesan. Mendeteksi kesalahan: sistem harus menjamin kebenaran dalam komputasi dengan melakukan pendeteksian error Mengalokasikan sumber daya (resource)

Pelayanan Sistem Operasi


Akutansi: sistem membuat daftar berapa resource yang digunakan user dan resource apa saja yang digunakan untuk menghitung secara statistik akumulasi penggunaan resource. Proteksi: sistem menjamin bahwa semua akses ke resource terkontrol.

OUTLINE
3.1 Komponen Sistem 3.2 Pelayanan Sistem Operasi 3.3 System Call 3.4 Sistem Program 3.5 Struktur sistem operasi

System Call
System call menyediakan antar muka antara program yang sedang berjalan dengan sistem operasi. Biasanya tersedia dalam bahasa assembly.

System Call
Jenis-jenis system call: 1. System call manajemen proses 2. System call manajemen berkas 3. System call manajemen piranti 4. System call informasi/pemeliharaan 5. System call komunikasi

OUTLINE
3.1 Komponen Sistem 3.2 Pelayanan Sistem Operasi 3.3 System Call 3.4 Sistem Program 3.5 Struktur sistem operasi

Sistem Program

System program menyediakan lingkungan yang memungkinkan pengembangan program dan eksekusi berjalan dengan baik.

Sistem Program
Dapat dikategorikan :
Manajemen/manipulasi Berkas Informasi status Modifikasi berkas Pendukung bahasa pemrograman Loading dan eksekusi program Komunikasi

OUTLINE
3.1 Komponen Sistem 3.2 Pelayanan Sistem Operasi 3.3 System Call 3.4 Sistem Program 3.5 Struktur sistem operasi

Struktur Sistem Operasi


1. Struktur Sistem MS-DOS

2. Struktur Sistem UNIX

OUTLINE
4.1 Konsep proses 4.2 Operasi pada Proses 4.3 Thread 4.4 Komunikasi antar Proses 4.5 interrupt

Konsep Proses
Proses merupakan unit kerja terkecil yang secara individu memiliki sumber daya ke dan merupakan unit tekecil yang dijadwalkan oleh sistem operasi. Proses merupakan konsep pokok sistem operasi.

OUTLINE
4.1 Konsep proses 4.2 Operasi pada Proses 4.3 Thread 4.4 Komunikasi antar Proses 4.5 Interrupt

Operasi pada Proses


1. Pembuatan Proses Dibuat melalui system call create-process membentuk proses turunan yang dilakukan oleh proses induk parent process. 2. Penghentian Proses Terjadi ketika telah selesai mengeksekusi perintah terakhir serta meminta OS menghapus perintah tersebut dengan system call exit.

Operasi pada Proses


3. Penundaan proses & resume proses Sering dilakukan sistem untuk memindahkan proses-proses tertentu guna mereduksi beban sistem selama beban puncak. 4. Pengubahan prioritas proses.

Operasi pada Proses


5. 6. 7. 8. Blocking proses Membangunkan proses Menjadwal proses Memungkinkan proses berinteraksi dengan proses yang lain

OUTLINE
4.1 Konsep proses 4.2 Operasi pada Proses 4.3 Thread 4.4 Komunikasi antar Proses 4.5 Interrupt

Thread
Merupakan unit dasar dari penggunaan CPU, yang terdiri dari Thread_ID, program counter, register set, dan stack. Sering disebut lightweight process. Sebuah proses tradisional atau heavyweight process mempunyai thread tunggal yang berfungsi sebagai pengendali.

Thread

Multi-threading: sebuah aplikasi biasanya diimplementasi sebagai proses yang terpisah dengan beberapa thread yang berfungsi sebagai pengendali.

OUTLINE
4.1 Konsep proses 4.2 Operasi pada Proses 4.3 Thread 4.4 Komunikasi antar Proses 4.5 Interrupt

Komunikasi antar Proses


Dilakukan dengan melalui IPC Inter-Process Communication (IPC): menyediakan sebuah mekanisme untuk mengizinkan proses-proses untuk berkomunikasi dan menyelaraskan aksi-aksi mereka tanpa berbagi ruang alamat yang sama

OUTLINE
4.1 Konsep proses 4.2 Operasi pada Proses 4.3 Thread 4.4 Komunikasi antar Proses 4.5 Interrupt

Interrupt
Ditandai dengan munculnya interupsi dari software atau hardware, sehingga Sistem Operasi ini disebut Interrupt-driven. Interrupt dari hardware dengan sinyal tertentu. Interrupt dari software dengan System Call/Monitor Call

OUTLINE
5.1 Definisi Thread 5.2 Perbedaan proses dan thread 5.3 Symmetric Multiprocessing 5.4 Microkernel

Definisi Thread
Thread merupakan unit dasar dari penggunaan CPU. Terdiri dari Thread_ID, program counter, register set, dan stack.

Definisi Thread
Sebuah thread berbagi code section, data section, dan sumber daya sistem operasi dengan Thread lain yang dimiliki oleh proses yang sama. Proses dengan thread yang banyak mengerjakan lebih dari satu tugas pada satu satuan waktu.

OUTLINE
5.1 Definisi Thread 5.2 Perbedaan proses dan thread 5.3 Symmetric Multiprocessing 5.4 Microkernel

Perbedaan Proses dan Thread


Proses: program-program yang sedang dieksekusi, bisa juga aktivitas seperti program counter dan stack. Thread: unit-unit dasar yang membentuk CPU (sering disebut lightweight process). Jadi 1 program terdiri dari beberapa thread.

OUTLINE
5.1 Definisi Thread 5.2 Perbedaan proses dan thread 5.3 Symmetric Multiprocessing 5.4 Microkernel

Symmetric Multiprocessing

Adalah system multiprocessing di mana setiap prosesor mengerjakan salinan identik dari sistem operasi dan banyak job yang dapat berjalan di satu waktu tanpa pengurangan kinerja.

OUTLINE
5.1 Definisi Thread 5.2 Perbedaan proses dan thread 5.3 Symmetric Multiprocessing 5.4 Microkernel

Microkernel
Microkernel adalah software berukuran sangat kecil yang menyediakan mekanisme yang dibutuhkan untuk mengimplementasikan sebuah OS (termasuk manajemen low-level address space, manajemen thread, dan IPC).

OUTLINE
6.1 Latar belakang 6.2 Critical section 6.3 Sinkronisasi software 6.4 Sinkronisasi hardware

Latar Belakang
Dalam kenyataannya, suatu proses akan lebih sering melakukan perhitungan internal dan halhal teknis lainnya tanpa ada bahaya Race Condition di sebagian besar waktu. Akan tetapi, beberapa proses memiliki suatu segmen kode di mana jika segmen tersebut dieksekusi maka proses-proses tersebut dapat saling mengubah variabel, meng-update suatu tabel, menulis ke dalam file, dan lain sebagainya.

OUTLINE
6.1 Latar belakang 6.2 Critical section 6.3 Sinkronisasi software 6.4 Sinkronisasi hardware

Critical Section
Jika beberapa proses memiliki suatu segmen kode dimana jika segmen itu dieksekusi, maka proses-proses itu dapat saling mengubah variabel, mengupdate suatu tabel, menulis ke suatu file, dan lain sebagainya, dan hal ini dapat membawa proses tersebut ke dalam bahaya race condition. Segmen kode yang seperti inilah yang disebut Critical Section.

OUTLINE
6.1 Latar belakang 6.2 Critical section 6.3 Sinkronisasi software 6.4 Sinkronisasi hardware

SINKRONISASI SOFTWARE
Adalah sebuah mekanisme yang mengatur mutual exclusion (hanya 1 proses yang dapat mengakses 1 resourse pada 1 waktu) dan event ordering pada sejumlah proses yang saling berbagi struktur data.

OUTLINE
6.1 Latar belakang 6.2 Critical section 6.3 Sinkronisasi software 6.4 Sinkronisasi hardware

SINKRONISASI HARDWARE
Adalah mekanisme pengaturan waktu kerja hardware supaya tidak terjadi deadlock karena penggunaan satu resource secara bersamaan.

OUTLINE
7.1 Karakteristik deadlock 7.2 Metode mengendalikan Deadlock 7.3 Pencegahan deadlock 7.4 Deteksi deadlock 7.5 Deadlock avoidance

Karakteristik Deadlock
Deadlock dalam arti sebenarnya adalah kebuntuan. Kebuntuan yang dimaksud dalam sistem operasi adalah kebuntuan proses. Deadlock adalah suatu kondisi dimana dua proses atau lebih saling menunggu proses yang lain untuk melepaskan resource yang sedang dipakai.

Starvation Starvation adalah kondisi yang biasanya terjadi setelah deadlock. Proses yang kekurangan resource (karena terjadi deadlock) tidak akan pernah mendapat resource yang dibutuhkan sehingga mengalami starvation (kelaparan).

Terjadi starvation tanpa deadlock


Hal ini ketika terdapat kesalahan dalam sistem sehingga terjadi ketimpangan dalam pembagian resouce.

OUTLINE
7.1 Karakteristik deadlock 7.2 Metode mengendalikan Deadlock 7.3 Pencegahan deadlock 7.4 Deteksi deadlock 7.5 Deadlock avoidance

Mengendalikan Deadlock
Preemption
Mengalihkan sumber daya satu ke proses lain

Melacak Kembali
Mulai lagi dari kondisi aman Mematikan proses penyebab deadlock
Bunuh semua proses yang deadlock, atau Korbankan beberapa.

OUTLINE
7.1 Karakteristik deadlock 7.2 Metode mengendalikan Deadlock 7.3 Pencegahan deadlock 7.4 Deteksi deadlock 7.5 Deadlock avoidance

Mencegah Deadlock
Mengatasi mutual exclusion Hold and wait Mengatasi masalah No Preemptive Memakai protokol untuk menghindari atau mengabaikan deadlock, sehingga dipastikan tidak akan memasuki keadaandeadlock

Mencegah Deadlock
Membiarkan sistem memasuki waktu deadlock, mendeteksinya, dan memperbaikinya Mengabaikan adanya deadlock dan menganggap keadaan deadlock tidak pernah terjadi ( Algoritma Ostrich )

OUTLINE
7.1 Karakteristik deadlock 7.2 Metode mengendalikan Deadlock 7.3 Pencegahan deadlock 7.4 Deteksi deadlock 7.5 Deadlock avoidance

Deteksi Deadlock
Cara mendeteksi deadlock adalah mendeteksi sistem yang terlibat. dengan

Metode ini mengunakan pendekatan dengan menentukan apakah deadlock sedang terjadi serta proses-proses dan sumber daya yang terlibat dalam deadlock tersebut. Setelah kondisi deadlock dapat dideteksi, maka langkah pemulihan dari kondisi deadlock dapat segera dilakukan.

Deteksi Deadlock
Hal-hal yang terjadi dalam mendeteksi adanya Deadlock adalah: Permintaan sumber daya dikabulkan selama memungkinkan. Sistem operasi memeriksa adakah kondisi circular wait secara periodik. Pemeriksaan adanya Deadlock dapat dilakukan setiap ada sumber daya yang hendak digunakan oleh sebuah proses. Memeriksa dengan algoritma tertentu.

OUTLINE
7.1 Karakteristik deadlock 7.2 Metode mengendalikan Deadlock 7.3 Pencegahan deadlock 7.4 Deteksi deadlock 7.5 Deadlock avoidance

Deadlock Avoidance
Pada sistem kebanyakan permintaan terhadap sumber daya dilakukan sebanyak sekali saja. Sistem sudah harus dapat mengenali bahwa sumber daya itu aman atau tidak (tidak terkena Deadlock), setelah itu baru dialokasikan. Dibutuhkan algoritma penjadwalan Algoritma Bankir.

Sistem Operasi JTETI UGM 2011

TERIMA KASIH SEMOGA SUKSES

Вам также может понравиться