MODUL VIII
Disusun Oleh:
Kelas : TI 2018 B
Nim : 20180810059
UNIVERSITAS KUNINGAN
DASAR TEORI
Konsep Proses 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 diberikan pada Linux shell, maka kernel akan
menciptakan sebuah proses-id. Dalam terminology Unix, proses ini disebut juga 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 / interaktif Proses
Proses yang diciptakan oleh pemakai langsung pada terminal (interaktif, dialog).
Batch Proses
Proses yang dikumpulkan dan dijalankan secara sekuensial (satu persatu). Prose batch
tidak diasosiasikan (berinteraksi) dengan terminal.
Daemon Proses
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, dan lainnya.
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 sistem. Standar nomor
sinyal yang terpenting adalah :
Mengirim Sinyal
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.
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 diperuntukkan
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
[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.
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:
p s –f ae 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.
PRAKTEK
1. Untuk masuk ke tty 2 saya meggunakan tombol Ctrl+Alt+F2 lalu menekan
tombol enter.
Tampilan yang aka muncul setelah kita melakukan login ke tty adalah sebagai berikut:
b. Berikut adalah PID dan COMMAND dari proses yangpaling banyak menggunakan
CPU
Berdasarkan gambar di atas, linux yang saya gunakan belum terinstal cshnya.
$ who
Merupakan perintah yang digunakan untuk menampilkan siapa saja yang sedang
aktif.
$ bash dan $ ls
Merupakan perintah yang digunakan untuk mengelompokkan perintah perintah
shell. Dan perintah $ ls, merupakan perintah yang digunakan untuk menampilkan
data secara detail.
$ ps
Merupakan perintah yang digunakan untuk menampilkan proses – proses di dalam
komputer.
LATIHAN
- Latihan 1. Menghentikan dan memulai kembali format job
1. Untuk memulai job pada background dengan memulai job secara normal ( pada
forebackground) perintah yang saya gunakan adalah $ yes > /dev/null . Dan untuk
menghentikan prosesnya secara sementara saya menggunakan perintah ^Z atau
dengan cara menekan tombol Ctrl+Z.
2. Untuk merestart job pada foreground, perintah yang saya gunakan adalah $ fg
Untuk menghentikan job ini saya tidak bisa langsung menggunakan Ctrl+Z, yaitu
dengan meletakkan job pada foreground (dengan menggunakan perintah fg)
kemudian baru menggunakan Ctrl+Z.
Untuk menghentikan perintah $ yes &. Tidak bisa langsung menggunakan ctrl+z,
tetapi harus memindahkan terlebihdahulu job ke foreground. Baru bisa dihentikan
menggunakan ctrl+z.
4. Saya ingin menjalankan banyak job dalam satu waktu, perintah yang saya gunkan
yaitu $ fg %2 atau $ %2 atau $bg %2. Tekan fg dan enter
5. Untuk melihat job, saya menggunakan perintah ps –fae dan untuk menghentikan
prosesnya saya menggunakan perintah kill, perintah kill bertujuan untuk
mengirimkan sinyal ke sebuah proses yang kita tentukan.
Setelah menekan top, kemudian saya menekan tombol i untuk menampilkan top
yang aktif.
Setelah itu, saya mengetikkan lmt, perintah ini berfungsi untuk menonaktifkan
tampilan proses yang sedang aktif padabagian atas screen.
3. Pada terminal 1, untuk membuka shell perintah yang saya ketikkan adalah yes dan
kemudian menekan enter.
4. Ulangi langkah ke 3 untuk terminal 2
5. Pada terminal 3, saya mengetikkan perintah renice 19 (no PID), perintah ini
bertujuan untuk mengganti penjadwalan prioritas dari proses ke 19.
Setelah value diganti, otomatis pada nomor PID 3120, prioritasnya berubah yang
tadinya ke 39 menjadi 1, dan NI yang tadinya 19 menjadi -19.
7. Pada terminal 3, saya mengetikkan perintah nice –n -10 yes dan kemudian enter.
8. Pada terminal 4, ketikan r, kemudian masukan nomor PID lalu enter dan pada value
ketikkan 0 dan enter.
KESIMPULAN
Pada modul ini, saya bisa mengetahui mengenai menejemen proses dalam linux.
Setiap proses yang berjalan diberi nomor pembeda yang disebut dengan PID. Untuk
mengetahui tampilan proses, perintah yang saya gunakan adalah top. Untuk mengganti
prioritas pada top, perintah yang saya gunakan yaitu dengan mengetikkan r.
DAFTAR PUSTAKA
Lesmana,Iwan.2019.Modul Praktikum Sistem Operasi. Kuningan:Labkom Fkom Uniku.