Anda di halaman 1dari 10

Konsep

Proses
Kelompok 7
Anggota : Yaumaliza Putra (220212065)
Irfandi Yusran (220212067)
Sulthan Faalih (2202120)
Pendahuluan
Proses didefinisikan sebagai program yang sedang dieksekusi.
Menurut Silberschatz proses tidak hanya sekedar suatu kode
program ( text section), melainkan meliputi beberapa aktivitas
yang bersangkutan seperti program counter dan stack. Sebuah
proses juga melibatkan stack yang berisi data sementara
(parameter fungsi/ metode, return address, dan variabel lokal) dan
data section yang menyimpan variabel-variabel global.
Tanenbaum juga berpendapat bahwa proses adalah sebuah
program yang dieksekusi yang mencakup program counter,
register, dan variabel di dalamnya. Keterkaitan hubungan antara
proses dengan sistem operasi terlihat dari cara sistem operasi
menjalankan/ mengeksekusi proses.
Diagram suatu proses

Running New
Status yang dimiliki pada Status yang dimiliki pada
saat instruksi-instruksi saat proses baru saja dibuat
dari sebuah proses
dieksekusi.

Waiting Terminated
Status yang dimiliki pada Status yang dimiliki pada
saat proses menunggu saat proses telah selesai
suatu sebuah event seperti dieksekusi.
proses M/K.

Ready
Status yang dimiliki pada
saat proses siap untuk
dieksekusi oleh prosesor
Process control
Setiap proses digambarkan dalam sistem operasi oleh
sebuah process control block(PCB) - juga disebut sebuah
control block. Sebuah PCB ditunjukkan dalam Gambar
10.2, Process Control Block. PCB berisikan banyak bagian
dari informasi yang berhubungan dengan sebuah proses
yang spesifik, termasuk hal-hal di bawah ini:
Process Control Block
Status proses
Status new, ready, running, waiting,
halted, dan juga banyak lagi
Program counter
Suatu stack yang berisi alamat dari
instruksi selanjutnya 68 untuk dieksekusi
untuk proses ini

Informasi Manajemen memori

CPU Register
Register bervariasi dalam jumlah dan jenis,
tergantung pada rancangan computer.

Informasi pencatatan

Informasi Status M/K PCB hanya berfungsi sebagai tempat


penyimpanan informasi yang dapat bervariasi
dari proses yang satu dengan yang lain.
Pembentukan proses

Saat komputer berjalan, terdapat banyak proses


yang berjalan secara bersamaan. Sebuah proses dibuat melalui
system call create-process yang membentuk proses turunan
( child process) yang dilakukan oleh proses induk ( parent
process).
Di dalam UNIX daftar dari proses yang sedang
aktif berjalan bisa didapatkan dengan menggunakan perintah
ps, contoh ps -el. Ada dua kemungkinan bagaimana jalannya
( running) proses induk dan turunan.
Bila UNIX menggunakan kemungkinan pertama
(proses baru merupakan duplikasi induknya) maka sistem
operasi DEC VMS menggunakan kemungkinan kedua dalam
pembuatan proses baru yaitu setiap proses baru memiliki
program yang di- load ke ruang alamatnya dan melaksanakan
program tersebut. Sedangkan sistem operasi Microsoft Windows
NT mendukung dua kemungkinan tersebut.
Fungsi Fork
Sistem operasiUNIX mempunyaisystem callfork yang berfungsi
untuk membuat proses baru. Proses yang memanggil system call fork ini
akan dibagi jadi dua, proses induk dan proses turunan yang identik.
Contoh Penggunaan fork()
#include <stdio.h> /standard M/K/
#include <unistd.h> /*fork()*/
#include <sys/types.h> /pid_t/
int main()
{
Pid_t pid; pid
= fork();
if (pid < 0) {//terjadi error fprintf(stderr,"Fork Gagal"); exit(-1);
} else if (pid == 0) {//proses anak execlp("/bin/ls","ls",NULL);
} else {//proses induk wait(NULL);printf("Proses anak selesai"); exit(0);
}
}
Source code diatas, adalah contoh penggunaan fork() dengan
menggunakan bahasa C. Tipe data pid_t merupakan signed integer yang
sebenernya dalam pustaka GNU. Tipe ini adalah int, fungsinya adalah
merepresentasikan PID.
Terminasi Proses
Suatu proses diterminasi ketika
proses tersebut telah selesai mengeksekusi
perintah terakhir atau diterminasi dengan
sengaja oleh proses lain, biasanya proses induk
yang melakukan hal ini.
Biasanya proses induk melakukan terminasi
sengaja pada turunannya. Alasan terminasi
tersebut seperti:
1. Turunan melampaui penggunaan sumber-daya
yang telah dialokasikan. Dalam keadaan ini,
proses induk perlu mempunyai mekanisme untuk
memeriksa status turunannya-nya.
2. Task yang ditugaskan kepada turunan tidak lagi
diperlukan.
3. Proses induk selesai, dan sistem operasi tidak
mengizinkan proses turunan untuk tetap berjalan.
Jadi, semua proses turunan akan berakhir pula.
Hal ini yang disebut cascading termination.
Proses Linux
Sebuah proses adalah konteks dasar dimana semua permintaan user dilayani sistem operasi. Agar menjadi
kompatibel dengan sistem UNIX lainnya, Linux harus menggunakan model proses yang sama dengan sistem
UNIX lainnya.Berikut identitas proses yang isinya berupa:

PID Credentials
PIDs digunakan . Setiap proses Personality
untuk menetapkan harus memiliki
proses ke sistem hubungan antara Dapat sedikit
operasi ketika user ID dengan memodifikasi
sebuah aplikasi group ID yang semantics of
membuat System menentukan hak system calls.
call untuk sinyal, sebuah proses
modifikasi, atau untuk mengakses
menunggu proses sumberdaya sistem
lain. dan file.
Sekian
Terima Kasih

Anda mungkin juga menyukai