Praktikum 4 Proses dan Manajemen Proses
BM5A
PRAKTIKUM 4 PROSES DAN MANAJEMEN PROSES
POKOK
BAHASAN :
§
Proses
pada Sistem Operasi Linux
§
Manajemen
Proses pada Sistem Operasi Linux
TUJUAN
BELAJAR :
Setelah
mempelajari materi dalam bab ini, mahasiswa diharapkan mampu :
§
Memahami
konsep proses pada system operasi Linux
§
Menampilkan
beberapa cara menampilkan hubungan proses parent dan child
§
Menampilkan
status proses dengan beberapa format berbeda
§
Melakukan
pengontrolan proses pada shell
§
Memahami
penjadwalan prioritas
DASAR TEORI
:
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. Setiap kali instruksi dibe
rikan pada Linux shell, maka kernel akan menciptakan sebuah proses-id. Proses
ini disebut juga dengan terminology Unix sebagai sebuah Job. Proses Id (PID)
dimulai dari 0, yaitu proses INIT, kemudian diikuti oleh proses berikutnya
(terdaftar pada /etc/ini ttab ). Beberapa tipe proses :
·
Foreground,
Proses yang diciptakan oleh pemakai langsung pada terminal (interaktif, dialog)
· Batch, Proses
yang dikumpulkan dan dijalankan secara sekuensial (satu persatu). Proses
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.
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
Mengirim sinyal
adalah satu alat komunikasi antar proses, yaitu memberitahukan proses yang
sedang berjalan bahwaada 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. Misalnya bila
melakukan pengeditan file teks dan ingin melakukan interrupt pengeditan untuk
mengerjakan hal lainnya. Bila selesai, dapat kembali ( switch) ke editor dan
melakukan pengeditan file teks kembali.
Job bekerja
pada foreground atau background . Pada
foregroundhanya diperuntukkan untuk satu job pada satu waktu. Job pada
foregroundakan mengontrol shell - menerima input dari keyboard dan
mengirim output ke layar. Job pada background tidak menerima input dari
terminal, biasanya berjalan tanpa memerlukan interaksi.
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 seme ntara 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
perinta h killall. Perintah ini akan menghentikan proses sesuai PID atau
job number proses.
TUGAS
PENDAHULUAN
1. Apa yang
dimaksud dengan proses?
Proses adalah
program yang sedang dieksekusi
2. Apa yang
dimaksud perintah untuk menam[ilkan status proses: ps, pstree
Ps (process
status) merupakan perintah yang digunakan untuk melihat kondisi proses yang ada
Pstree merupakan
perintah yang digunakan untuk menampilkan semua proses pada system dalam bentuk
hirarki parent/child
3. Sebutkan opsi
yang dapat diberikan pada perintah ps
a) -u untuk
melihat factor/element lainnya
b) -u
<user> mencari proses yang spesifik pemakai
c) -a mencari
proses lainnya (all)
d) -au mencari
proses lainnya (all user)
e) -eH untuk
semua proses, H untuk hirarki tampilan proses
f) -ef
menampilkan status proses dengan karakter grafis
4. Apa yang
dimaksud dengan sinyal? Apa perintah untuk mengirim sinyal ?
Sinyal adalah
sesuatu yang harus dikendalikan
Perintah untuk
mengirim sinyal : kill [-nomor sinyal] PID
5. Apa yang
dimaksud dengan proses foreground dan background pda job control ?
Sebuah proses
yang akan mengontrol shell – menerima input dari keyboard dan mengirim output
ke layar. Sebuah proses yang tidak menerima input dari terminal dan biasanya
berjalan tanpa memerlukan interaksi
6. Apa yang
dimaksud peintah-perintah penjadwalan prioritas : top, nice, renice
a) Top : Memonitor
aktifitas system
b) Nice :
Mengubah prioritas pada proses
c) Renice :
Mengurangi prioritas pada proses
PRAKTIKUM 4
PROSES DAN MANAJEMEN PROSES
Percobaan 1
: Status Proses
1. Pindah ke
command line terminal (tty2) dengan
menekan Ctrl+Alt+F2 dan login ke terminal sebagai user
Analisa : Melakukan
perintah untuk pindah ke command line terminal dan melakukan login, dengan
menekan Ctrl+Alt+Fn+F3 kemudia login dan menuliskan password.
2. 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 isntruksi yang digunakan.
Analisa : Perintah
$ ps digunakan untuk menampilkan informasi proses yang sedang berjalan,
hasilnya terdapat kolom yang menampilkan PID, TTY, Time, dan CMD
§
PID
merupakan Nomor Identittas Proses
§
TTY
merupakan nama terminal dimana proses aktif
§
Time
adalah waktu yang digunakan untuk mengakses perintah
§
CMD
adalah instruksi yang digunakan
3. Untuk melihat
factor/elemen lainnya, gunakan option –(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
Analisa : Perintah $ps –u digunakan
untuk melihat faktor/elemen user, yang kemudian dikombinasikan dengan
mengunakan option –u dan ketika perintah ini dijalankan maka akan tampil
data/informasi seperti :
· USER yang
berfungsi memberikan informasi mengenai user yang sedang digunakan dalam proses
tersebut.
· PID yang
berfungsi memberikan informasi mengenai nomor indentitas dari proses
yang
ditunjukan.
· %CPU yang
berfungsi untuk mempresentasikan waktu yang digunakan oleh CPU
dalam proses
tersebut
· %MEM berfungsi
untuk mempresentasikan system memori yang digunakan dalam
proses.
·
RSS (Real
System Storage) berfungsi untuk memberikan informasi mengenai jumlah memori
yang digunakan
· START berfungsi
memberikan informasi mengenai kapan proses tersebut diaktifkan.
4. Mencari
proses yang spesifik pemakai. Proses diatas hanya terbatas pada proses milik
pemakai, dimana pemakai tersebut melakukan login
Analisa :
Perintah $ ps -u <user> digunakan untuk menampilkan semua proses yang
dijalankan oleh pengguuna yang login (user)
5. Mencari
proses lainnya gunakan opsi a (all) dan au (all user)
Analisa :
perintah % ps -a untuk melihat kondisi proses yang dijalankan oleh user yang
sedang aktif, perintah $ ps -au untuk melihat informasi dari proses yang
dijalankan oleh semua user.
6. Logout dan
tekan Alt+F7 untuk kembali ke mode grafis
Analisa : Logout
dan Kembali ke mode grafis, caranya dengan menekan Alt+Fn+F2
Percobaan 2
: Menampilkan Hubungan Proses Parent dan Child
1. Pindah ke
command line terminal (tty2) dengan menekan Ctrl+Alt+F2 dan login ke terminal
sebagai user
Analisa : Melakukan
perintah untuk pindah ke command line terminal dan melakukan login, dengan
menekan Ctrl+Alt+Fn+F3 kemudia login dan menuliskan password
2. Ketik ps –eH
dan tekan Enter. Opsi e memilih semua proses dan opsi H menghasilkan tampilak
proses secara hierarki. Proses child muncul dibawah proses parent. Proses child
ditandai dengan awalan beberapa spasi
Analisa :perintah
$ ps -eH dieksekusi dengan menekan Enter, maka proses akan berjalan dengan cara
membaca terlebih dahulu perintah $ ps, lalu dilanjutkan dengan membaca opsi e
yang berfungsi memilih semua proses dan opsi H yang berfungsi menghasilkan
tampilan proses secara hierarki.
3. Ketik ps -e f
dan tekan Enter. Tampilan serupa dengan Langkah 2 Opsi -f akan menampilkan
status proses dengan karakter grafis (\dan_)
Analisa : Saat perintah $ ps –e f dieksekusi dengan cara menekan Enter, hasilnya
opsi –e berfungsi
menampilkan semua proses sedangkan opsi f berfungsi untuk mengetahui STAT (keadaan) dari sebuah proses itu
yang biyasanya ditandai dengan simbol S (sleeping) atau R (Running).
4. Ketik pstree
dan Enter akan ditampilkan semua proses pada system dalam bentuk hirarki
parent/child. Proses parent di sebelah kiri proses child, sebagai contoh proses
init sebagai parent (ancestor) dari semua proses pada system. Beberapa child
dari init mempunyai child. Proses bash mempunyai proses child startx. Proses
startx mempunyai child xinit dan seterusnya
Analisa : perintah
$ pstree dieksekusi dengan menekan Enter, hasilnya akan menampilkan semua
proses tetapi ditampilkan secara hierarki ( seperti akar pohon ).
5. Ketik pstree
| grep mingetty dan tekan Enter akan menampilkan semua proses mingetty yang
berjalan pada system yang berupa console virtual. Selain menampilkan semua
proses, proses dikelompokkan dalam satu baris dengan suatu angka sebagai jumlah
proses yang berjalan
Analisa : perintah
$ pstree | grep mingetty untuk menampilkan semua proses mingetty yang berjalan
pada system yang berupa console virtual. Pada percobaan tidak terjadi apa-apa
karena tidak ada proses mingetty.
6. Untuk melihat
semua PID untuk proses gunakan opsi -p
Analisa : Perintah
$ pstree -p dieksekusi dengan menekan Enter, hasilnya akan menampilkan semua
PID dari proses yang digunakan namun tampilannya seperti akar pohon
7. Untuk
menampilkan proses dan ancestor yang tercetak tebal menggunakan opsi
Analisa :
Perintah $ pstree -h dieksekusi dengan menekan Enter, hasilnya akan menampilkan
proses dan ancestor dan ditampilkan secara tebal.
Percobaan3
: Menampilkan Status Proses dengan Berbagai Format
1. Pindah ke
command line terminal (tty2) dengan menekan Ctrl+Alt+F2 dan login ke terminal
sebagai user
Analisa : Melakukan
perintah untuk pindah ke command line terminal dan melakukan login, dengan
menekan Ctrl+Alt+Fn+F3 kemudia login dan menuliskan password
2. Ketik ps -e |
more dan tekan Enter. Opsi -e menampilkan semua proses dalam bentuk 4 kolom :
PID, TTY, TIME, dan CMD
Jika halaman
penuh terlihat prompt –More—di bagian bawah screen, tekan q untuk kembali ke
prompt perintah
Analisa : Perintah
$ pstree -e | more dieksekusi dengan menekan Enter, hasilnya akan menampilkan
semua proses dalam bentuk kolom dan ditampilkan dengan layar penuh.
3. Ketik ps ax |
more dan tekan Enter. Opsi a akan menampilkan semua proses yang dihasilkan
terminal (TTY). Opsi x menampilkan semua proses yang tidak dihasilkan terminal.
Secara logika opsi ini sama dengan opsi -e. Terdapat 5 kolom :
PID,TTY,STAT,TIME, dan COMMAND.
Jika halaman
penuh terlihat prompt –More—di bagian bawah screen, tekan q untuk kembali ke
prompt perintah
Analisa : Perintah
$ pstree ax | more dieksekusi dengan menekan Enter, hasilnya yaitu a berfungsi
menampilkan semua proses yang dihasilkan terminal dan dilanjutkan dengan
membaca opsi x yang berfungsi untuk menampilkan semua proses yang tidak
dihasilkan terminal
4. Ketik -e f |
more dan tekan Enter. Opsi -e f akan menampilkan semua proses dalam format
daftar penuh
Jika halaman
penuh terlihat prompt –More—di bagian bawah screen, tekan q untuk kembali ke
prompt perintah
Analisa : Tampilan
perintah $ ps -e f | more seperti pada percobaan 2 nomor 3 akan ditampilkan per
satu layar penuh, tetapi tidak rapih.
5. Ketik ps -eo
pid,cmd | more dan tekan Enter. Opsi -eo akan menampilkan semua proses dalam format
sesuai definisi user yaitu terdiri dari kolom PID dan CMD.
Jika halaman
penuh terlihat prompt –More—di bagian bawah screen, tekan q untuk kembali ke
prompt perintah
Analisa : Perintah
$ pstree -eo pid,cmd | more dieksekusi dengan menekan Enter, hasilnya yaitu
membaca perintah $ ps dan membaca opsi -eo pid,cmd yang berfungsi untuk
menampilkan semua proses dalam format sesuai definisi user yang terdiri dari
kolom PID dan CMD.
6. Ketik ps -eo
pid,ppid,%mem.cmd | more dan tekan Enter. Akan menampilkan kolom PID, PPID, dan
%MEM. PPID adalah proses ID dari proses parent. %MEM menampilkan persentasi
memory system yang digunakan proses. Jika proses hanya menggunakan sedikit
memory system akan ditampilkan 0
Analisa : Perintah
$ pstree -eo pid,ppid,%mem,cmd | more dieksekusi dengan menekan Enter, hasilnya
membaca perintah $ ps dan membaca opsi -eo,pid,ppid,%mem, cmd yang berfungsi
untuk menampilkan kolom PID,PPID dan %MEM. PPID adalah proses ID dari proses
parent sedangkan %MEM menampilkan persentasi memory system yang digunakan
proses.
7. Logout dan
tekan Alt + F7 untuk Kembali ke mode grafis
Analisa : Logout
dan Kembali ke mode grafis, caranya dengan menekan Alt+Fn+F2
Percobaan 4
: Mengontrol proses pada shell
1. Pindah ke
command line terminal (tty2) dengan menekan Ctrl+Alt+F2 dan login ke terminal
sebagai user
Analisa : Melakukan
perintah untuk pindah ke command line terminal dan melakukan login, dengan
menekan Ctrl+Alt+Fn+F3 kemudia login dan menuliskan password
2. Gunakan
perintah yes yang mengirim output y yang tidak pernah berhenti
Untuk
menghentiikannya gunakan Ctrl+C
Analisa : Saat
peintah $ yes dieksekusi dengan menekan Enter, hasilnya akan menampilkan huruf
y yang tidak akan berhenti.
3. Belokkan
standar output ke /dev/null
Untuk menghentikannya
gunakan Ctrl+C
Analisa : Setelah
memasukkan perintah $ yes > /dev/null, terjadi pembelokkan standart output
ke /dev/null.
4. Salah satu
cara agar perintah yes tetap dijalankan tetapi shell tetap digunakan untuk hal
yang lain dengan meletakkan proses pada background dengan menambahkan karakter
& pada akhir perintah.
Angka dalam “[
]” merupakan job number diikuti PID
Analisa : perintah
$ yes > /dev/null & dieksekusi dengan menekan Enter, hasilnya yaitu
perintah yes tetap dijalankan tetapi shell lain tetap digunakan untuk hal lain
dengan meletakkan proses pada background dengan menambah karakter & pada
akhir perintah. Nomor yang ada adalah kode nomor proses background. Angka di
sebelah kanan adalah process ID
5. Untuk melihat
status proses gunakan perintah jobs
Analisa :
Perintah $ jobs akan menampilkan proses yang dijalankan di terminal tetapi ada
di background.
6. Untuk
menghentikan job, gunakan perintah kill diikuti job number atau PID proses.
Untuk identifikasi job number, diikuti prefix dengan karakter “%”
Analisa :
Perintah $kill %<nomor job> akan menghentikan suatu proses, diikuti PID
proses yang ingin dihentikan.
7. Lihat status
job setelah diterminasi
Analisa : Setelah
melakukan perintah nomor 6, lalu memasukkan perintah $ jobs maka tulisan
running seperti nomor 5 berubah menjadi terminated yang artinya proses sudah
dihentikan.
Percobaan 5
: Menghentikan dan memulai Kembali job
1. Cara lain
meletakkan job pada background dengan menilai job secara normal (pada
foreground), stop job dan memulai lagi pada background
Hentikan
sementara job(suspend), bukan menghentikannya (terminate), tetapi menghentikan
sementara job sampai di restart. Untuk menghentikan sementara job gunakan
Ctrl-Z
Analisa : Perintah
$ yes > /dev/null digunakan untuk memulai suatu proses job.
2. Untuk restart
job pada foreground, gunakan perintah fg
Analisa : Perintah
$ fg digunakan untuk me-restart proses atau jobnya diberhentikan untuk
sementara.
3. Shell akan
menampilkan nama perintah yang diletakkan di foreground. Stop job lagi dengan
Ctrl-Z. Kemudian gunakan perintah bg untuk meletakkan job pada background.
Job tidak bisa
dihentikan dengan Ctrl-Z karena job berada pada background. Untuk
menghentikannya, letakkan job pada foreground dengan fg dan kemudia sementara
dengan Ctrl-Z
Analisa : Pertama
kita mensuspend job “yes >/dev?null”. Lalu memindahkannya ke background
proses yang artinya proses atau job tersebut tidak berhenti, tetapi terus
berjlan di belakang layar.
4. Job pada
background dapat digunakan untuk menampilkan teks pada terminal, dimana dapat
diabaikan jika mencoba mengerjakan job lain.
Untuk menghentikannya
tidak dapat menggunakan Ctrl-C. Job harus dipindah ke foreground, baru
dihentikan dengan cara tekan fg dan
tekan Enter, kemudia dilanjutkan dengan Ctrl-Z untuk menghentikan sementara.
Analisa : Perintah
$ yes & berjalan pada job background yang telah dibuat. Untuk menghentikan
proses, pindahkan menjadi foreground lalu gunakan Ctrl+Z.
5. Apabila
ingin menjalankan banyak job dalam satu waktu, letakkan job pada foreground
atau background dengan memberikan job ID
Analisa : Perintah berfungsi untuk menjalankan
banyak job dalam satu waktu.
6. tekan fg dan tekan Enter, kemudia dilanjutkan
dengan Ctrl-Z untuk menghentikan sementara
Analisa : Untuk menghentikan proses nya, tekan Ctrl+Z
7. Lihat job dengan perintah ps -fae dan tekan
Enter. Kemudia hentikan proses dengan perintah kill
Analisa : Perintah $ ps -fae
berfungsi untuk menampilkan secara lengkap seluruh proses yang sedang berjalan beserta detailnya. Perintah $ kill -9<NomorPID> berfungsi untuk menghentikan atau terminate suatu proses dengan memasukkan nomor PID sebagai pengenal prosesnya.
8. Logot dan tekan Alt+F7 untuk Kembali ke mode
grafis
Analisa : Logout dan Kembali ke mode grafis, caranya dengan menekan Alt+Fn+F2
Percobaan 6 : Percobaan dengan
Penjadwalan Prioritas
1. Login sebagai user
2. Buka 3 terminal, tampilkan pada screen yang sama
Analisa : Membuka 3 window yang berbeda
3. Pada setiap terminal, ketik PS1=”\w:” diikuti
Enter. \w menampilkan path pada direktori home
Analisa : Perintah PS1=”\W:” berfungsi untuk masuk
ke direktori home dari user root
4. Karena login sebagai root, maka akan ditampilkan
~: pada setiap terminal. Untuk setiap terminal ketik pwd dan tekan Enter untuk
melihat bahwa anda sedang berada pada direktori / root
Analisa : Perintah /pwd berfungsi untuk mengetahui
lokasi aktif kita.
5. Buka terminal lagi (keempat), atur posisi
sehingga keempat terminal terlihat pada screen
Analisa : Menambah satu window terminal
6. Pada terminal keempat, ketika top dan tekan
Enter. Maka program top akan muncul. Ketik i. Top akan menampilkan proses yang
aktif. Ketik lmt. Top tidak lagi menampilkan informasi pada bagian atas dari
screen. Pada percobaan ini, terminal ke empat sebagai jendela Top.
Analisa : program top disini seperti task manager pada windows yang
berfungsi untuk mengetahui semua rincian proses yang berjalan dan beberapa
fungsi lainnya. Dengan mengetik i pada window top akan menampilkan proses yang
sedang aktif. Ketik Imt berfungsi untuk menghilangkan / tidak menampilkan
informasi pada bagian atas window.
7. Pada terminal 1, bukalah program executable C++
dengan mengetik program yes dan tekan Enter.
Analisa : Peintah $yes akan membuat sebuah proses baru.
8. Ulangi langkah 7 untuk terminal 2.
9. Jendela Top akan menampilakn dua program yes sebagai proses yang berjalan. Nilai %CPU sama pada keduanya. Hal ini berarti berdua proses mengkonsumsi waktu proses yang sama dan berjalan cepat. Namun PID dari kedua proses berbeda. Kemudian gunakan terminl 3 dan ketik renice 19<PID terminal> dan diikuti enter.
Analis : Dua proses pada window 1 dan 2 akan
menggunakan sumber daya yang sama (mendekati), namun PID dari kedua proses
tersebut akan berbeda. Perintah $ renice 19 <PID terminal> akan mengganti
penjadwalan prioritas dari proses ke 19
10. Tunggu beberapa saat sampai program top berubah dan terlihat pada jendela
top. Pada kolom STAT memperlihatkan N untuk proses 3148. Hal ini berarti bahwa
penjadwalan prioritas untuk proses 3148 lebih besar (lebih lambat) dari 0.
Proses 3149 berjalan lebih cepat.
Analisa : Penjadwalan prioritas untuk proses 2009
lebih besar (lebih lambat) dari 0.
11. Program top juga mempunyai fungsi yang sama dengan
program renice. Pilih jendela Top dan tekan r. Program top terdapat prompt PID
to renice: tekan 3148 (ingat bahwa anda harus mengganti 3148 dengan PID anda
sendiri) dan tekan Enter. Program top memberikan prompt Renice PID 3148 to
value: tekan -19 dan tekan Enter.
Analisa : Program top mempunyai fungsi yang sama
dengan program renice. Kita dapat mengubah konfigurasi proses melalui program renice
atau top. Semakin kecil prioritas dari suatu proses, semakin cepat proses itu
berjalan.
12. Tunggu beberap saat sampai top berubah dan lihat nilai %CPU pada kedua proses. Sekarang proses 3148 lebih cepat dari proses 3149. Kolom status menunjukan < pada proses 3148 yang menunjukan penjadwalan prioritas lebih rendah (lebih cepat) dari nilai 0
Analisa : Pengubahan jadwal prioritas
13. Pilih terminal 3 dan ketik nice –n -10 yes dan tekan enter. Tunggu beberapa
saat agar program top berubah dan akan terlihat proses primes ketiga. Misalnya
PID nya 4107. Opsi -10 berada pada kolom NI (penjadwalan prioritas)
Analisa : Perintah diatas merupakan proses untuk membuat proses baru dan opsi -10 adalah penentuan prioritas dari proses tersebut.
14. Jangan menggunakan mouse dan keyboard selama
sepuluh detik.Program top akan menampilkan proses yang aktif selain program
yes. Maka akan terlihat proses top terdaftar tetapi %CPU kecil dan konsisten.
Juga terlihat proses berhubungan dengan desktop grafis seperti X, panel dll
Analisa : Ketika mouse dan keyboard diam, penggunaan
sumber daya oleh program top kecil. Tetapi Ketika mouse mulai digerakkan maka
proses top memakan sumber daya lebih banyak daripada saat diam.
15. Pindahkan mouse sehingga kursor berubah pada screen dan terlihat apa yang
terjadi pada tampilan top. Proses tambahan akan muncul nilai %CPU akan berubah.
Pilih jendela top ketik r. PID to renice : muncul prompt. Ketik PID terminal
dan tekan enter. Kemudian ketik 0 dan tekan enter.
Analisa : Kita dapat mengubah konfigurasi proses
melalui perintah – perintah yang terdapat pada proses top. Setelah proses PID
diubah prioritasnya menjadi 0, penggunaab sumber daya oleh terminal top menjadi
lebih stabil (tidak banyak perubahan) walaupun mouse digerakkan.
LATIHAN :
1. Masuk ke tty2 dengan Ctrl+Alt+F2. Ketik ps -au
dan tekan Enter. Kemudian perhatikan keluaran sebagi berikut :
a. Sebutkan nama-nama proses yang bukan root
Jawab : bash, -bash dan ps -au
b. Tulis PID dan COMMAND dari proses yang paling
banyak menggunakan CPU time
Jawab :
PID = 1478
COMMAND = /usr/bin/gnome-shell
c. Sebutkan buyut proses dan PID dari proses
tersebut
Jawab : Buyut proses yaitu proses yang memiliki PID
terkecil yang menandakan program tersebut merupakan program yang pertama
dijalankan.
Buyut proses : login
PID : 1884
d. Sebutkan beberapa proses daemon
Jawab : Proses daemon adalah proses yang hanya akan
berjalan melalui permintaan dari proses yang lain. Dalam windows, daemon
disebut juga sebagai service.
e. Pada prompt login lakukan hal -hal sebagai berikut
:
$ csh : C shell (csh) shell interaktif yang memiliki
sintaks yang lebih banyak
$ who untuk melihat user yang aktif pada computer
$ bash , Bourne again shell (bsh) shell interpreter Bahasa
sh untuk mengeksekusi perintah yang dibaca dari standart input atau dari sebuah
file
$ ls untuk melihat isi dari directory yang aktif
$ sh , Bourne shell (sh) shell (command interpreter)
default dari unix
$ ps untuk melihat proses yang sedang berjalan
f. Sebutkan PID yang paling besar dan kemudian buat
urut-urutan proses sampai ke PPID =1
Jawab : Dari hasil ps -au PID paling besar adalah 2958.
2. Cobalah format tampilan ps dengan opsi berikut
dan perhatikan hasil tampilannya :
a. -f daftar
penuh
Analisa : Menampilkan proses yang berjalan dalam
format penuh
b. -j format job
Analisa Menampilkan proses dalam format job
c. j format job control
Analisa : Menampilkan proses dengan format job yang
lebih detail
d. l daftar memanjang
Analisa : Menampilkan proses dengan daftar memanjang
e. s format sinyal
Analisaa : Menampilkan proses dengan format sinyal
f. v format virtual memory
Analisa : Menampilkan proses yang berjalan dengan
virtual memory yang digunakan
g. X format register i386
Analisa : Menampilkan proses yang sedang berjalan
dengan format register i386
3. Lakukan urutan pekerjaan berikut :
a. Gunakan perintah find ke seluruh direktori pada
system, belokkan output sehingga daftar direktori dialihkan ke file directories.txt
dan daftar pesan error dialihkan ke file errors.txt
Analisa : Membelokkan directory dan error kedalam
dua file
b. Gunakan perintah sleep 5. Apa yang terjadi dengan
perintah ini
Analisa : Perintah tersebut digunakan untuk menghentikan
proses selama 5 detik
c. Jalankan perintah background dengan perintah
&
Analisa : Menampilkan hasil dari proses background
yang disertai dengan PID
d. Jalankan sleep 15 pada foreground, hentikan
sementara dengan Ctrl-Z kemudia letakkan pada background dengan bg. Ketikkan jobs,
ps . Kembalikan job ke foreground dengan perintah fg
Anaalisa : Perintah sleep berfungsi untuk proses
berhenti selama 15 detik, kemudian proses tersebut di suspend dan di letakkan
ke background, setelah itu dapat dilihat jika proses pertama telah diubah
menjadi background, lalu proses dijalan kan Kembali dengan memindahkannya ke
foreground.
e. Jalankan sleep 15 pada background menggunakan
& kemudian gunakan perintah kill
untuk menghentikan proses diikuti job number.
f. Jalankan sleep 15 pada background menggunakan
& kemudian gunakan kill untuk menghentikan sementara proses. Gunakan bg
untuk melanjutkan menjalankan proses
g. Jalankan sleep 60 pada background 5 kali dan
terminasi semuanya menggunakan perintah killall
Analisa : Perintah killall sleep menghentikan semua
job sleep yang ada dengan satu perintah
h. Gunakan perintah ps, w dan top untuk menunjukan
semua proses yang sedang dieksekusi
Analisa : ps menampilkan kondisi proses yang sedang
berjalan, lalu w melihat proses yang sedang berjalan pada user. Sedangkan top
berfungsi untuk menampilkan semua proses yang sedang aktif
i. Gunakan perintah ps -aeH untuk menampilkan
hierarki proses. Carilah unit proses. Apakah anda bisa identifikasi system
daemon yang penting? Dapatkah anda identifikasi shell dan subproses?
Analisa : Proses pada tampilan memiliki nama system
yang berfungsi sebagai root/parent dari semua proses.
j. Kombinasikan ps -fae dan grep, apa yang anda
lihat?
Analisa : Pada perintah tersebut ditampilkan error
karena penggunaan grep yang tidak disertai nama proses yang ingin ditampilkan
k. Jalankan proses sleep 300 pada background. Log
off computer dan log ini Kembali. Lihat daftar sema proses yang berjalan. Apa
yang terjadi pada proses sleep?
KESIMPULAN
Berdasarkan
praktikum ditas, kesimpulan yang didapat yaitu pada OS Linux kita dapat
melakukan
1. Menampilkan
status proses
2. Menampilkan
status proses dengan berbagai format
3. Mengontrol
proses pada shell
4. Menghentikan
dan memulai Kembali job
5. Percobaan dan
Penjadwalan Prioritas
5. Menampilkan
beberapa cara menampilkan hubungan proses parent dan child
REFERENSI
https://www.academia.edu/38884489/Prak_4b_Laporan_Resmi
http://saffanahdwilarasati.blogspot.com/2017/06/praktikum-12.html
https://ahmadhafidh.gitbooks.io/proses-manejemen-sistem-di-ubuntu/content/percobaan_3.html
Komentar
Posting Komentar