SISTEM OPERASI PROSES id. pptx

PROSES
Sources :
Hariyanto, Bambang. 2012. “Sistem Operasi, Revisi Kelima, Bandung:
Informatika Bandung
http://www.youtube.com/watch?v=tfvOSqmg0vk&index=2&list=PLLDC7
0psjvq5hIT0kfr1sirNuees0NIbG
images.google.com
http://nugan88.wordpress.com/2011/10/03/deadlock-pada-sistem-opera
si/
http://siber.cankaya.edu.tr/OperatingSystems/ceng328/node124.html

Tujuan Pembelajaran
• Memahami apa itu proses
• Mehamami kinerja sistem dalam
pengeksekusian program
• Mengenali berbagai macam
scheduling/penjadwalan
• Menelaah tentang hal-hal yang dapat
mempengaruhi pemrosesan

Apa itu proses?

Proses adalah keadaan ketika sebuah program
sedang di eksekusi
Merupakan unit kerja terkecil yang memiliki
sumber daya dan penjadwalan

Executing Program
When a program is being executed they posses a typical
characteristics :
1. CPU Burst (A time where the program is executed)
2. I/O Burst (A time where the program is performing
I/O operations)

The CPU can only access the data and the program from
the main memory. A loader is a part of the system that
moves the data and the program that are meant to be
executed, from the the secondary storage to the main
memory

Diagram State Proses (Tiga
Keadaan)

New job / state :
User mencoba untuk menjalankan
program
Ready state :
Program sudah dimuat di main memory
Active state :
Program sedang dieksekusi
Halted :
Program sudah keluar dari sistem
Waiting :
Program melakukan I/O operation

Priority Scheduling
Priority scheduling can be either preemptive or nonpreemptive. When a
process arrives at the ready queue, its
priority is compared with the priority of
the currently running process.
1. A pre-emptive priority scheduling
algorithm will preempt the CPU if
the priority of the newly arrived

process is higher than the priority
of the currently running process.
2. A nonpreemptive priority
scheduling algorithm will simply
put the new process at the head of
the ready queue

Improved State Diagram

Schedulings

Diagram State Proses (Lima
Keadaan) [Suspension]
Swapping involves moving part or
all of a process from main memory
to disk. When none of the
processes in main memory is in the
Ready state, the operating swaps
one of the Blocked processes out
onto disk into a Suspended Queue.

This is a Queue of existing
processes that have been
temporarily kicked out of main
memory, or suspended. The
operating system then brings in
another process from the
Suspended queue, or it honors a
new process request. Execution
then continues with the newly
arrived process or management.

Pengendalian Proses oleh Sistem Operasi

1. Saling melanjutkan (interleave)
Sistem operasi harus saling melanjutkan eksekusi proses untuk
memaksimalkan penggunaan pemroses

2. Mengikuti kebijaksanaan tertentu
Sistem operasi harus mengalokasikan sumber daya ke
proses-proses mengikuti kebijaksanaan yang ditentukan

(ex : priority scheduling) sambil menghindari deadlock

3. Mendukung komunikasi antar proses dan penciptaan
proses

Deadlock

Deadlock adalah
keadaan dimana 2 atau
lebih proses saling
menunggu meminta
resources untuk waktu
yang tidak terbatas
lamanya. Analoginya
seperti pada kondisi
jalan raya dimana
terjadi kemacetan
parah.

Istilah

Multiprogramming/Multitasking
Multiprocesing
Distributed Processing

Multiprogramming/Multitasking
Multiprogramming (multitasking)
adalah manajemen banyak proses
di satu pemroses. Pada
multiprogramming, pemakai
memandang terdapat banyak
proses dijalankan bersama pada
suatu saat. Masing-masing proses
mendapat bagian memori dan
kendali sendiri. Sistem operasi
mengalih-alihkan layanan
pemroses di antara proses-proses
tersebut. Proses-proses yang
dijalankan di sistem
multiprogramming sebenarnya
bersifat sebagai saling tidak

bergantung dan satu program pada
satu saaat.

Multiprocesing
Multiprocessing adalah
manajemen banyak proses di
komputer multiprocessor,
dulunya multiprocessor hanya
terdapat di sistem besar yaitu
sistem mainframe dan
minicomputer. Saat ini
komputer workstation pun
telah dapat dilengkapi
multiprocessor. Multiprocessor
dimaksudkan untuk
peningkatan kerja dan
dapatmemberikan kemampuan
fault tolerant.

Distributed Processing

Distributed processing adalah
manajemen banyak process yang
dieksekusi di banyak sistem
komputer yang tersebar di satu
jaringan. Idealnya, pemrogram
tidak perlu menyadari keberadaan
banyak pemroses. Kecenderungan
masa yang akan datang adalah
menuju komputasi tersebar
(distributed computing). Banyak
riset dan pengembangan sistem
operasi tersebar diantaranya
adalah AMOEBA, MACH, dan
sebagainya.

IMPLEMENTASI
PROSES & TAHAP
PENCIPTAAN
PROSES


Company LOGO

@Sandy

LOGO

TABEL-TABEL PROSES
Beragam Tabel atau SenaraI :

Tabel Informasi Manajemen Mem

Tabel Informasi Manajemen I/O
Tabel Informasi Sistem File
Tabel Proses

LOGO

1. Tabel Informasi Manajemen
Memori


a. Alokasi

memori utama yang dipakai

proses
b. Alokasi memori sekunder yang
dipakai proses (lakukan swapping)
c. Atribut segmen memori utama dan
sekunder
d. Informasi-informasi lain.

2. Tabel Informasi Manajemen
I/O
Fungsi : mengelola perangkat I/O.
LOGO

Sistem Operasi perlu mengetahui status
operasi I/O dan lokasi memori utama
yang digunakan untuk transfer data.


LOGO

3. Tabel Informasi Sistem
File

Sistem File
Bagian dari OS yang melakukan
write, exe, modify, copy dan read.
Tabel ini berisi informasi mengenai
ekstensi file.
Lokasi : Memori Sekunder

LOGO

4. Tabel Proses

Mengelola informasi proses di
sistem operasi.
Lokasi : Memori.

LOGO

ELEMEN CITRA
PROSES

Elemen
Data User

Deskripsi
Memodifikasi data program,
daerah stack user.

Program User
Stack Sistem

Program Biner
Menyimpan parameter dan
alamat panggil (system calls)

PCB (Program
Control Block)

Informasi – informasi untuk
mengendalikan proses

LOGO

Struktur Tabel Kendali Pada Sistem
OS

LOGO

LOGO

PCB & SENARAI
PROSES
PCB berisi informasi mengenai

proses yang diperlukan sistem
operasi. Kumpulan PCB
mendefinisikan state sistem operasi.
PCB dimodifikasi :
a.Penjadwalan
b.Alokasi sumber daya
c.Pemrosesan interupsi
d.Monitoring
e.Analisis kinerja

LOGO

LOGO

Senarai Proses
Senarai adalah link atau yang terkait.

Proses Running (PCB berada di senarai
Running) dipindah sesuai state yang dialami
proses, sebagai berikut :
a.Bila proses berakhir maka jalankan operasi
terminasi sehingga PCB tidak ada lagi
b.Bila proses di-block karena menunggu alokasi
sumber daya maka PCB dipindah ke senarai
Blocked
c.Bila proses dijadwalkan habis jatah waktu
eksekusinya maka PCB dipindahkan ke senarai
Ready.

LOGO

PCB (Printed Circuit Board) ≠
PCB (Program Control Block)

ed
t
n
i
Pr
rd
a
o
B

cu
Cir

it

LOGO

PENGAKSESAN INFORMASI DI
PCB

2 masalah utama proteksi terhadap PCB :
a.Bug (kesalahan pemograman) pada rutin
tunggal.
b.Perubahan rancangan struktur dan
semantics PCB
Kedua masalah agar dapat melewati rutin
khusus.

LOGO

PENGAKSESAN
INFORMASI …

Tugas Rutin adalah memproteksi PCB
dan menjadi perantara pembacaan dan
penulisan PCB.
a.Masalah pertama dapat dicegah
b.Masalah kedua jelas langsung teratasi.
Pengaksesan langsung pada PCB lebih
cepat daripada harus memanggil rutin
penanganan PCB.

TAHAP TAHAP PENCIPTAAN
PROSES
Penciptaan proses dapat disebab kan
beragam sebab seperti dibawah ini :
LOGO

LOGO

TAHAP TAHAP …

Penciptaan Proses melibatkan banyak aktivitas,
yaitu :
1. Menamai atau (memberi identitas) proses
yang akan diciptakan dengan process id.
2. Menyisipkan proses pada senarai proses atau
tabel proses.
3. Menentukan prioritas awal proses.
4. Menciptakan PCB.
5. Mengalokasikan sumber daya – sumber daya
awal bagi proses.

Tahap- Tahap penciptaan proses adalah
sebagai berikut :
a.Diberikan satu identifier unik ke proses
baru, isian baru ditambahkan ke table
proses utama yang berisi satu isian per
proses.
b.Dialokasi ruang untuk proses
c.PCB harus diinisialisasi
d.Kaitan-kaitan antartabel dan senarai
yang cocok dibuat.
e.Bila diperlukan struktur data yang lain
maka segera dibuat struktur data itu.

3.5 Pengalihan Proses

Masalah 1 :
Apa kejadian-kejadian yang memicu alih proses.
1. Interupsi sistem
2. Trap
3. Supervisor Call

1. Interupsi sistem
Interupsi sistem disebabkan kejadian eksternal
dan tidak bergantung proses yang saat itu sedang
dalam state Running.
Pada kejadian interupsi, kendali lebih dulu
ditranfer ke interupt handler yang melakukan
penyimpanan data-data dan kemudian beralih ke
rutin sistem operasi yang berkaitan dengan tipe
interupsi itu.*1
Contoh :
Selesainya proses masukan/ keluaran.

Ada beberapa tahapan dalam penanganan
interupsi:[1]
 Controller mengirimkan sinyal interupsi melalui

interrupt-request-line
 Sinyal dideteksi oleh prosesor
 Prosesor akan terlebih dahulu menyimpan
informasi tentang keadaan state-nya (informasi
tentang proses yang sedang dikerjakan)

 Prosesor mengidentifikasi penyebab interupsi dan

mengakses tabel vektor interupsi untuk
menentukan interrupt handler
 Transfer kontrol ke interrupt handler
 Setelah interupsi berhasil diatasi, prosesor akan
kembali ke keadaan seperti sebelum terjadinya
interupsi dan melanjutkan pekerjaan yang tadi
sempat tertunda.

Tipe-tipe interupsi

1. Interupsi clock
2. Interupsi masukan/keluaran
3. Page/ memory fault

Trap
Interupsi karena terjadinya kesalahan atau kondisi
kekecualian (exception conditions) yang di
hasilkan proses yang Running, seperti usaha
ilegal dalam mengaskses file.

Supervisor Call
Yaitu panggilan meminta atau
mengaktifkan bagian SO.
Contoh : Proses pemakai running
meminta layanan masukan/ keluaran
seperti membuka file. Panggilan ini
menghasilka transfer rutin bagian
sistem operasi. Biasanya, penggunaan
sistem call membuat proses pemakain
blocked karena diaktifkannya proses
karnel (sistem operasi).

Masalah 2 :
Terdapatnya perbedaan anatara alih proses dan
alih konteks
Pengalihan Konteks
Dapat terjadi tanpa pengalihan state proses yang
sedang running, sedang pengalihan proses pasti
melibatkan juga pengalihan konteks.
Siklus penanganan interupsi adalah :
1. Pemroses menyimpan konteks program saat itu
yang sedang dieksekusi ke stack.
2. Pemroses menge-set register PC dengan alamat
awal program untuk interupsi handler.

Pengalihan Proses
Dapat terjadi jika proses yang running beralih
menjadi state lain(ready,blocked, dan
sebagainya), kemudian sistem operasi harus
membuat perubahan bararti terhadap
lingkungannya.

3.6 Kedudukan Sistem Operasi
 Sistem operasi sebagai kernel tersendiri yang

berbeda dengan proses-proses lain(kernel sebagai
non-proses).
 Fungsi-fungsi sistem operasi di eksekusi dalam
proses pemakai.
 Sistem operasi juga sebagai kumpulan proses.

1. Kernel Sebagai Non-Proses

Ketika proses running diinterupsi atau memanggil sistem
call maka konteks pemroses dari proses ini disimpan dan
kendali dilewatkan ke kernel. Sistem operasi mempunyai
daerah memori dan Stack sendiri untuk pemanggilan
prosedur didalamnya.
Sistem operasi melakukan fungsi yang diinginkan proses
pemakai dan mengembalikan konteks proses yang
diinterupsi. Eksekusi proses pemakai yang diinterupsi
dilanjutkan kembali.

Dieksekusi dalam Proses Pemakai

Ketika interupsi , trap atau supervisor call terjadi ,
pemroses ditempatkan ke mode kernel dan
kendali dilewatkan ke system operasi konteks.
Pemroses disimpan dan alih konteks ke rutin
sistem operasi. Eksekusi dilanjutkan dalam proses
pemakai saat itu, tidak dilakukan proses, hanya
alih di konteks yang sama.

Sistem Operasi Sebagai Kumpulan Proses

Fungsi-fungsi kernel utama di organisasi sebagai
proses proses terpisah. Terdapat kode kecil
pengalihan proses yang di eksekusi di luar proses.
Pendekatan ini mempunyai beberapa keunggulan,
yaitu :
 Perancangan modular dapat diterapkan ke
perancangan sistem operasi.
 Fungsi-fungsi sistem operasi tak-kritis secara
bagus dapat diimplementasikan sebagai prosesproses terpisah.
 Mudah diterapkan pada lingkungan
multiprocessor atau multicomputer.

DAFTAR PUSTAKA
DR. Bambang hariyanto. 2009.”Sistem Operasi”,
Revisi keempat, penerbit : INFORMATIKA.
http://manajemenmemori.wordpress.com/2010/10/3
1/konkurensi-dan-keamanan/
[1]

TERIMA KASIH