Proses dan Manajemen Proses

Kali ini akan membahas tetang Proses dan Manajemen Proses, setelah melakukan percobaan tentang bab ini yang merupakan kelanjutan dari Bab Praktikum 3 tentang Operating File dan Struktur Direktory diharapkan mampu :

  • Memahami konsep  proses pada sistem operasi linux
  • Menampilkan beberapa cara hubungan proses parent dan child
  • Menampilkan Status proses dengan beberapa format berbeda
  • Melakukan pengontrolan proses pada shell
  • Memahami Penjadwalan prioritas.

Sebelum menuju ke percobaan, terlebih dahulu mengetahui dasar teori dari Proses dan Menajemen Proses agar dalam melakukan percobaan kita dapat memahami, berikut ini dasar teori dari Proses dan Manajemen Proses :

1. Konsep Proses pada Sistem Operasi Linux

Proses adalah program yang sedang dieksekusi. Setiap kali menggunakan utilitas sistem atau program aplikasi dari shell, satu atau lebih proses ”child” akan dibuat oleh shell sesuai perintah yang diberikan. Beberapa tipe Proses yaitu :

  • Foreground yaitu Proses yang diciptakan oleh pemakai langsung pada terminal (interaktif, dialog).
  • Batch yaitu Proses yang dikumpulkan dan dijalankan secara sekuensial (satu persatu). Proses Batch tidak diasosiasikan (berinteraksi) dengan terminal.
  • Daemon yaitu Proses yang menunggu permintaan (request) dari proses lainnya dan menjalankan tugas sesuai dengan permintaan tersebut.

2. Sinyal

Proses dapat mengirim dan menerima sinyal dari dan ke proses lainnya. Proses mengirim sinyal melalui instruksi “kill” dengan format :

kill [-nomor sinyal] PID

Nomor sinyal : 1 s/d maksimum nomor sinyal yang didefinisikan system Standar nomor sinyal yang terpenting adalah :

3. Mengirim Sinyal

adalah satu alat komunikasi antar proses, yaitu memberitahukan proses yang sedang berjalan bahwa ada sesuatu yang harus dikendalikan. Berdasarkan sinyal yang dikirim ini maka proses dapat bereaksi dan administrator/programmer dapat menentukan reaksi tersebut. Mengirim sinyal menggunakan instruksi :

kill [-nomor sinyal] PID

Sebelum mengirim sinyal PID proses yang akan dikirim harus diketahui terlebih dahulu.

 4. Mengontrol Proses pada Shell

Shell menyediakan fasilitas job control yang memungkinkan mengontrol beberapa job atau proses yang sedang berjalan pada waktu yang sama. Job pada foreground kemungkinan dihentikan sementara (suspend), dengan menekan [Ctrl-Z]. Job yang dihentikan sementara dapat dijalankan kembali pada foreground atau background sesuai keperluan dengan menekan ”fg” atau ”bg”. Sebagai catatan, menghentikan job sementara sangat berbeda dengan melakuakan interrupt job (biasanya menggunakan [Ctrl-C]), dimana job yang diinterrup akan dimatikan secara permanen dan tidak dapat dijalankan lagi.

5. Mengontrol Proses Lain

Perintah ps dapat digunakan untuk menunjukkan semua proses yang sedang berjalan pada mesin (bukan hanya proses pada shell saat ini) dengan format :

ps –fae atau ps -aux

Beberapa versi UNIX mempunyai utilitas sistem yang disebut top yang menyediakan cara interaktif untuk memonitor aktifitas sistem. Statistik secara detail dengan proses yang berjalan ditampilkan dan secara terus-menerus di-refresh. Proses ditampilkan secara terurut dari utilitas CPU. Kunci yang berguna pada top adalah

s – set update frequency
u – display proses dari satu user
k – kill proses (dengan PID)
q – quit

Utilitas untuk melakukan pengontrolan proses dapat ditemukan pada sistem UNIX adalah perintah killall. Perintah ini akan menghentikan proses sesuai PID atau job number proses.

Setelah Mengetahui Dasar Teori, langsung saja meluncur ke percobaan😀 :

Persiapan Sebelum Melakukan Percobaan :
1. Masuk ke sistem operasi Linux.
2. Login sebagai user.
3. Gunakan instruksi status proses :  ps.
4. Gunakan instruksi untuk mengelola sinyal : kill, trap, nohup

Hasil Percobaan

Percobaan 1 : Status Proses

Pertama : langkah pertama pindah ke command line terminal (tty2) dengan menekan Ctrl+Alt+F2 :

$ ps

Instruksi ps (process status) digunakan untuk melihat kondisi proses yang ada. PID adalah Nomor Identitas Proses, TTY adalah nama terminal dimana proses tersebut aktif, STAT berisi S (Sleeping) dan R (Running), COMMAND merupakan  instruksi yang digunakan.

$ ps -u

Untuk melihat factor/elemen lainnya, g unakan option –u (user).  %CPU adalah presentasi CPU time yang digunakan  oleh proses tersebut, %MEM adalah presentasi system memori yang digunakan proses, SIZE adalah jumlah memori yang digunakan, RSS (Real System Storage) adalah jumlah memori yang digunakan, START adalah kapan proses tersebut diaktifkan

$ ps –u <user>

Mencari proses yang spesifik pemakai.  Proses diatas hanya terbatas pada proses milik pemakai, dimana pemakai teresbut melakukan login$ ps –a

$ ps –au

Mencari proses lainnya gunakan option a (all) dan au (all user)

Analisa  
Dari percobaan yang telah dilakukan perintah ini digunakan untuk melihat kondisi proses yang ada dan untuk mencari proses dari user yang sedang aktif menggunakan tambahan commmand –a sedangkan kalau tambahan commmand –au dapat mencari proses dari semua user.

Percobaan 2 : Menampilkan Hubungan Proses Parent dan Child

ps -eH

Perintah “ps -e” digunakan untuk menampilakan semua proses baik dari parent maupun child. Penambahan ‘H’ pada perintah tersebut maka yang akan tampil seperti perintah “ps -e” namun bedanya proses pada parent di taruh di atas dan proses pada child di taruh di bawah proses parent dengan di tandai beberapa spasi

Analisa  
  • Opsi H menghasilkan tampilan proses secara hierarki
  • Opsi f akan menampilkan status proses dengan karakter grafis
  • Pstree akan menampilkan semua proses pada system  dalam bentuk hirarki parent/child
  • Pstree dengan tambahan opsi –p akan melihat semua PID
  • Pstree dengan tambahan opsi –h akan menampilkan proses dan ancestor  yang tercetak tebal

Percobaan 3 : Menampilkan Status Proses dengan  Berbagai Format

Analisa  
ps -e | more

merupakan Perintah ini di gunakan untuk menampilkan semua proses baik yang di proses TTY atau tidak (di tandai dengan tanda ‘?’).Tampilannya di sajikan dalam 4 colom yaitu PID, TTY, TIME, CMD. Sedangkan pada perintah more di gunakan jika proses yang di tampilkan lebih dari satu laya, jika tidak maka more tidak akan berfungsips -ax | more

Perintah diatas pertama ” ps -a” digunakan untuk menampilkan semua proses yang di hasilkan TTY, sedangkan tambahan ‘x’ digunakan menampilkan semua prose yang di hasilkan TTY ataupun tidak , perintah ini hampir sama dengan perintah “ps -e”. Di tampilkan dalam bentuk 5 Kolom yaitu PID, TTY,SATA, TIME, CMD. STAT berisi status apakah prose tersebut sedang Run / Sleep

ps -ef |more

Perintah di atas .pertama “ps -e” sama seperti yang saya jelaskan sebelumnya, sedangkan tambahan ‘f’ digunakan untuk menampilkan seemua proses dalam format penuh. seperti ada tambahan UID (Berasal dari user mana proses tersebut berasal)

Percobaan 4 : Mengontrol Proses pada Shell

Analisa

 
yes

Perintah diatas di gunakan untuk mengirim perintah ‘y ‘ secara terus menerus. Dan jika ingin menghentikan tekan toboh CTRL + C

Membelokkan Standart Output ke /dev/null

Perintah “yes > /dev/null” digunakan untuk membelokkan perintah “yes” ke “/dev/null” yang mana perintah tersebut akan di eksekusi pada alamat yang sudah di tentukan.

yes >  /dev/null&

Perintah di atas hampir sama dengan perintah sebumnya bedanya pada perintah ini di tambah  “&” yang mana digunkana untuk menjalankan proses yang mana proses tersebut dapat di tinggal (proses tersebut tetap berjalan )dengan melakukan proses yang lain.

Melihat Proses

Perintah untuk melihat prose adalah “jobs”. Pada perintah ini menampilkan semua proses yang sedang berjalan.

Mengentikan Jobs

Perintah untuk menghentikan jobs / proses adalah “kill”. Dengan cara penulisan “kill %<nomor jobs>”. Perintah ini akan mematikan proses secara paksa.

Lihat Jobs Setelah di terminasi

Untuk melihat bukti dari perintah “kill” kita dapat melihat kembali proses dengan perintah “jobs”. Apakah perintah tersebut sudah hilang

Kesimpulan :

Setelah Mempraktekkan Proses dan Manajemen Proses, dapat disimpulkan bahwa :

  • Untuk percobaan kali ini menggunakan command line terminal (tty2) dengan menekan Ctrl+Alt+F2, berbeda dengan praktikum sebelumnya yang di tampilakan di commang tanda perintah Ctrl+Alt+F2.
  • Untuk keluar dari command line terminal (tty2) dengan menekan Alt+F7.
  • Untuk menuliskan semua perintah yaitu di command line terminal (tty2).
  • Semua aktifitas/proses di dalam linux dapat diketahui melalui command line terminal baik hubungan Parent proses dengan Child proses dapat kita ketahui.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s