You are on page 1of 3

KONSEP PROSES PADA SISTEM OPERASI LINUX

Proses merupakan konsep pokok pada sistem operasi, karena salah satu tugas utama sistem
operasi adalah
bagaimana mengatur proses – proses yang berjalan di sistem. Sebenarnya apakah Proses itu?
Berikut beberapa definisi proses pada sistem operasi adalah :
1. Program yang sedang dalam keadaan dieksekusi.
2. Unit kerja terkecil yang secara individu memiliki sumber daya dan dijadwalkan oleh
sistemoperasi. Sistem operasi mengolah seluruh proses yang ada di sistem dan bertugas
mengalokasikan sumber daya –sumber daya ke proses yang membutuhkan sesuai dengan
kebijaksanaan tertentu. Sumber daya yang dibutuhkan proses diantaranya CPU, memori, file
serta I/O device.

Beberapa tipe proses :


• Foreground
Proses yang diciptakan oleh pemakai langsung pada terminal (interaktif, dialog)
• Batch
Proses yang dikumpulkan dan dijalankan secara sekuensial (satu persatu). Prose
Batch tidak diasosiasikan (berinteraksi) dengan terminal.
• Daemon
Proses yang menunggu permintaan (request) dari proses lainnya dan menjalankan
tugas sesuai dengan permintaan tersebut. Bila tidak ada request, maka program ini
akan berada dalam kondisi “idle” dan tidak menggunakan waktu hitung CPU.
Umumnya nama proses daemon di UNIX berakhiran d, misalnya inetd, named, popd
dll

Keadaan/ Status Proses :


Proses – proses yang dikelola oleh sistem operasi akan melalui serangkaian keadaan yang
merupakan
bagian dari aktivitasnya. Keadaan proses ini disebut sebagai status proses yang terdiri dari:
• Status New yaitu status dimana proses sedang dibuat.
• Status Ready yaitu status dimana proses siap dieksekusi tetapi CPU belum tersedia
karena sedang mengerjakan proses lain.
• Status Waiting yaitu status dimana proses sedang menunggu suatu kejadian tertentu.
Misalnya sedang menunggu operasi I/O selesai, menunggu signal dari proses lain,
tersedianya memori, dsb.
• Status Running yaitu status dimana proses dieksekusi. Pada status ini CPU sedang
mengeksekusi instruksi – instruksi pada proses.
• Status Terminated yaitu status dimana proses diakhiri.
RDY (Ready), RUN (Running), W (Wait).

PENJADWALAN
Penjadwalan adalah suatu pekerjaan yang dilakukan untuk mengalokasikan CPU time
untuk tasks yang berbeda-beda dalam sistem operasi. Untuk linux ada aspek lain yang
penting dalam penjadwalan: seperti menjalankan dengan berbagai kernel tasks.

Linux mempunyai dua algoritma penjadwalan yaitu :


• Algoritma time-sharing untuk penjadwalan preemptive yang adil diantara sekian
banyak proses.
• Algoritma yang kedua didesain untuk tugas real-time dimana proritas mutlak
lebih utama daripada keadilan mendapatkan suatu pelayanan.

KONSEP THREAD

Thread merupakan unit dasar dari penggunaan CPU, yang terdiri dari Thread_ID,
program counter,register set, dan stack. Sebuah thread berbagi code section, data
section, dan sumber daya sistem operasi dengan Thread lain yang dimiliki oleh proses
yang sama dan Thread juga sering disebut lightweight process.

Keuntungan Thread :
• Responsif
• Berbagai sumber daya
• Ekonomis
• Utilisasi arsitektur multiprosessor
Thread kernel :
• Thread kernel didukung langsung oleh sistem operasi. Pembuatan,
penjadwalan, dan manajemen thread dilakukan oleh kernel pada kernel space.
• Thread diatur oleh kernel, karena itu jika sebuah thread
menjalankan blocking system call maka kernel dapat menjadwalkan thread lain di
aplikasi untuk melakukan eksekusi.
• Pada lingkungan multiprocessor, kernel dapat menjadwal thread-
thread pada processor yang berbeda. Contoh sistem operasi yang mendukung kernel
thread adalah Windows NT, Solaris, Digital UNIX.

Thread Cancellation :
Thread cancellation adalah pemberhentian thread sebelum tugasnya selesai.
Pemberhentian target thread dapat terjadi melalui dua cara yang berbeda:
1. Asynchronous cancellation: suatu thread seketika itu juga memberhentikan target
thread.
2. Defered cancellation: target thread secara perodik memeriksa apakah dia harus
berhenti, cara ini memperbolehkan target thread untuk memberhentikan dirinya sendiri
secara terurut.

Thread Kernel Linux :


Linus Torvalds mendefinisikan bahwa sebuah thread adalah Context of Execution (COE),
yang berarti bahwa hanya ada sebuah Process Control Block (PCB) dan sebuah
penjadwal yang diperlukan. Linux tidak mendukung multithreading,struktur data yang
terpisah, atau pun rutin kernel.

Linux menyediakan 2 system call yaitu :


1. Fork memiliki fungsi untuk menduplikasi proses dimana proses anak yang dihasilkan
bersifat independent.
2. Clone memiliki sifat yang mirip dengan fork yaitu sama-sama membuat duplikat dari
proses induk.

You might also like