30
Pertemuan 7 Round Robin & PengayaanUTS

Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin

Pertemuan 7Round Robin & Pengayaan UTS

Page 2: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin
Page 3: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin

Sistem operasi didefinisikan sebagai:

Page 4: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin

Evolusi Sistem Operasi

• OS sederhana

• Program tunggal, satu user, satu mesin komputer (CPU) : komputer generasi pertama, awal mesin PCs, controller: lift, Playstation etc.

• No problems, no bad people, no bad programs => interaksi sederhana

• Problem: terbatas pemakaiannya;

Page 5: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin

Masalah OS Sederhana

• Race Condition adalah situasi di mana beberapa proses mengaksesdan memanipulasi data bersama pada saat besamaan. Untukmencegah race condition, proses-proses yang berjalan besamaanharus disinkronisasi.

• Masalah Critical Section (masalah dalam pengaksesan sumber dayayang sama). Kesulitan yang terjadi karena proses 2 mulaimenggunakan variabel bersama sebelum proses 1 menyelesaikantugasnya.

Page 6: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin

solusi• Solusi “critical section problem” harus memenuhi:

1. Mutual Exclusion: Jika proses Pi sedang “eksekusi” pada bagian “critical section” (dari proses Pi) maka tidak ada proses proses lain dapat“eksekusi” pada bagian critical section dari proses-proses tersebut.

2. Progress: Jika tidak ada proses sedang eksekusi pada critical section-nyadan jika terdapat lebih dari satu proses lain yang ingin masuk ke critical section, maka pemilihan siapa yang berhak masuk ke critical section tidakdapat ditunda tanpa terbatas.

3. Bounded Waiting: Terdapat batasan berapa lama suatu proses harusmenunggu giliran untuk mengakses “critical section” – jika seandainyaproses lain yang diberikan hak akses ke critical section.

• Menjamin proses dapat mengakses ke “critical section” (tidak mengalami starvation: proses se-olah berhentimenunggu request akses ke critical section diperbolehkan).

• Tidak ada asumsi mengenai kecepatan eksekusi proses proses n tersebut.

Page 7: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin

BBBBatchatchatchatch SystemSystemSystemSystem

� Job yang di kerjakan dalam satu rangkaian, lalu dikerjakansecara berurutan.

� Belum dilengkapi SO, tapi fungsi dari sistem operasi telahada.

Page 8: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin

Simple Batch System � Sistem mainframe

• Perangkat input: card reader,tape drive

• Perangkat output: line printer, tape drive, dan card punch

• User: menyiapkan job (bentuk card punch)� program, data daninformasi control (control card), dikirim ke operator computer. Dalam hitungan menit, jam, atau hari output ditampilkan. Kontrol card megatur batch job.

• Automatic job sequencing � Task utama mengirim secaraotomatis control dari satu job ke job yang lain

• Residen monitor � Program kecil bersifat residen dimemoriberisi urutan-urutan job yang akan berpindah secara otomatis

• Fungsi monitor: awal (initial) melakukan control; transfer control ke job (pertama) ; stelah hob selesai, control kembali ke monitor

Page 9: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin

9

Multiprogrammed Batch Systems

Beberapa jobs disimpan di memori pada saat

bersamaan, dan CPU melakukan multiplexing

(menggabungkan) jobs-jobs tersebut

Page 10: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin
Page 11: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin

StrukturStrukturStrukturStruktur SOSOSOSO

1. Proses adalah sebuah program yang

sedang dijalankan (eksekusi).� Suatu proses memerlukan resources pada saat

ekesekusi: CPU time, memory, files dan I/O

devices

2. Manajemen Main-Memory

• Memori sebagai tempat penyimpanan instruksi/data dari program

• Storage yang cepat sehingga dapat mengimbangi kecepatan eksekusi instruksiCPU

• Address digunakan untuk mengakses data (shared oleh CPU dan I/O devices)

• Umumnya main memory bersifat “volatile” – tidak permanent. Isinyaakan hilang jika komputer di matikan.

Page 12: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin

3. Manajemen Secondary-Storage

� Secondary Storage: penyimpanan permanen

� Kapasitas harus besar untuk menyimpan semua program dan data.

� Secondary storage dapat dijadikan “backup” storage main memory supaya dapat enjalankan banyak program.

� Umumnya menggunakan “magnetic disks” (hard disk).

�OS bertanggung jawab untuk manajemen disk:

� Manajemen ruang kosong

� Alokasi storage

� Penjadualan disk

4. Manajemen I/O System

• Sering disebut device manager

• Menyediakan “device driver” yang umum sehingga operasi I/O dapat seragam (open, read, write, close)

• Contoh: user menggunakan operasi yang sama untuk read file pada hard disk, CD-ROM dan floppy disk sama.

• Komponen OS untuk sistim I/O:

• Buffer: menampung sementarai data dari/ke I/O devices

• Spooling: melakukan scheduling pemakaian I/O sistim supaya lebih efisien (antrian dsb)

• Menyediakan “driver” untuk dapat melakukan operasi “rinci” (detail) untuk hardware I/O tertentu.

Page 13: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin

5. Manajemen File

File: kumpulan informasi yang berhubungan (sesuai dengan

tujuan pembuat file tsb).File dapat mempunyai struktur yang bersifat hirarkis (direktori, volume

dll).

OS bertanggung jawab:Membuat dan menghapus file.

Membuat dan menghapus directory.

Dukungan primitif untuk manipulasi file dan directory.

Pemetaan file ke dalam secondary storage.

Backup file ke media storage yang stabil (nonvolatile).

6. Command-Interpreter System

� OS: menunggu instruksi dari user (command driven)

� Program yang membaca instruksi dan mengartikan keinginan user (lebih dari sejenis).

� Sangat bervariasi dari satu OS ke OS yang lain dan disesuaikan dengan tujuan, teknologi I/O devices yang ada.

�CLI, Windows, Pen-based (touch) etc.

Page 14: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin

� System Call

• System call:

• Menyediakan interface antara program (user program yang berjalan) dan bagian OS.

• System call menjadi jembatan antara proses dan OS.

• System call ditulis dalam assembly language (machine specific) atau bahasa tingkat tinggi yang dapat mengendalikan mesin.

• Contoh: UNIX menyediakan system call: read, write => operasi I/O untuk file.

14

Page 15: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin

System Call : Passing Parameter

• Sering user program harus memberikan data (parameter) ke rutin OS yang akan dipanggil.

• UNIX: read(buffer, max_size, file_id);

• Cara memberikan parameter dari program ke sistimoperasi:

• Melalui registers (resources di CPU).

• Menyimpan parameter pada data struktur (table) di memory, danalamat table tsb ditunjuk oleh pointer yang disimpan di register.

15

Page 16: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin

Tipe System Calls1. Kontrol Proses

• Mengakhiri (end) dan membatalkan (abort)• Mengambil (load) dan eksekusi (execute)• Membuat dan mengakhiri proses• Menentukan dan mengeset atribut proses• Wait for time• Wait event, signal event• Mengalokasikan dan membebaskan memori

2. Manipulasi File• Membuat dan menghapus file• Membuka dan menutup file• Membaca, menulis dan mereposisi file• Menentukan dan mengeset atribut file

16

Page 17: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin

17

3. Managemen DeviceMeminta dan membebaskan device

Membaca, menulis dan mereposisi device

Menentukan dan mengeset atribut device

4. Informasi Lingkungan

Mengambil atau mengeset waktu atau tanggal

Mengambil atau mengeset sistem data

Mengambil atau mengeset proses, file atau atribut-atribut device

5. Komunikasi

Membuat dan menghapus sambungan komunikasi

Mengirim dan menerima pesan

Mentransfer status informasi

Page 18: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin

ProsesProsesProsesProses

• Program yang sedang dieksekusi

• Proses tidak hanya sekedar suatu kode program (text

section), melainkan meliputi beberapa aktivitas yang bersangkutan seperti:

� Melacak posisi instruksi (sequential execution): program counter

� Menyimpan data sementara var., parameter, return value: stack

� Menyimpan data (initial, global variable dll): data section

� Menyimpan status proses (contoh, aktif, wait I/O request dll.)

Page 19: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin

• Sistem operasi UNIX mempunyai system call fork yang berfungsiuntuk membuat proses baru

• Proses yang memanggil system call fork ini akan dibagi jadi dua, proses induk dan proses turunan yang identik.

• Suatu proses diterminasi ketika proses tersebut telah selesaimengeksekusi perintah terakhir serta meminta sistem operasi untukmenghapus perintah tersebut dengan menggunakan system call exit.

• Proses dapat mengembalikan data keluaran kepada proses induk-nyamelalui system call wait

Page 20: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin

Diagram Status Proses

20

Page 21: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin

Penjelasan gambar

• New• Masih dalam tahap inisiasi oleh prosedur

• Meliputi alokasi memory utama untuk proses

• Pengisian tabel proses

• Pembuatan struktur data kendali untuk menyimpan informasi dan status proses

• Belum siap untuk di eksekusi

• Kondisi yang memicu proses new• Login ke sistem operasi

• Permintaaan eksekusi program

• Aplikasi yang menciptakan proses anak

• Penciptaan proses baru dari eksekusi batch

Page 22: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin

Penjelasan gambar

• Ready

• Proses yang telah berhasil di inisiasi

• Antrian penjadwalan prosesor dengan cara menyisipkan proses baru ke dalamantrian

• Berisi referensi atau pointer ke struktur data kendali proses

• Menandakan suatu proses siap berkompetisi untuk mendapatkan alokasiprosesor

• Schduler adalah sistem operasi yang bertugas untuk memilih proses yangberada dalam proses ready

Page 23: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin

Penjelasan gambar

• Running

• Proses menguasi prosesor sepenuhnya

• Memiliki tiga kemungkinan

• Teminated, proses yang telah selesai

• Ready, jika jatah waktu yang dialokasikan sudah habis

• Blocked/waiting

Page 24: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin

Penjelasan gambar

• Blocked/Waiting

• Proses membutuhkan pembacaan data dari piranti I/O

• Proses ini akan disisipkan pada antrian penjadwalanperanti I/O atau event

• Jika I/O yang di tunggu sudah selesai maka proses akankembali ke antrian ready dan menunggu pemillihan olehschedule

Page 25: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin

Penjelasan gambar

• EXIT/Terminated

• Proses tersebut sudah dihentikan eksekusinya• Proses telah selesai secara normal

• Batas waktu total sudah terlewati

• Kekurang ruang memory

• Pelanggaran batas memory

• Pelanggaran proteksi berkas

• Kesalahan aritmatika

• Waktu tunggu melebihi batas

• Terjadi kegagalan I/O

• Instruksi tidak benar

• Terjadi pemakaian instruksi yang tidak di izinkan

Page 26: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin

Penjelasan gambar

• keadaan proses blocked dapat berlangsung lama dan ruang memoryutama tidak dapat digunakan oleh proses yang lain

• Untuk mengatasi hal itu maka dibuat status suspended blocked

• Penundaan eksekusi proses yang bersatutus blocked yang dilakukanoleh sistem ataupun proses lain akan menyebabkan status prosesberalih menjadi suspended blocked

Page 27: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin

PenjadualanPenjadualanPenjadualanPenjadualan CPUCPUCPUCPU

Page 28: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin

Penjadual / Schedulers

• Long-term scheduler (or job scheduler) – memilih proses/program yang mana yang akan di load dan berada di ready queue.

• Kemungkinan terdapat proses atau job baru.

• Kemungkinan proses dipindahkan dari memori ke disk (swap out).

• Short-term scheduler (or CPU scheduler) – memilih proses yang mana yang berada di ready queue akan “run” (mendapatkan jatah CPU).

28

Page 29: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin
Page 30: Pertemuan7 - Moral and Intellectual Integrityapranolo.tif.uad.ac.id/wp-content/uploads/2015/03/...Evolusi Sistem Operasi • OS sederhana • Program tunggal, satu user, satu mesin