Anda di halaman 1dari 31

PRAKTIKUM V PROSES DAN MANAJEMEN PROSES

Disusun Oleh : NURDIANAH YULIASIH 201010370311300

PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS MUHAMMADIYAH MALANG 2011 2012

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 sis tem 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 prosesid. 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/inittab). Beberapa tipe proses : Foreground

Proses yang diciptakan oleh pemakai langsung pada terminal (interaktif, dialog)

44 Praktikum Sistem Operasi 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 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 :

2.

MENGIRIM SINYAL

Teknik Inforatika Universitas Muhammadiyah Malang

45 Praktikum Sistem Operasi 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. 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 foreground hanya diper untukkan untuk satu job pada satu waktu. Job pada foreground akan 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 [CtrlZ]. 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 ps fae atau

Teknik Inforatika Universitas Muhammadiyah Malang

46 Praktikum Sistem Operasi 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 terusmenerus direfresh. 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. TUGAS PENDAHULUAN: Jawablah pertanyaanpertanyaan di bawah ini : 1. Apa yang dimaksud dengan proses ? 2. Apa yang dimaksud perintah untuk menampilkan status proses : ps, pstree. 3. Sebutkan opsi yang dapat diberikan pada perintah ps 4. Apa yang dimaksud dengan sinyal ? Apa perintah untuk mengirim sinyal ? 5. Apa yang dimaksud dengan proses foreground dan background pada job control ? 6. Apa yang dimaksud perintahperintah penjadwalan prioritas : top, nice, renice.

PERCOBAAN: Percobaan 1 : Status Proses 1. Login sebagai user.

Teknik Inforatika Universitas Muhammadiyah Malang

47 Praktikum Sistem Operasi 2. Lakukan percobaanpercobaan di bawah ini kemudian analisa hasil percobaan.
3. Pindah ke command line terminal (tty2) dengan menekan Ctrl+Alt+F2 dan login ke

terminal sebagai user. 4. 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 (Sleepin g) dan R (Running), COMMAND merupakan instruksi yang digunakan. $ ps
5. Untuk melihat faktor/elemen lainnya, gunakan 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
6. Mencari proses yang spesifik pemakai. Proses diatas hanya terbatas pada proses milik

pemakai, dimana pemakai teresbut melakukan login $ ps u <user> 7. Mencari proses lainnya gunakan opsi a (all) dan au (all user) $ ps a $ ps au

Percobaan 2 : Menamp ilkan Hubungan Proses Parent dan Child


1. Pindah ke command line terminal dengan menekan Ctrl+Alt+F2 dan login ke terminal

sebagai user.
2. Ketik ps eH dan tekan Enter. Opsi e memilih semua proses dan opsi H menghasilkan

tampilan proses secara hierarki. Proses child muncul dibawah proses parent. Proses child ditandai dengan awalan beberapa spasi.

Teknik Inforatika Universitas Muhammadiyah Malang

48 Praktikum Sistem Operasi $ ps eH


3. Ketik ps e f dan tekan Enter. Tampilan serupa dengan langkah 2. Opsi f akan

menampilkan status proses dengan karakter grafis (\ dan _) $ ps e f


4. Ketik pstree dan tekan Enter. Akan ditampilkan semua proses pada sistem dalam bentuk

hirarki parent/child. Proses parent di sebelah kiri proses child. Sebagai contoh proses init sebagai parent (ancestor) dari semua proses pada sistem. Beberapa child dari init mempunyai child. Proses login mempunyai proses bash sebagai child. Proses bash mempunyai proses child startx. Proses startx mempunyai child xinit dan seterusnya. $ pstree
5. Ketik pstree | grep mingetty dan tekan Enter. Akan menampilkan semua proses mingetty

yang berjalan pada system yang berupa console virtual. Selain menampikan semua proses, proses dikelompokkan dalam satu baris dengan suatu angka sebagai jumlah proses yang berjalan. $ pstree | grep mingetty
6. Untuk melihat semua PID untuk proses gunakan opsi p.

$ pstree p
7. Untuk menampilkan proses dan ancestor yang tercetak tebal gunakan opsi h.

$ pstree h
8. Untuk melihat PID setiap proses di sistem

$ ps ax

Latihan :
1. Tulislah contoh program berikut yang yang membaca ID proses aktif dan ID proses

parent :
/* contoh1.c */

Teknik Inforatika Universitas Muhammadiyah Malang

49 Praktikum Sistem Operasi


#include <stdio.h> /* stand ard I/O */ #include <unistd.h> /* getpid(), getppid() */ #include <sys/typ es.h> /* pid_t */ int main() { pid_t my pid, myparentpid; /* deklarasi variabel penampung */ myp id=getpid(); /* ambil ID proses ini */ myp arentpid=getppid(); /* ambil ID parent pros es ini */ /* tampilkan ID proses ini */ printf("PID Saya = %d\n",myp id); /* tampilkan ID parent */ printf("PID PARENT Saya = %d\n",myp arentpid); }

Lakukan proses kompilasi dan Link program contoh1.c gcc contoh1.c o contoh1 Kemudian eksekusi program dengan : . /contoh1
Analisa hasil percobaa n yang Anda lakukan. Kerjakan latihan diatas dan analisa hasil tampilannya. Berikan kesimpulan dari praktikum ini.

Percobaan 3 : Konsep Pembuat an Proses Konsep pembuatan proses pada sistem operasi linux : Setiap proses diberi nomor khusus sebagai identifikasi yang disebut process identification

Teknik Inforatika Universitas Muhammadiyah Malang

50 Praktikum Sistem Operasi atau PID berupa angka integer unik. Jika proses selesai (Terminated) maka semua sumber daya yang digunakan termasuk PID dibebaskan kembali. Proses dibuat menggunakan system call fork() yang sering disebut forking proses System call fork() mengkopi proses pemanggil sehingga akan terdapat 2 proses yaitu : 1. Proses pemanggil disebut PARENT 2. Proses hasil kopian disebut CHILD

Proses CHILD identik dengan proses PARENTnya tetapi memiliki PID yang berbeda. Setelah proses baru (child) berhasil dibuat eksekusi dilanjutkan secara normal di masing masing proses pada baris setelah pemanggilan system call fork(). Proses pemanggil (PARENT) dapat melakukan forking proses lebih dari satu kali sehingga memungkinkan terdapat banyak proses CHILD yang dieksekusi. Proses CHILD dapat melakukan forking proses seperti halnya PARENT sehingga dapat terbentuk struktur pohon proses.

Untuk pembuatan proses baru di sistem, GNU C menyediakan system call fork() yang disertakan pada pustaka unistd.h dengan bentuk prototype sebagai berikut : pid_t fork (void); fork() mengembalikan suatu besaran bertipe pid_t yang dapat bernilai : 1 menandakan pembuatan proses baru (child) gagal 0 menandakan proses child selain itu merupakan proses parent dan jika variabel PID dia kses akan berisi PID child. Apabila operasi sukses akan terdapat 2 proses yang dieksekusi yaitu proses parent dan proses child, eksekusi akan dilanjutkan pada kedua proses setelah fork() sampai selesai. Seperti yang telah dijelaskan bahwa proses parent dan child dapat membuat proses proses baru yang lain sehingga

Teknik Inforatika Universitas Muhammadiyah Malang

51 Praktikum Sistem Operasi terdapat banyak proses yang berjalan pada waktu bersamaan (Multitasking). Berikut contoh program yang melakukan forking sebuah proses tanpa memeriksa nilai yang dikembalikan. Percobaan Pembuatan Proses
1. program pembuatan proses baru yang melakukan pemeriksaan nilai tanpa kembalian dari

fork()
/* contoh2.c */ #include <stdio.h> /* stand ard I/O */ #include <unistd.h> /* fork() */ #include <sys/typ es.h> /* pid_t */ int main() { printf("Hello\n"); /* tampilkan Hello */ fork(); /* buat pros es child */ printf("Bye-Bye\n "); /* dieksekusi oleh parent dan child */ }

Lakukan proses kompilasi pada program diatas yaitu : gcc contoh2.c o contoh2 Eksekusi program yang telah di kompilasi dengan : ./contoh2 Hasil dari eksekusi program diatas adalah : Hello

Teknik Inforatika Universitas Muhammadiyah Malang

52 Praktikum Sistem Operasi ByeBye ByeBye String Hello ditampilkan oleh parent sedangkan string ByeBye masing masing dieksekusi oleh parent dan child, lebih jelasnya berikut ilustrasi forking proses pada program contoh2.c diatas :

2. program pembuatan proses baru yang melakukan pemeriksaan nilai kembalian dari fork() /* contoh3.c */ #include <stdio.h> /* stand ard I/O */ #include <stdlib.h> /* stand ard library */ #include <unistd.h> /*fork(), getpid(), getppid() */ #include <sys/typ es.h> /* pid_t */ int main(){ pid_t pid; pid=fork(); /* buat proses child */ if (pid= -1) { =

Teknik Inforatika Universitas Muhammadiyah Malang

53 Praktikum Sistem Operasi


print(F ork gagal\n); exit(EXIT_FAILURE); /* exit jika gagal */ } if (pid= 0) { = /* proses child */ print(CHILD: Ini proses Child\n); print(CHILD: PID sa ya = %d\n, getpid( )); print(CHILD: PID parent saya = %d\n,getpp id()); } else { /* pr os es parent */ print(PARENT: Ini pr os es Pa rent\n); print(PARENT: PID saya = %d\n, getpid( )); print(PARENT: PID parent saya = %d\n,getpp id()); print(PARENT: PID child sa ya = %d\n,pid); } }

Lakukan kompilasi pada program diatas Analisa dan catatlah hasilnya Gantilah blok if menjadi struktur switch case Analisa dan catatlah hasilnya

3. Fungsi Wait() membuat proses parent menunggu


/* contoh4.c */ #include <stdio.h> #include <stdlib.h>

Teknik Inforatika Universitas Muhammadiyah Malang

54 Praktikum Sistem Operasi


#include <unistd.h> #include <sys/typ es.h> #include <sys/wait.h> /* wait() */ int main(){ pid_t pid; int rv; pid=fork(); switch(p id) { cas e -1: perror("fork" ); /* pesa n kesalahan */ exit(EXIT_FAILURE); /* exit jika gagal */ cas e 0: printf(" CHILD: Ini pr os es child!\n"); sleep(5); /* tung gu 5 second */ printf(" CHILD: Selesai... !\n "); exit(EXIT_SUCCESS); default: printf("PARENT: Ini pr os es parent!\n"); printf("PARENT: Sekarang menung gu child untuk selesai... \n"); wait(&rv); /* tunggu sampai child selesai */ printf("PARENT: Selesai... !\n "); }

Teknik Inforatika Universitas Muhammadiyah Malang

55 Praktikum Sistem Operasi


}

Lakukan kompilasi pada program diatas Analisa dan catatlah hasilnya


/* contoh5.c */ #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <sys/typ es.h> #include <sys/wait.h> int main(){ pid_t pid; int rv; switch(pid=fork()) { cas e -1: perror("fork" ); /* pesa n kesalahan */ exit(EXIT_FAILURE); /* exit jika gagal */ cas e 0: printf(" CHILD: Ini pr os es child!\n"); printf(" CHILD: PID sa ya adalah %d\n", getpid()) ; printf(" CHILD: PID parent sa ya %d\n ", getpp id()) ; printf(" CHILD: Masukkan status exit saya: "); scanf(" %d", &rv); printf(" CHILD: Selesai... !\n ");

Teknik Inforatika Universitas Muhammadiyah Malang

56 Praktikum Sistem Operasi


exit(rv); default: printf("PARENT: Ini pr os es parent!\n"); printf("PARENT: PID sa ya adalah %d\n", getpid()) ; printf("PARENT: PID child saya %d\n", pid); printf("PARENT: Sekarang menung gu child untuk selesai... \n"); wait(&rv); /* tunggu pros es child selesai */ printf("PARENT:status exit child sa ya : %d\n",WEXITSTATUS(rv)) ; /*status exit*/ printf("PARENT: Selesai... !\n "); } }

Lakukan kompilasi pada program diatas Analisa dan catatlah hasilnya

Percobaan 4 : Menamp ilkan Status Proses dengan Berbagai Format


1. Ketik ps e | more dan tekan Ente r. Opsi e menampilkan semua proses dalam bentuk 4

kolom : PID, TTY, TIME dan CMD. $ ps e | more

Teknik Inforatika Universitas Muhammadiyah Malang

57 Praktikum Sistem Operasi Jika halaman penuh terlihat prompt More di bagian bawah screen, tekan q untuk kembali ke prompt perintah.
2. 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. Terdapa 5 kolom : PID, TTY, STAT, TIME dan COMMAND. $ ps ax | more Jika halaman penuh terlihat prompt More di bagian bawah screen, tekan q untuk kembali ke prompt perintah.
3. Ketik ps e f | more dan tekan Enter. Opsi e f akan menampilkan semua proses dalam

format daftar penuh. $ ps ef | more Jika halaman penuh terlihat prompt More di bagian bawah screen, tekan q untuk kembali ke prompt perintah.
4. 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. $ ps eo pid,cmd | more Jika halaman penuh terlihat prompt More di bagian bawah screen, tekan q untuk kembali ke prompt perintah.
5. 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. $ ps eo pid,ppid,%mem,cmd | more Percobaan 5 : Mengontrol proses pada shell
1. Gunakan perintah yes yang mengirim output y yang tidak pernah berhenti

$ yes

Teknik Inforatika Universitas Muhammadiyah Malang

58 Praktikum Sistem Operasi Untuk menghentikannya gunakan CtrlC.


2. Belokkan standart output ke /dev/null

$ yes > /dev/null Untuk menghentikannya gunakan CtrlC.


3. 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. $ yes > /dev/null & Angka dalam [ ] merupakan job number diikuti PID.
4. Untuk melihat status proses gunakan perintah jobs.

$ jobs
5. Untuk menghentikan job, gunakan perintah kill diikuti job number atau PID proses.

Untuk identifikasi job number, diikuti prefix dengan karakter %. $ kill %<nomor job> contoh : kill %1 6. Lihat status job setelah diterminasi $ jobs

Percobaan 6 : Menghent ikan dan memulai kembali job


1. Cara lain meletakkan job pada background dengan memulai job secara normal (pada

foreground), stop job dan memulai lagi pada background

Teknik Inforatika Universitas Muhammadiyah Malang

59 Praktikum Sistem Operasi $ yes > /dev/null Hentikan sementara job (suspend ), bukan menghentikannya (terminate ), tetapi menghentikan sementara job sampai di restart. Untuk menghentikan sementara job gunakan CtrlZ.
2. Untuk restart job pada foreground , gunakan perintah fg.

$ fg
3. Shell akan menampilkan nama perintah yang diletakkan di foreground. Stop job lagi

dengan CtrlZ. Kemudian gunakan perintah bg untuk meletakkan job pada background. $ bg Job tidak bisa dihentikan dengan CtrlZ karena job berada pada background. Untuk menghentikannya, letakkan job pada foreground dengan fg dan kemudian hentikan sementara dengan CtrlZ. $ fg
4. Job pada background dapat digunakan untuk menampilkan teks pada terminal, dimana

dapat diabaikan jika mencoba mengerjakan job lain. $ yes & Untuk menghentikannya tidak dapat menggunakan CtrlC. Job harus dipindah ke foreground, baru dihentikan dengan cara ketik fg dan tekan Ente r, kemudian dilanjutkan dengan CtrlZ un tuk menghen tikan sementara.
5. Apabila ingin menjalankan banyak job dalam satu waktu, letakkan job pada foreground

atau background dengan memberikan job ID $ fg %2 atau $ %2 $ bg %2


6. ketik fg dan tekan Enter, kemudian dilanjutkan dengan Ctrl Z untuk menghentikan

sementara.
7. Lihat job dengan perintah ps fae dan tekan Enter. Kemudian hentikan proses dengan

perintah kill.

Teknik Inforatika Universitas Muhammadiyah Malang

60 Praktikum Sistem Operasi $ ps fae $ kill 9 <NomorPID> Contoh Program yang serupa dengan perintah kill. Lakukanlah kompilasi dan analisa hasilnya
/* contoh1.c */ #include <sign al.h> /* kill() */ #include <sys/typ es.h> /* pid_t */ int main(){ pid_t PID=773; kill(PID,SIGTERM); }

Percobaan 7 : Percobaan dengan Penjad walan Prioritas


1. Login sebagai root.

2. Buka 3 terminal, tampilkan pada screen yang sama.


3. Pada setiap terminal, ketik PS1 = \w: diikuti Enter. \w menampilkan path pada

direktori home.
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. 5. Buka terminal lagi (keempat), atur posisi sehingga keempat terminal terlihat pada screen.
6. Pada terminal keempat, ketik 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.

Teknik Inforatika Universitas Muhammadiyah Malang

61 Praktikum Sistem Operasi


7. Pada terminal 1, bukalah program executable C++ dengan mengetik program yes dan

tekan Enter. 8. Ulangi langkah 7 untuk terminal 2.


9. Jendela Top akan menampilkan dua program yes sebagai proses yang berjalan. Nilai

%CPU sama pada keduanya. Hal ini berarti kedua proses mengkonsumsi waktu proses yang sama dan berjalan sama cepat. PID dari kedua proses akan berbeda, misalnya 3148 dan 3149. Kemudian gunakan terminal 3 (yang tidak menjalankan primes maupun Jendela Top) dan ketik renice 19 <PID terimnal 1> (contoh : renice 19 3148) dan diikuti Enter. Hal ini berarti 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.
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.
12. Tunggu beberapa saat sampai top berubah dan lihat nilai %CPU pada kedua proses.

Sekarang proses 3148 lebih cepat dari proses 3149. Kolom status menunjukkan < pada proses 3148 yang menunjukkan penjadwalan prioritas lebih rendah (lebih cepat) dari nilai 0.
13. Pilih terminal 3 (yang sedang tidak menjalankan yes atau program top) 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).
14. Jangan menggunakan mouse dan keyboard selama 10 detik. Program top menampilkan

proses yang aktif selain program yes. Maka akan terlihat proses top terdaftar tetapi %CPU kecil (dibawah 1.0) dan konsisten. Juga terlihat proses berhubungan dengan dekstop grafis seperti X, panel dll.
15. Pindahkan mouse sehingga kursor berubah pada screen dan lihat apa yang terjadi dengan

tampilan top. Proses tambahan akan muncul dan nilai %CPU berubah sebagai bagian

Teknik Inforatika Universitas Muhammadiyah Malang

62 Praktikum Sistem Operasi grafis yang bekerja. Satu alasan adalah bahwa proses 4107 berjalan pada penjadwalan prioritas tinggi. Pilih jendela Top, ketik r. PID to renice : muncul prompt. Ketik 4107 (ubahlah 4107 dengan PID Anda) dan tekan Enter. Renice PID 4107 to value: muncul prompt. Ketik 0 dan tekan Enter. Sekarang pindahkan mouse ke sekeliling screen. Lihat perubahannya. 16. Tutup semua terminal window.
17. Logout dan login kembali sebagai user.

LATIHAN :
1. Masuk ke terminal Ketik ps au dan tekan Enter. Kemudian perhatikan keluaran sebagai

berikut : a. Sebutkan namanama proses yang bukan root b. Tulis PID dan COMMAND dari proses yang paling banyak menggunakan CPU time c. Sebutkan buyut proses dan PID dari proses tersebut d. Sebutkan beberapa proses daemon e. Pada prompt login lakukan hal hal sebagai berikut : $ csh $ who $ bash $ ls $ sh $ ps f. Sebutkan PID yang paling besar dan kemudian buat uruturutan proses sampai ke PPID = 1.

Teknik Inforatika Universitas Muhammadiyah Malang

63 Praktikum Sistem Operasi 2. Cobalah format tampilan ps dengan opsi berikut dan perhatikan hasil tampilannya :

f daftar penuh j format job J format job control l daftar memanjang s format sinyal v format virtual memory X format register i386

Teknik Inforatika Universitas Muhammadiyah Malang

64 Praktikum Sistem Operasi

DAFTAR PUSTAKA
1. Free Software Foundation.`The GNU C Library Reference Manual', for Version 2.2.x of the GNU C Library. 2001 2. Hariyanto, Bambang.Sistem Operasi, Edisi 2, Informatika Bandung. 2000
3. http://lecturer.eepisits.edu/ 4. http ://www.ilmu komp uter.com/

5. Husain, Kamran. Parker, Tim.Red Hat Linux Unleashed,Sams Publishing.1996 6. Sams Development Team.Unix Unleashed,Sams Publishing.1994 7. Stallings, William.Operating Systems, New jersey. PrenticeHall Inc.1995

Teknik Inforatika Universitas Muhammadiyah Malang

65 Praktikum Sistem Operasi

LAPORAN PRAKTIKUM
1. Percobaan 4 : Menampilkan Status Proses dengan Berbagai Format >>> >>>

Ps e untuk menampilkan semua proses dalam bentuk 4 kolom seperti : PID, TTY, TIME, dan CMD ps ax | more 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. Terdapa 5 kolom : PID, TTY, STAT, TIME dan COMMAND.

Teknik Inforatika Universitas Muhammadiyah Malang

66 Praktikum Sistem Operasi >>>

Ps ef | more adalah untuk menampilkan semua proses dalam format daftar penuh. Jika halaman penuh terlihat prompt more di bagian bawah screen. >>> >>>

Teknik Inforatika Universitas Muhammadiyah Malang

67 Praktikum Sistem Operasi


ps eo pid,ppid,%mem,cmd | more Akan menampilkan kolom

PID, PPID dan %MEM. PPID adalah proses ID dari proses parent. %MEM menampilkan pers entasi memory system yang digunakan proses. Jika proses hanya menggunakan sedikit memory system akan ditampilkan 0. 2. Percobaan 5 : Mengontrol Proses pada shell >>> >>>

Yes digunakan untuk mengirim output y yang tidak pernah berhenti. 3. Percobaan 6 : Menghentikan dan Memulai Kembali jobs >>> >>>

>>>

>>>

Teknik Inforatika Universitas Muhammadiyah Malang

68 Praktikum Sistem Operasi Jobs digunakan untuk melihat status proses. Untuk identifikasi job number, diikuti prefix dengan karakter %. >>>

>>>

Teknik Inforatika Universitas Muhammadiyah Malang

69 Praktikum Sistem Operasi 4. Percobaan 7 : Percobaan dengan Penjadwalan Prioritas >>>

Untuk menampilkan path pada direktori home >>>

>>>

Teknik Inforatika Universitas Muhammadiyah Malang

70 Praktikum Sistem Operasi 5. Latihan a. Nama-nama yang bukan /root --> ayik b. PID --> 4749 COMMAND --> 1:46 /usr/bin/X :0 -br -verbose -auth /var/run/gdm/auth-for-gdm-kyH5PY/database
-nolisten tcp

c. Buyut proses tersebut adalah proses yang paling atas. d. Beberapa proses daemon --> inetd, popd, named. e. Menjalankan command hasil ada pada printscreen. f. PID terbesar hingga terkecil : PID TTY TIME CMD 6962 pts/0 00:00:00 bash 7179 pts/0 00:00:00 sh 7231 pts/0 00:00:00 ps >>>

>>>

>>>

>>>

Teknik Inforatika Universitas Muhammadiyah Malang

71 Praktikum Sistem Operasi >>>

>>>

>>>

>>>

KESIMPULAN :
1. 2. 3. Mengetahui cara menampilakn status proses antara child dengan parent. Bisa menampilkan beberapa format proses yang berbeda. Mengontrol proses pada shell.

Teknik Inforatika Universitas Muhammadiyah Malang

72 Praktikum Sistem Operasi

Teknik Inforatika Universitas Muhammadiyah Malang

Anda mungkin juga menyukai