Anda di halaman 1dari 12

K

E
L
O
Created by Group Three :
M
1. Resa Ivany
P 2. Ajeng Lanjar Fitriani
Fatimah
O
3.
4. Diky Prayogo
Mohamad Fauzan
K
5.
6. Muhammad Rivai Syukur
7. Ahmad Noviansyah
8. Firman Adi
Pengertian

UNIX merupakan sebuah sistem operasi (OS) yang


dikembangkan pada tahun 1969 melalui project
sebelumnya yang bernama Multiplexed Information and
Computing Service atau disingkat Multics.

Dengan harapan UNIX ini menjadi sistem operasi yang


dapat melakukan multitasking, portable dan dapat
digunakan oleh lebih dari satu pengguna (multiuser).
Project ini dibiayai sepenuhnya oleh Departemen
Pertahanan Amerika (DARPA).
MANAJEMEN PADA PROSES
UNIX
Pada UNIX mengunakan fasilitas proses yang sederhana namun
sangat kuat dan visible bagi user. UNIX melakukan eksekusi
dalam lingkungan proses user, dan diperlukan dua mode yaitu:
mode kernel dan mode user. Juga menggunakan dua kategori
proses seperti proses system dan proses- proses user.

Proses user berjalan di dalam mode user untuk


mengeksekusi program – program user dan utilitas dan
beroperasi pada mode kernel untuk mengeksekusi instruksi-
instruksi milik kernel. Proses user akan masuk ke mode
kernel dengan mengirimnya system call pada saat exception
(fault) dibuat atau pada saat terjadi interrupt.
fork

PREEMPTED
CREATED

preempted
Swap out
READY READY
USER
TO RUN TO RUN
RUNNING
IN Swap in SWAPPED
MEMORI
KERNEL
RUNNIN
G
wakeup
wakeup

exit

ASLEEP Swap out


SLEEP
ZOMBIE IN SWAPPE
MEMORY D
Keadaan proses pada system UNIX memiliki
Sembilan keadaan proses, di antarannya :

1. User running : pengeksekusian di dalam mode user.


2. Kernel running : pengeksekusian di dalam mode kernel.
3. Ready to run, in memori : siap untuk berjalan sesaat kernel telah
menjadwalkannya.
4. Asleep in memori : tidak dapat melakukan eksekusi sampai terjadi suatu
event, proses berada pada memori utama.
5. Ready to run, swapped : proses telahsiap untuk berjalan, namun swapper
harus men-swap proses ke dalam memori utama sebelum kernel dapat
menjadwalkan untuk diekseskusi.
6. Sleeping swapped : proses sedang menunggu event dan telah di-swap ke
penyimpanan sekunder.
7. Preempted ; proses kembali dari mode kernel ke mode user, namun kernel
merebutnya dan melakukan proses switch untuk menjadwalkan proses lain.
8. Created : proses baru saja dibuat dan belum siap untuk di jalankan.
9. Zombie : proses sudah tidak ada lagi, namun proses tersebut meninggalkan
catatan bagi proses induknya untuk dikumpulkan.
10.Interrupt : suatu kejadian atau peristiwa yang menyebabkan mikrokontroler
berhenti sejenak untuk melayani interrupt tersebut .
11. Swap in dan swap out : dilakukan ketika waktu kuantum
berakhir , memory manager akan mengeluarkan (swap out)
proses yang telah selesai menjalani waktu kuantumnya pada
suatu saat serta memasukan (swap in) proses lain kedalam
memori yang telah bebas tersebut .
12. Fork : salah satu cara untuk membuat sebuah proses baru
pada sistem unix . Fork membuat duplikasi yang mirip dengan
proses aslinya , termasuk file descriptor , register dan lainya .
Setelah perintah fork , child akan mengeksekusi kode yang
berbeda dengan parentnya .
13. Wake up : sistem call yang membuat proses yang memanggil
menjadi ready .
14.Return : untuk memberitahu kepada sistem operasi seperti
pada unix atau ms/windows bahwa program telah berakhir
secara normal dengan status = 0
15.Exit : keluar dari shell pada bourne shell dan korn shell .
Proses didalam system operasi UNIX merupakan himpunan struktur
data yang agak kompleks yang menyediakan sejumlah informasi yang di
perlukan untuk mengelola dan mengirim proses, elemen-elemen
prosesimage pada system operasi UNIX diorganisasikan menjadi tiga
bagian :

1. Konteks tingkat pengguna : pada konteks ini terdiri :


2. Proses text : intruksi mesin yang dapat di eksekusi yang terdapat di dalam suatu program.
3. Proses data : suatu data yang dapat diakses oleh proses.
4. User stack : merupakan suatu kumpulan stack yang berisi argument-argument, variable local
dan pointer untuk dieksekusi dalam mode pengunaan.
5. Shared memori ; memori yang digunakan bersama dengan proses proses lainnya, di gunakan
untuk interprocess komunikasi.
6. Konteks register : pada konteks register terdiri atas :
7. Program counter : merupakan alamat instruksi berikutnya yang akan di eksekusi.
8. Process status register : merupakan suatu keadaan perangkat keras pada saat preemption.
9. Stack pointer : merupakan suatu penunjuk stack, yang menunjukan kebagian paling atas dari
stack kernel atau stack user.
10. General purpose user : merupakan perangkat keras dependen.
11. Konteks tingkat system
12. Proses table entry : yang merupakan proses yang
menentukan keadaan suatu proses, informasi ini akan selalu
dapat di akses oleh system operasi.
13. User area : informasi pada control proses yang di perlukan
untuk hanya dapat diakses di dalam konteks proses.
14. Peer process region table : berfungsi untuk menentukan
pemetaan dari alamat virtual ke dalam alamat fisik, juga berisi
permission field yang mengindikasikan jenis akses yang di-
izinkan oleh proses, seperti read-only, read-write, atau read-
execute.
15. Kernel stack : berisi stact frame procedure-procedure
kernel pada saat proses proses melakukan eksekusi dalam
mode kernel.
Pembuatan proses di dalam operasi
system UNIX di lakukan dengan
menggunakan kernel system call yang di
sebut dengan fork().
Apabila sebuah proses mengeluarkan permintaan
fork(), maka system operasi melakukan fungsi-
fungsi sebagai berikut ;

- Mengalokasikan sebuat slot di dalam table proses bagi proses


yang baru,
- Meng-assign ID proses yang unik ke proses anak,
- Membuat salinan proses image proses induk,kecuali memori
yang di gunakan secara bersamaan.
- Menambah counter bagi seluruh file miliki proses induknya,
untuk merefleksikan bahwa ada proses tambahan yang
memiliki file-file yang sama.
- Meng-assign proses anak ke dalam keadaan ready to run.
- Mengembalikan nomor ID proses anak ke proses induk, dan
sebuah nilai 0 ke proses anak.
Semua fungsi-fungsi di atas dilakukan dalam mode kernel di
dalam proses induk. Setelah semua fungsi-fungsi di atas,
maka kernel dapat melakukan salah satu diantara fungsi di
bawah ini :

- Fungsi tetap berada dalam proses induk,


sedangkan control dikembalikan ke mode
user pada lokasi fork call proses induk.
- Fungsi memindahkan control ke proses anak,
proses anak akan mulai mengeksekusi pada
titik-titik yang sama dengan kode proses
induk, yaitu pada titik kembali pada fork call.
- Memindahkan control proses lainnya. Baik
proses induk maupun proses anak dibiarkan
di dalam keadaan ready to run
TERIMA KASIH

Anda mungkin juga menyukai