Process: Difference between revisions
Created page with "Proses adalah program yang sedang dieksekusi. Proses merupakan unit kerja terkecil yg secara individu memiliki sumber daya dan merupakan unit terkecil yg dijadwalkan oleh sist..." |
No edit summary |
||
| Line 4: | Line 4: | ||
Proses merupakan unit pemilikan sumber daya sedangkan thread adalah unit penjadwalan. | Proses merupakan unit pemilikan sumber daya sedangkan thread adalah unit penjadwalan. | ||
==Istilah pada Proses== | ==Istilah pada Proses== | ||
#Multiprogramming (Multitasking) | #Multiprogramming (Multitasking) | ||
#Multiprocessing | #Multiprocessing | ||
#Distributed Processing/Computing | #Distributed Processing/Computing | ||
===Multiprogramming (Multitasking)=== | ===Multiprogramming (Multitasking)=== | ||
Adalah manajemen banyak proses di satu pemroses. | Adalah manajemen banyak proses di satu pemroses. | ||
| Line 16: | Line 18: | ||
Proses-proses yang dijalankan pada multitasking adalah sebagai berikut | Proses-proses yang dijalankan pada multitasking adalah sebagai berikut | ||
#Saling tidak bergantung (independent), proses dilakukan scr terpisah & tidak saling mempengaruhi. | #Saling tidak bergantung (independent), proses dilakukan scr terpisah & tidak saling mempengaruhi. | ||
#Satu Program pada satu saat (one program at any instant), pada satu saat sesungguhnya hanya satu proses yg dilayani pemroses, menggunakan interleave (saling melanjutkan/bersambung) bukan overlap diantara program-program. | #Satu Program pada satu saat (one program at any instant), pada satu saat sesungguhnya hanya satu proses yg dilayani pemroses, menggunakan interleave (saling melanjutkan/bersambung) bukan overlap diantara program-program. | ||
===Multiprocessing=== | ===Multiprocessing=== | ||
Adalah manajemen banyak proses di komputer multiprocessor (banyak pemroses di dalamnya). | Adalah manajemen banyak proses di komputer multiprocessor (banyak pemroses di dalamnya). | ||
| Line 24: | Line 28: | ||
SO MS-Win NT, UNIX dan Linux telah menyediakan dukungan multiprocessor. | SO MS-Win NT, UNIX dan Linux telah menyediakan dukungan multiprocessor. | ||
===Distributed Processing=== | ===Distributed Processing=== | ||
Adalah manajemen banyak proses yg dieksekusi di banyak sistem komputer yg tersebar (terdistribusi) di satu jaringan. Pada sistem operasi tersebar yg ideal, program tidak perlu menyadari keberadaan banyak pemroses. | Adalah manajemen banyak proses yg dieksekusi di banyak sistem komputer yg tersebar (terdistribusi) di satu jaringan. Pada sistem operasi tersebar yg ideal, program tidak perlu menyadari keberadaan banyak pemroses. | ||
Terdapat 3 state dasar pada proses | Terdapat 3 state dasar pada proses | ||
{| class="wikitable" | {| class="wikitable" | ||
|+Tiga State dasar pada Proses | |+Tiga State dasar pada Proses | ||
| Line 42: | Line 48: | ||
Contoh: menunggu selesainya operasi I/O device | Contoh: menunggu selesainya operasi I/O device | ||
|} | |} | ||
==Pengertian Threads== | ==Pengertian Threads== | ||
Thread adalah sebuah pengontrol aliran program pelaksanaan program dengan menggunakan kendali tunggal. | Thread adalah sebuah pengontrol aliran program pelaksanaan program dengan menggunakan kendali tunggal. | ||
===Apa yang dimiliki oleh Thread=== | ===Apa yang dimiliki oleh Thread=== | ||
*Status eksekusi thread (running, ready, terminated) | *Status eksekusi thread (running, ready, terminated) | ||
| Line 55: | Line 63: | ||
**Memori dan resource digunakan bersama-sama oleh semua thread dari sebuah proses (share) | **Memori dan resource digunakan bersama-sama oleh semua thread dari sebuah proses (share) | ||
Thread memungkinkan beberapa eksekusi berlangsung dalam lingkup proses yang sama. | Thread memungkinkan beberapa eksekusi berlangsung dalam lingkup proses yang sama. | ||
===2 Jenis Thread=== | ===2 Jenis Thread=== | ||
*Lightweight Process | *Lightweight Process | ||
Latest revision as of 06:08, 3 November 2021
Proses adalah program yang sedang dieksekusi. Proses merupakan unit kerja terkecil yg secara individu memiliki sumber daya dan merupakan unit terkecil yg dijadwalkan oleh sistem operasi.
Pada Sistem Operasi modern membedakan antara proses dan thread.
Proses merupakan unit pemilikan sumber daya sedangkan thread adalah unit penjadwalan.
Istilah pada Proses
- Multiprogramming (Multitasking)
- Multiprocessing
- Distributed Processing/Computing
Multiprogramming (Multitasking)
Adalah manajemen banyak proses di satu pemroses.
Kebanyakan workstation adalah sistem pemroses tunggal yg menjalankan SO multitasking, seperti MS-Win98, MS-Win XP, OS/2 dan Mac OS7.
Pada multitasking, user memandang terdapat banyak proses dijalankan secara bersamaan pada satu saat.
Proses-proses yang dijalankan pada multitasking adalah sebagai berikut
- Saling tidak bergantung (independent), proses dilakukan scr terpisah & tidak saling mempengaruhi.
- Satu Program pada satu saat (one program at any instant), pada satu saat sesungguhnya hanya satu proses yg dilayani pemroses, menggunakan interleave (saling melanjutkan/bersambung) bukan overlap diantara program-program.
Multiprocessing
Adalah manajemen banyak proses di komputer multiprocessor (banyak pemroses di dalamnya).
Dulunya multiprocessor hanya terdapat pd komputer besar, yaitu sistem mainframe, namun saat ini komputer workstation pun telah dapat dilengkapi multiprocessor.
SO MS-Win NT, UNIX dan Linux telah menyediakan dukungan multiprocessor.
Distributed Processing
Adalah manajemen banyak proses yg dieksekusi di banyak sistem komputer yg tersebar (terdistribusi) di satu jaringan. Pada sistem operasi tersebar yg ideal, program tidak perlu menyadari keberadaan banyak pemroses. Terdapat 3 state dasar pada proses
| State | Diskripsi |
|---|---|
| Running | Pemroses sedang mengeksekusi instruksi proses tersebut |
| Ready | Proses siap (ready) dieksekusi tapi pemroses tidak mengeksekusi proses ini |
| Blocked | Proses menunggu kejadian tertentu selesai.
Contoh: menunggu selesainya operasi I/O device |
Pengertian Threads
Thread adalah sebuah pengontrol aliran program pelaksanaan program dengan menggunakan kendali tunggal.
Apa yang dimiliki oleh Thread
- Status eksekusi thread (running, ready, terminated)
- Running-> Sebuah thread yang sedang dieksekusi dan didalam control dari CPU.
- Ready-> Thread yang sudah siap untuk dieksekusi, tetapi masih belum ada kesempatan untuk melakukannya.
- Terminated-> Status yang dimiliki pada saat proses telah selesai dieksekusi.
- Simpanan konteks thread (pada saat tidak running)
- Stack eksekusi
- Beberapa storage statis untuk menyimpan variabel lokal
- Hak akses ke memori dan resource yang dimiliki oleh proses
- Memori dan resource digunakan bersama-sama oleh semua thread dari sebuah proses (share)
Thread memungkinkan beberapa eksekusi berlangsung dalam lingkup proses yang sama.
2 Jenis Thread
- Lightweight Process
Merupakan thread yang mempunyai beberapa properti dari sebuah proses.
- Multithreading
Merupakan kemampuan sistem operasi dalam mengeksekusi banyak thread yang berasal dari sebuah proses Thread Model:

Keuntungan dari penerapan Thread
- Pembentukan suatu thread jauh lebih cepat daripada pembentukan proses baru.
- Penelitian menunjukkan pembentukan thread 10 kali lebih cepat daripada pembentukan proses.
- Terminasi suatu thread jauh lebih cepat daripada terminasi proses.
- Perpindahan eksekusi antar thread jauh lebih cepat.
- Antar thread dapat berkomunikasi tanpa melibatkan kernel.
- Sebagai efek dari penggunaan share memori dan file.
Kapan Menggunakan Thread
- Thread cocok digunakan untuk program yang melakukan task secara bersamaan atau memiliki sejumlah task yang dapat diselesaikan secara paralel untuk menghasilkan hasil.
- Saat membuat program menggunakan thread. kita harus mengatur program tersebut agar berbagai task tersebut dapat dijalankan secara bersamaan.
Contoh : Masalah grafis komputer (ray tracing), manipulasi matriks.