Dalam sistem operasi terdapat proses yang berjalan di belakang layar, proses ini biasanya seperti anti virus dan lain lain. Pada windows proses yang berjalan dapat dilihat dengan menekan CTRL+ALT+DEL ini biasa disebut task manager, sedangkan pada unix untuk untuk memudahkan user, Shell menawarkan fitur yang disebut control job. Sebuah proses yang berjalan dibelakang Shell dapat ditampilkan dengan mengunakan perintah jobs. secara default anda tidak akan memiliki pekerjaan dibelakang Shell. ini di buktikan setelah kita gunakan perintah jobs pada saat pertama kali komputer dihidupkan. Dibawah ini contoh perintah jobs.
- hairul@pc-48-desktop: jobs
Gambar: Perintah jobs
Disini terlihat bahwa secara default anda tidak akan memiliki pekerjaan dibelakang Shell dan itu terlihat seperti pada gambar diatas
Dibawah ini fitur job control yang dijelaskan secara rinci dalam bash halaman info
Bagian dari perintah | Makna command |
| regular_command | Menjalankan perintah dilatar depan |
| Command & | Menjalankan perintah dilatar belakang |
| Job | Menampilkan pekerjaan yang berjalan dilatar belakang |
| Ctrl + Z | Menghentikan tetapi tidak berhenti proses yang berjalan dilatar depan |
| Ctrl + C | Menghentikan dan berhenti proses yang berjalan dilatar depan |
| %n | Setiap proses yang berjalan dilatar belakang mendapatkan nomor id |
| bg | Menampilkan kembali program yang berjalan di latar belakang |
| fg | Menempatkan kembali pekerjaan yg dilatar depan |
Control Z (CTRL + Z)
Beberapa proses dapat dihentikan dengan kombinasi tombol Ctrl-Z. tombol dapat ini mengirimkan sinyal SIGSTOP untuk kernel Linux, tombol ini secara efektif dapat membekukan operasi sebuah proses.
Ketika melakukan hal ini di text editor vi, setelah itu tekan Ctrl-Z maka editor vi tadi akan berjalan pada latar belakang layar. Untuk melihat proses vi tadi yang berjalan di latar belakang layar maka gunakan perintah job. Dibawah ini contoh perintah vi
- hairul@pc-48-desktop: vi demo.txt
Gambar: Perintah vi
Setelah selesai dibuat text editor maka tekan CTRL + Z untuk menghentikan proses dari vi dan editor vi tadi akan berjalan dilatar belakang layar, untuk menampilkan proses yang berjalan dibelakang layar maka gunakan perintah jobs. Dibawah ini contoh perintah jobs
- hairul@pc-48-desktop: jobs
Gambar: Perintah jobs
Disini terlihat bahwa sebuah proses telah berhenti.
Untuk membuat sebuah proses yang dimulai di latar belakang maka gunakan karakter & pada akhir dari sebuah perintah. Perintah yang dibuat dengan mengunakan karakter & di akhir sebuah perintah bisa juga akan ditampilkan dengan mengunakan perintah jobs. Dibawah ini contoh dari perintah &.
- hairul@pc-48-desktop: bash &
Gambar: Perintah bash &
Untuk menampilkan perintah yang berjalan dilatar belakang maka gunakan perintah jobs. Dibawah ini contoh perintah jobs
- hairul@pc-48-desktop: jobs
Gambar: Perintah jobs
Disini terlihat bahwa terdapat dua buah proses yang berjalan di latar belakang Shell. Proses tersebut yaitu vi demo.txt dan bash
Perintah jobs bisa menampilkan PID dari sebuah proses yang berjalan dibelakang Shell anda. Hal ini bisa dilakukan dengan mengunakan perintah jobs -p. Dibawah ini contoh perintah jobs -p
- hairul@pc-48-desktop: jobs -p
Gambar: Perintah jobs -p
Untuk membawa pekerjaan yang berada di latar belakang Shell ke depan layar, maka gunakan perintah fg. untuk membawa pekerjaan tersebut maka terlebih dahulu kita gunakan perintah jobs agar dapat mengetahui urutan dari proses yang berjalan di latar belakang tersebut, setelah itu gunakan perintah fg. Dibawah ini contoh perintah fg
- hairul@pc-48-desktop: jobs
Gambar: Perintah jobs
Setelah kita menampilkan proses yang berjalan di latar belakang Shell kemudian kita gunakan perintah fg, Dibawah ini contoh perintah dari fg
- hairul@pc-48-desktop: fg 2
Gambar: Perintah fg 2
ket:
fg : Perintah yang digunakan untuk menjalankan proses yang berjalan di latar belakang Shell
2 : No dari urutan proses yang berjalan di latar belakang Shell
note.
Untuk proses yang telah Running tidak dapat di gunakan karena proses tersebut telah berjalan di depan Shell sedangkan proses yang Stopped dapat di jalankan melalui perintah fg
Dibawah ini ada beberapa pertayaan mengenai pembahasan diatas
1. Use the jobs command to verify whether you have any processes running in
background ?
background ?
Untuk mengetahui apakah kita mempunyai proses yang berjalan di latar belakang Shell maka gunakan perintah jobs. Dibawah ini contoh perintah jobs
- hairul@pc-48-desktop: jobs
Gambar: Perintah jobs
Disini terlihat bahwa saya tidak mempunyai proses yang berjalan di latar belakang Shell itu di karenakan saya telah exit dari semua proses yang ada
2. Use vi to create a little text file. Suspend vi in background
Untuk membuat sebuah file yang berjudul text di latar belakang Shell maka gunakan perintah vi text.text, setelah itu di suspend atau tekan CTRL + Z
Untuk membuat sebuah file yang berjudul text di latar belakang Shell maka gunakan perintah vi text.text, setelah itu di suspend atau tekan CTRL + Z
- hairul@pc-48-desktop: vi text.text
Gambar: Perintah vi text.text
3. Verify with jobs that vi is suspended in background?
Untuk menampilkan proses vi tadi yang berjalan di latar belakang Shell, maka gunakan perintah jobs. Dibawah ini contoh perintah jobs
- hairul@pc-48-desktop: jobs
Gambar: Perintah jobs
Disini terlihat bahwa saya telah mempunyai sebuah proses yang berjalan di latar belakang Shell dan proses tersebut yaitu vi text.text yang baru saja kita buat tadi.
4. Start find / > allfiles.txt 2>/dev/null in foreground. Suspend it in background
before it finishes ?
Untuk memulai mencari sebuah file latar depan maka gunakan perintah find / > allfiles.txt 2>/dev/null sebelum proses tersebut selesai maka tekan tombol CTRL + Z. Dibawah ini contoh dari perintah find / > allfiles.txt 2>/dev/null
- hairul@pc-48-desktop: find / > allfiles.txt 2>/dev/null
Gambar: Perintah find / > allfiles.txt 2>/dev/null
ket:
[ / ] Start/dimulainya pencarian dari direktori root
[ allfiles.txt ] nama file yag dicari
[ 2>/dev/null ] ini bukanlah opsi dari find. 2 menunjukkan aliran error dilinux yang kemudian dikirim ke /dev/nul (TRASH/tempat sampah). Jadi apa pun pesan error akan dibuang/dikirim ke TRASH.
[ allfiles.txt ] nama file yag dicari
[ 2>/dev/null ] ini bukanlah opsi dari find. 2 menunjukkan aliran error dilinux yang kemudian dikirim ke /dev/nul (TRASH/tempat sampah). Jadi apa pun pesan error akan dibuang/dikirim ke TRASH.
5. Start two long sleep processes in background.
Untuk membuat proses di backround maka gunakan karakter & setelah di akhir perintah. Dibawah ini contoh dari membuat proses di backround
Untuk membuat proses di backround maka gunakan karakter & setelah di akhir perintah. Dibawah ini contoh dari membuat proses di backround
- hairul@pc-48-desktop: sleep 5000 &
- hairul@pc-48-desktop: sleep 4000 &
Gambar: Perintah sleep
6. Display all jobs in background
Untuk menampilkan semua proses di background maka gunakan perintah jobs. Dibawah ini contoh dari perintah jobs
Untuk menampilkan semua proses di background maka gunakan perintah jobs. Dibawah ini contoh dari perintah jobs
- hairul@pc-48-desktop: jobs
Gambar: Perintah jobs
7. Use the kill command to suspend the last sleep process?
Untuk melakukan suspend dengan mengunakan perintah (command) pada proses terakhir dari perintah sleep terlebih dahulu kita harus mengetahui nama dari jobs yang berjalan di latar belakang Shell. Untuk mengetahui nama tersebut maka gunakan perintah jobs setelah telah di ketahui nama tersebut selanjutnya gunakan perintah ps -ef | grep (nama proses) Untuk mengetahui PID dari jobs yang berjalan di belakang Shell. Dibawah ini contoh dari perintah penjelasan diatas
- hairul@pc-48-desktop: jobs
- hairul@pc-48-desktop: ps -ef | grep sleep
Gambar: Perintah ps -ef | grep sleep
Disini terlihat bahwa nama dari jobs yang bekerja di belakang Shell yaitu sleep dan PID dari sleep tersebut yaitu 1884 dan 1885 dan proses yang masih berjalan yaitu sleep 4000, untuk membunuh proses tersebut dengan mengunakan command (Perintah ) maka gunakan perintah kill -SIGSTOP PID. DIbawah ini contoh dari perintah kill -SIGSTOP PID
- hairul@pc-48-desktop: kill -SIGSTOP 1885
Gambar: Perintah kill -SIGSTOP 1885
Disini terlihat bahwa proses sleep 4000 telah diberhentikan
ket:
kill : Perintah untuk membunuh proses
-SIGSTOP : Opsi dari kill untuk suspend
1885 : PID dari proses sleep
8. Continue the find process in background (make sure it runs again).
Untuk menampilkan proses dari perintah find yang berjalan di belakang background maka gunakan perintah fg (jobs list). Dibawah ini contoh dari perintah fg
- hairul@pc-48-desktop: jobs
- hairul@pc-48-desktop: fg
Gambar: Perintah jobs & fg
Disini terlihat bahwa find / > allfiles.txt 2>/dev/null telah ditampilkan di depan layar proses pencariannya
ket:
jobs : Perintah jobs
fg : Perintah forward background untuk menampilkan proses ke depan layar
3 : List dari daftar jobs
9. Put one of the sleep commands back in foreground.
Untuk menampilkan salah satu proses sleep yang berjalan di belakang Shell perintahnya sama halnya dengan yang saya telah jelaskan diatas. Dibawah ini contoh perintah menampilkan salah satu proses sleep yang berjalan di background
- hairul@pc-48-desktop: jobs
- hairul@pc-48-desktop: fg 2
Gambar: Perintah jobs & fg
Disini terlihat bahwa proses sleep 4000 telah berjalan di depan layar
ket:
jobs : Perintah jobs
fg : Perintah forward background untuk menampilkan proses ke depan layar
2 : List dari daftar jobs
10. (if time permits, a general review question...) Explain in detail where the numbers come from in the next screenshot. When are the variables replaced by their value ? By which shell ?
Untuk membuat sebuah proses bash maka anda bisa gunakan perintah bash -c "echo $$ $PPID" dan untuk menghasilkan child proses dari bash yang baru dibuat maka gunakan perintah bash -c 'echo $$ $PPID'. Dibawah ini contoh dari perintah bash -c "echo $$ $PPID" dan bash -c 'echo $$ $PPID'
Untuk membuat sebuah proses bash maka anda bisa gunakan perintah bash -c "echo $$ $PPID" dan untuk menghasilkan child proses dari bash yang baru dibuat maka gunakan perintah bash -c 'echo $$ $PPID'. Dibawah ini contoh dari perintah bash -c "echo $$ $PPID" dan bash -c 'echo $$ $PPID'
- hairul@pc-48-desktop: bash -c "echo $$ $PPID"
- hairul@pc-48-desktop: bash -c 'echo $$ $PPID'
Disini terlihat bahwa bash yang pertama dibuat memiliki PID 1713 setelah kita menambah proses bash yang baru maka PID 1731 telah menjadi PID child dan induknya yaitu 1873
ket:
bash -c: Perintah utk membuat sebuah proses bash
echo $$ $PPID: Perintah untuk menampilkan PPID
Untuk info lebih lengkap mengenai bash -c gunakan perintah bash -c --help.
Dibawah ini contoh dari perintah bash -c --help
- hairul@pc-48-desktop: bash -c --help
Gambar: Perintah bash -c --help
Sampai Disini dulu pertemuan kita, lebih dan kurangnya saya mohon maaf


























mas bro, sangat membantu artikelnya...kalau mamu membuat 100 proses eksekusi bagaimana ya??
BalasHapusUntuk membuat proses sangatlah mudah, buka saja beberapa aplikasi kemudian untuk melihat PPID dan PID dari proses yang baru dibuat gunakan perintah top, jika prosesnya berjalan di latar belakang gunakan perintah jobs untuk melihat proses yang berjalan di latar belakang
Hapus