• Tidak ada hasil yang ditemukan

Konsep pproses: Definisi proses. Status t proses. Sistem Operasi/ #1

N/A
N/A
Protected

Academic year: 2021

Membagikan "Konsep pproses: Definisi proses. Status t proses. Sistem Operasi/ #1"

Copied!
39
0
0

Teks penuh

(1)

Deskripsi

Deskripsi

dddan

dan

Kontrol Proses

Kontrol Proses

Kontrol Proses

Kontrol Proses

(2)

Agenda:

Agenda:

Konsep proses:

p p

Definisi proses

St t

Status proses

(3)

Tugas OS Terhadap

Tugas OS Terhadap

Proses

Proses

Mengeksekusi banyak proses

secara

interleave

(selang-seling) agar utilisasi

interleave

(selang seling) agar utilisasi

prosesor maksimal dan

response time

setiap

proses masih bisa diterima

proses masih bisa diterima

Menyediakan

resource

bagi setiap proses

M d k

k

ik i

t

d

Mendukung komunikasi antar proses dan

(4)

Konsep

Konsep--Konsep Sebelumnya

Konsep Sebelumnya

Platform

komputer terdiri dari

sekumpulan

resource

hardware

Program aplikasi komputer dibuat untuk melakukan

beberapa

task

(pekerjaan)

f

Sangatlah

tidak efisien

jika program aplikasi dibuat hanya

khusus bagi

platform hardware

tertentu

Sistem operasi harus

nyaman dan aman

digunakan serta

Sistem operasi harus

nyaman dan aman

digunakan serta

mempunyai banyak fitur dan

interface

yang konsisten

Sistem operasi dapat memberikan

gambaran

resource

secara

Sistem operasi dapat memberikan

gambaran

resource

secara

uniform

(

seragam) sehingga dapat diminta dan diakses oleh

program aplikasi

(5)

Mengapa

Mengapa

Eksekusi Proses

Eksekusi Proses

Harus Diatur ?

Harus Diatur ?

Agar

resource

selalu tersedia

bagi banyak

aplikasi

aplikasi

Agar

prosesor

dapat digunakan oleh banyak

aplikasi

secara bergantian

aplikasi

secara bergantian

Agar prosesor dan

I/O device

dapat

di

k

fi i

(6)

Apakah

Apakah

Proses

Proses

itu ?

itu ?

Program yang dieksekusi

Program yang sedang berjalan di komputer

Program yang sedang berjalan di komputer

Entitas yang dapat diberikan kepada prosesor

t k di k k i

untuk dieksekusi

Sebuah aktifitas yang sangat dipengaruhi

oleh hasil eksekusi sebelumnya, status saat

ini, dan sejumlah

resource

sistem yang

(7)

Apa Saja Elemen

Apa Saja Elemen

Proses

Proses

yang Sedang

yang Sedang

Running

Running

??

(1)(1)

Identifier

 Identitas unik untuk membedakan suatu proses dengan proses lainnya

lainnya

State

 Status (kondisi)( ) suatu proses (sedang dieksekusi, sedang diblok, dll)p ( g , g , )

Priority

 Prioritas suatu proses terhadap proses yang lain

P

Program counter

 Alamat instruksi berikutnya yang akan dieksekusi

Memory pointers

Memory pointers

Pointer

yang menunjuk pada alamat memori kode program dan data yang berhubungan dengan proses dan blok memori yang di-

shared

(8)

Apa Saja Elemen

Apa Saja Elemen

Proses

Proses

yang Sedang

yang Sedang

Running

Running

??

(2)(2)

Context data

Data yang terdapat pada

register prosesor

ketika suatu

Data yang terdapat pada

register prosesor

ketika suatu

proses sedang dieksekusi

I/O status information

I/O status information

Informasi tentang

permintaan terhadap

I/O device

yang

belum terpenuhi (misal akses ke

harddisk

), daftar file

yang sedang digunakan oleh proses, dll

Accounting information

Informasi tentang jumlah

waktu prosesor

yang telah

(9)

Process Control Block (PCB)

Process Control Block (PCB)

(1)(1)

Struktur data yang menyimpan

elemen-elemen proses

elemen proses

Dibuat dan diatur oleh sistem operasi

M d k

d

lti

Mendukung adanya multi proses

Bersama-sama dengan kode program dan

data yang diperlukan membentuk sebuah

proses

Proses = PCB + kode program + data yang

(10)

Process Control Block (PCB)

Process Control Block (PCB)

(2)(2)

Sebagian isi PCB:

Sebagian isi PCB:

(11)

Agenda:

Agenda:

Konsep proses:

p p

Definisi proses

St t

Status proses

(12)

Status Proses

Status Proses

Status proses merupakan

kondisi suatu proses

(setiap saat setiap proses mempunyai sebuah

(

p

p p

p y

kondisi)

Sebuah kondisi bisa dimiliki oleh banyak proses

Trace

proses:

Adalah

daftar urut-urutan alamat memori

suatu proses

yang telah dieksekusi

Program

dispatcher

:

B i

d i i t

i

t

ili

Bagian dari sistem operasi yang mengatur giliran

pemanfaatan prosesor kepada suatu proses ke proses

yang lain

(13)

Contoh

Contoh

Trace

Trace

Proses

Proses

Sedang mengakses g I/O  wait

(14)

Contoh Eksekusi Proses

Contoh Eksekusi Proses

(1)(1)

Asumsi:

tidak ada

tidak ada

memori virtual

semua

proses ditaruh

p

di memori

(15)

Contoh Eksekusi

Contoh Eksekusi

Proses

Proses

(2)(2) Proses AProses A

Gabungan

trace 3 buah

Dispatcher Dispatcher Dispatcher Dispatcher

proses:

Dilihat dari

sisi prosesor

Dispatcher Dispatcher Proses B Proses B Proses A Proses A

sisi prosesor

Dispatcher Dispatcher Dispatcher Dispatcher Dispatcher Dispatcher Proses C Proses C

(16)

Contoh Eksekusi 3 buah Proses

Contoh Eksekusi 3 buah Proses

(17)

Pembentukan Proses

Pembentukan Proses

Siapa yang membentuk proses ?

 Sistem operasi

 S ti dil k i d PCB  Setiap proses dilengkapi dengan PCB

Apa yang dapat menyebabkan terbentuknya proses baru ?

 Masuknya job baru (program aplikasi)

 Pada model batch system: proses terbentuk akibat job baru (berupa baris-baris program) yang ditulis pada tape magnetic atau harddisk yang sedang dieksekusi

 Log on dari user

P d i t i t ktif t b t k k tik l k k l d i t

 Pada sistem interaktif: proses terbentuk ketika user melakukan log on pada sistem

 Sebagai bentuk layanan OS kepada program aplikasi

 Misal: Ada program aplikasi yang perlu mencetak ke printer  OS membentuk

proses yang mengatur printer proses yang mengatur printer

 Dibentuk oleh proses lain (process spawning)

(18)

Apa Penyebab

Apa Penyebab Terminasi Proses

Terminasi Proses ??

(1)(1)

Proses telah selesai secara normal:

 Model

batch job

: terdapat instruksi halt yang menandakan proses telah selesai

telah selesai

 Sistem interaktif: proses di-

close

oleh user (

close, log off, turn off

, dsb)

Jatah waktu telah habis:

 Total waktu sejak proses dibentuk  Total waktu proses aktif

 Total waktu proses aktif

 Total waktu sejak user memberikan input  Dsb

M

i tid k t

di

Memori tidak tersedia:

 Proses membutuhkan memori lebih besar tetapi tidak terpenuhi

Bounds violation

:

(19)

Apa Penyebab

Apa Penyebab Terminasi Proses

Terminasi Proses ??

((22))

Protection error

:

 Proses mencoba menggunakan

resource

(file) yang tidak boleh diakses

diakses

 Misal: mencoba menulis pada file dengan atribut

read only

Arithmatic error

:

 Kesalahan komputasi, misal

division by zero

Time overrun

:

 P t l h l bihi b t kt t l h dit t k

 Proses telah menunggu melebihi batas waktu yang telah ditentukan

I/O failure

:

 Terjadi kesalahan pada saat mengakses I/Oj p g /  Misal:

(20)

Apa Penyebab

Apa Penyebab Terminasi Proses

Terminasi Proses ??

((33))

Instruksi invalid

:

 Proses mencoba mengeksekusi instruksi yang tidak ada (akibat pencabangan mengarah pada area data)

pencabangan mengarah pada area data)

Privileged instruction

:

 Proses mencoba menggunakan instruksi yang disediakan khusus bagi sistem operasi (misal perintah ke I/O)

bagi sistem operasi (misal perintah ke I/O)

Kesalahan data

 Tipe data salah atau data tidak diinisialisasi

d i

i d i

OS

Ada intervensi dari operator atau OS

 Dilakukan pada saat terjadi

deadlock

(

hang

)

Proses induk (

(

parent

p

) diterminasi

)

 Jika proses induk diterminasi  proses semua proses anaknya ikut terterminasi

Diterminasi proses induk

Diterminasi proses induk

(21)

Model Proses

Model Proses

Proses dengan 2 status:

Running

Not running

Proses dengan 5 status:

New

New

Ready

Running

E it

Exit

Blocked

Proses dengan 6 status:

g

 Proses dengan 5 status +

Suspend

Proses dengan 7 status:

(22)

Model Proses Dengan

Model Proses Dengan

22--Status

Status

(1)(1)

Merupakan model proses paling

sederhana

Setiap proses akan selalu berada pada salah satu

Setiap proses akan selalu berada pada salah satu

dari 2 status berikut:

Running

(23)

Model Proses Dengan

Model Proses Dengan

22--Status

Status

(2)(2)

Apa yang dilakukan OS ?

OS membentuk proses baru dilengkapi dengan PCB

p

g p

g

untuk proses tersebut

Masukkan proses baru ke sistem:

Jik tid k d d

R

i

 P l

Jika tidak ada proses yang sedang

Running

 Proses langsung diberi status

Running

 langsung dieksekusi

Jika ada proses yang sedang

Running

 masukkan proses

d t t

N t

i

dengan status

Not-running

Jika proses yang

running

ter-

interrupt

, maka:

OS menjalankan program j p g

dispatcher

p

untuk memilih proses p berikutnya yang akan dieksekusi

(24)

Model Antrian Pada Proses Dengan

Model Antrian Pada Proses Dengan

22--Status

Status

Diagram antrian proses dengan 2-status:

 Hanya digunakan sebuah antrian  di dalam antrian terdapat

berbagai macam status proses (siap

running

ter blok menunggu I/O

berbagai macam status proses (siap

running

, ter-blok, menunggu I/O, dll)

 Kelemahan:

Pemilihan proses selanjutnya yang akan dieksekusi tidak cukup hanya

(25)

Model Proses Dengan

Model Proses Dengan

55--Status

Status

Proses dengan 5-status:

Terminate

Proses yang sedang antri dikelompokkan menjadi 2:

(26)

Nama Status

Nama Status

pada proses dengan

pada proses dengan

55--status

status

(1)(1)

New

:

Status untuk proses yang baru saja terbentuk

Status untuk proses yang baru saja terbentuk

Misal:

log on

dari

user

, buka MS-word, dll

Program dan data

tidak langsung ditaruh ke

Program dan data

tidak langsung ditaruh ke

memori

, jika:

Jumlah proses yang sedang ditangani sudah

maksimum

agar performansi

sistem terjaga

Memori tidak mencukupi

R d

Ready

:

(27)

Nama Status

Nama Status

pada proses dengan

pada proses dengan

55--status

status

(2)(2)

Running

:

Proses

sedang

g

dieksekusi

Dalam satu saat

hanya satu proses

yang boleh

running

(uniprosesor)

l k d

Blocked

:

Proses yang

terpaksa berhenti

karena sedang

t

t

t j di

menunggu suatu

event

terjadi

Misal: proses yang sedang menunggu selesainya aktifitas di I/O

Exit

:

Exit

:

(28)

Model Proses Dengan

Model Proses Dengan

55--Status

Status

Proses dengan 5-status:

Terminate

Proses yang sedang antri dikelompokkan menjadi 2:

(29)

Perpindahan Status

Perpindahan Status

Untuk Proses

Untuk Proses

55--Status

Status

(1)(1)

Null

New

:

Pembentukan

proses baru

New

Ready

:

New

Ready

:

Penambahan proses baru

yang siap dieksekusi

Proses baru telah ‘diakui’ oleh sistem operasi

Proses dipindah dari

harddisk

ke memori

Proses dipindah dari

harddisk

ke memori

Ready

Running

:

Satu

proses

terpilih

dieksekusi

R

i

E it

Running

Exit

:

Proses

telah selesai

atau dibatalkan

Running

g

Ready

y

:

Proses yang sedang

running

dipaksa berhenti

(30)

Perpindahan Status

Perpindahan Status

Untuk Proses

Untuk Proses

55--Status

Status

(2)(2)

Running

Blocked

:

Proses yang sedang

running

terpaksa

berhenti

Proses yang sedang

running

terpaksa

berhenti

Penyebab:

Sedang menunggu

file

yang sedang diakses oleh proses lain

Sedang menunggu proses di I/O selesai

Butuh memori lebih besar

Sedang menunggu data g gg hasil eksekusi proses lainp

Sedang menunggu proses yang akan diajak berkomunikasi tetapi sedang sibuk

Blocked

Ready

:

Blocked

Ready

:

Proses terbebas dari

blocked

setelah

event

yang

ditunggu telah tersedia

d tu ggu te a te sed a

(31)

Perpindahan Status

Perpindahan Status

Untuk Proses

Untuk Proses

55--Status

Status

(3)(3)

Ready

Exit:

Proses yang siap dieksekusi dipaksa keluar (terminasi)

y g

p

p

(

)

Penyebab:

Proses anak yang ‘dibunuh’ oleh proses induk Dih tik l h

Dihentikan oleh

user

Blocked

Exit:

Proses yang terblok diterminasi

Proses yang terblok diterminasi

(32)

Eksekusi Proses Dengan

Eksekusi Proses Dengan

Dua

Dua

Antrian

Antrian

(1)(1)

Cara kerja:

Cara kerja:

 Proses baru 

Ready queue

Jika tidak ada proses yang running  langsung dieksekusi

 P d

i

l i/t bl k  Pilih t

 Proses yang sedang

running

selesai/ter-blok  Pilih satu proses di

ready queue

untuk dieksekusi

(33)

Eksekusi Proses Dengan

Eksekusi Proses Dengan

Dua

Dua

Antrian

Antrian

(2)(2)

Apa kelemahan sistem dengan 2 antrian ?

Jika proses yang ter-blok sangat banyak dan masing-

p

y g

g

y

g

masing menunggu

event

yang berbeda-beda

Jika

datang suatu

event, maka

OS

harus menyeleksi

d

b t hk

t

proses yang mana yang sedang membutuhkan

event

yang

datang

butuh waktu

butuh algoritma lebih rumit

(34)

Eksekusi Proses Dengan

(35)

Eksekusi Proses Dengan

Eksekusi Proses Dengan

Banyak

Banyak

Antrian

Antrian

(2)(2)

Cara kerja:

Sama seperti pada eksekusi proses dengan dua antrian

p

p

p

g

Bedanya untuk setiap

event

yang berbeda

disediakan

sebuah antrian tersendiri

l b h

Kelebihan:

Jika suatu

event

yang ditunggu telah tiba

pemilihan

proses yang membutuhkan

event

tersebut

lebih mudah

proses yang membutuhkan

event

tersebut

lebih mudah

dan cepat

(algoritmanya lebih sederhana)

Pengembangan lebih lanjut

g

g

j

:

Jika terdapat proses dengan prioritas berbeda

untuk

(36)

Model Proses Dengan

Model Proses Dengan

66--Status

Status

di harddisk di harddisk

(37)

Mengapa perlu ada

Mengapa perlu ada

suspend state

suspend state

?

?

(1)(1)

Memori telah dipenuhi oleh proses atau bagian

proses yang berada pada status

blocked

akibat

p

y g

p

sedang menunggu suatu

event

(I/O, memori, dll),

sehingga tidak ada proses yang siap dieksekusi

,

k

maka:

Semua proses menunggu

Prosesor menganggur

Prosesor menganggur

Semakin lama ukuran program semakin besar,

maka:

maka:

(38)

Mengapa perlu ada

Mengapa perlu ada

suspend state

suspend state

?

?

(2)(2)

Tambah memori

mahal

Lakukan

swapping

(pindahkan proses yang

Lakukan

swapping

(pindahkan proses yang

berada pada status

blocked

dari memori ke

harddisk

a dd s

)

)

Proses berubah status dari blocked menjadi

suspend

Memori yang kosong bertambah besar:

y g

g

Dapat dimanfaatkan oleh proses yang butuh memori lebih besar, atau

Dapat ditambahkan proses baru ke memori atau Dapat ditambahkan proses baru ke memori, atau

Pindahkan proses lain yang ter-

suspend

dan siap

running

dari

(39)

Referensi:

Referensi:

[STA09] Stallings, William. 2009.

Operating System:

Internal and Design Principles

6

th

edition

Internal and Design Principles

. 6 edition.

Prentice Hall

Referensi

Dokumen terkait

status nutrisi ibu nifas dengan proses penyembuhan luka post operasi sectio. caesarea di

Hasil dari aplikasi data mining dalam menentukan status proses persalinan dengan menggunakan Algoritma C4.5 ini dapat dijadikan sebuah bahan pertimbangan untuk pengguna

o Tiap proses memiliki sebuah Process Control Block (PCB)  Merupakan Struktur data di dalam kernel (in-kernel).  Menampung semua state prosesor virtual Identifier

Jika tidak ada proses yang sedang menjalankan critical section -nya dan jika terdapat lebih dari satu proses lain yang ingin masuk ke critical section , maka

Data Flow Diagram (DFD) juga di kenal sebagai model proses ( process model ) merupakan sebuah teknik analisis yang digunakan untuk menggambarkan aliran input

DFD ( Data Flow Diagram ) digunakan untuk membuat sebuah model sistem informasi dalam bentuk jaringan kerja antar proses yang saling terhubung satu sama lain dengan

Di dalam teori antrian, hubungan antara distribusi Poisson dengan distribusi Eksponensial ditunjukkan pada keterkaitan proses kedatangan pelanggan dengan waktu antar

Kegunaan dari model berbasis ER untuk sebuah model database ontology, menjadi jelas ketika dielaborasi kedalam contoh yang tidak hanya sebuah rantai proses suatu event