Anda di halaman 1dari 12

LABORATORIUM PEMBELAJARAN ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER


UNIVERSITAS BRAWIJAYA

NAMA : GABE SIRINGORINGO


NIM : 185150301111033
MATERI : BAB III
TANGGAL : 18/09/2019
ASISTEN : FARASSULTHANA AZZAHRA WILLARY YAASIIN
SALSABILA RAHMA YUSTIHAN

BAB III

PROSES
Modul ini merupakan modul ketiga dari semua modul Praktikum Sistem
Operasi jenjang sarjana di Fakultas Ilmu Komputer Universitas Brawijaya,
Malang. Terbagi menjadi 2 bagian utama, berupa teori pendukung dan
langkah-langkah percobaan. Bagian teori pendukung berisi tambahan
informasi untuk memberikan pemahaman konseptual terhadap materi terkait.
Sementara bagian kedua, berisi langkah-langkah percobaan yang harus
dijalankan dan diselesaikan oleh peserta praktikum ini.

3.1 Teori Pendukung

Proses merupakan sebuah program yang sedang dieksekusi atau dijalankan.


Secara sederhana, sebuah proses baru dibuat dan dijalankan ketika perintah
diberikan oleh pengguna kepada komputer melalui antarmuka pengguna.
Proses ini kemudian membuat proses baru lainnya, atau juga menyebabkan
sistem operasi harus membuat proses atau thread baru yang saling terkait.
Dan dengan arsitektur komputer serta desain sistem operasi modern, sangat
dimungkinkan untuk menjalankan banyak proses, yang berasal dari aplikasi
atau program yang sama ataupun juga berbeda. Pembentukan proses baru
pada sistem operasi linux menggunakan dua system call utama, yaitu fork()
dan exec().

Dengan menggunakan fork(), proses baru yang dihasilkan akan sama persis
dengan proses sebelumnya. Artinya apa yang telah dieksekusi sebelumnya
akan diduplikasi, termasuk berkas yang dibuka, status register, semua alokasi
memori dan juga kode program. Yang membedakan proses lama (parent) dan
proses baru (child) adalah identitas proses (PID) yang dimiliki. Jika yang
dibutuhkan adalah proses baru yang benar-benar berbeda dari proses
sebelumnya, maka linux akan menggunakan system call exec(). System Call
exec() mengganti isi proses yang sedang berjalan dengan informasi baru dari
program yang dijalankan terakhir. Perbedaan dari kedua system call ini dapat
dilihat pada gambar 1.

Sistem operasi linux juga membawa berbagai macam perintah untuk


mengelola proses. Perintah-perintah ini pada umumnya dimasukkan atau
dijalankan melalui shell atau pada sistem operasi modern cenderung
menggunakan GUI yang menyediakan shell melalui sebuah aplikasi terminal
dan sejenisnya. Fungsi utama shell adalah untuk membantu pengguna untuk
memulai, mengatur dan menghentikan proses. Contoh perintah terkait
dengan pengaturan proses pada sistem operasi linux antara lain:

 ps(1) – melihat status dari satu atau lebih proses.


 kill dan killall – menghentikan proses.

 pstree(1) – menampilkan hirarki dari proses yang sedang berjalan.


 top – menampilkan penggunaan resources (processor, memori) dari sebuah
proses.
 nice – mengatur prioritas dari sebuah proses baru.
 renice(8) - mengubah prioritas dari sebuah proses yang sedang berjalan.
 skill – mengetahui status dari sebuah proses.
 snice - mengetahui status dari sebuah proses.

 acct – pencatatan aktivitas dan status proses dalam sebuah berkas


/var/log/pacct.
 lastcomm (1) – menampilkan informasi tentang perintah sebelumnya. Hanya
aktif jika acct berjalan.
 sa(8) – melihat ringkasan isi berkas /var/log/pacct terkait dengan proses.
Gambar 1 Pembentukan proses dengan fork() dan exec()

3.2 Materi Praktikum

3.2.1 Aktifkan sistem operasi linux yang telah di-install sebelumnya.


Login ke sistem dan kemudian. Buka sebuah console shell atau
aplikasi terminal jika menggunakan mode GUI

3.2.2 Ketikan perintah pada terminal $ man ps


3.2.3 Apa yang dapat dijelaskan dari penulisan perintah $ man ps
dari langkah nomor 2?
Perintah man ps digunakan untuk menampilkan dokumentasi dan user
manual dari perintah/aplikasi ps

3.2.4 Ketikan perintah $ top kemudian perhatikan atau catat tampilan


yang ada

3.2.5 Buka aplikasi terminal yang kedua, dan ketikan perintah $ ps


kemudian perhatikan kembali tampilan yang ada pada terminal
pertama
3.2.6 Ketikan perintah $ ps -ax dan lihat kembali tampilan pada
terminal pertama

3.2.7 Sebutkan dan jelaskan dengan singkat informasi apa saja yang
dapat dilihat dengan perintah $ ps!
Dengan menggunakan perintah $ps kita dapat melihat informasi :
1. PID, untuk melihat nomor proses
2. TTY, untuk melihat nama terminal dimana proses tersebut aktif
3. Stat berisi Sleeping dan Running
4. CMD, untuk melihat instruksi yang digunakan
3.2.8 Sebutkan dan jelaskan dengan singkat informasi apa saja yang
dapat dilihat dengan perintah $ ps -ax!
Informasi yang bisa kita lihat saat menjalankan perintah $ps -ax adalah:
1. PID (melihat nomor proses)
2. TTY (melihat nama terminal dimana proses tersebut aktif)
3. STAT (Sleeping dan Running)
4. TIME (Waktu proses)
5.Command (melihat instruksi yang digunakan)

3.2.9 Jelaskan perbedaan antara perintah $ ps dan $ ps -ax?

Perintah $ps menampilkan informasi tentang pilihan proses aktif


dimana yang ditampilkan adalah PID, TTY, TIME dan CMD. Hampir
sama dengan perintah $ps, perintah $ps -ax juga menampilkan PID,
TTY, TIME dan CMD namun ada satu informasi lain yang di tampilkan
yaitu STAT.

3.2.10 Sebutkan minimal 6 argumen lain yang dapat ditambahkan


pada perintah $ ps dan jelaskan dengan singkat fungsi dari
masing-masing argumen!
1. $ps -u Berfungsi untuk menampilkan proses beserta nama
usernya

2. $ps -A Berfungsi untuk menampilkan semua proses yang tidak


mempunyai controlling terminal

3. $ps -ef Adalah perintah yang digunakan untuk menampilkan


semua proses seperti perintah ps -A dengan tambahan opsi -f
4. $ps -eH Befungsi menampilkan hubungan proses parent dan
child

5. $ps -a Berfungsi untuk menampilkan semua proses yang


mempunyai controlling terminal

6. $ps ax Digunakan untuk menampilkan semua proses baik yang


mempunyai control terminal ataupun tidak dan terdapat status
dari prosessnya seperti lagi berjalan atau sleep.

3.2.11 Buka aplikasi terminal yang ketiga dan jalankan perintah $ yes
linux kemudian perhatikan terminal pertama.
3.2.12 Buka aplikasi terminal yang kedua, dan ketikan perintah $ ps –
ax

3.2.13 Temukan identitas proses yang terkait dengan perintah $ yes


pada terminal ketiga dan tuliskan dengan lengkap serta berikan
penjelasan!
Saat menjalankan perintah $yes identitas yang ditampilkan :
1. Nomor identitas proses (PID) dengan nomor 6950
2. TTY(Teletypewriter) dengan nama terminal dimana proses
tersebut aktif adalah pts/0
3. Status apakah proses sedang sleeping atau running (STAT)
dengan status R+, dan
4. Instruksi yang digunakan adalah yes

3.2.14 Bagaimana cara mencari penjelasan yang tepat terkait dengan


penggunaan perintah $ kill dan $ killall?
Dengan cara mengetikkan perintah man sebelum perintah kill atau killall
untuk menampilkan dokumentasi atau user manual perintah kill atau
killall
3.2.15 Perintah manakah yang lebih tepat, apakah $ kill atau
$ killall, yang dapat digunakan untuk menghentikan proses
yang terkait dengan perintah $ yes di terminal ketiga pada
langkah sebelumnya (langkah 13)? Jelaskan alasannya!
Perintah yang tepat untuk menghentikan proses yang terkait dengan
perintah yes diterminal ketiga adalah dengan menggunakan syntax
$kill karena kita hanya menghentikan satu proses berbeda dengan
$killall yang dapat menghentikan banyak proses yang sama
sekaligus

3.2.16 Tunjukkan hasil (tampilan pada terminal kedua) yang dapat


diambil ketika menjalankan perintah yang dipilih pada langkah
15!

3.2.17 Apa yang dapat disimpulkan tentang perintah $ kill dan


$ killall?
Perintah $kill dipakai untuk mengakhiri atau terminated secara
manual atau menghentikan proses yang kita pilih untuk dihentikan
sedangkan perintah $killall berfungsi untuk menghentikan banyak
proses sekaligus

3.2.18 Sebutkan dan jelaskan dengan singkat informasi apa saja yang
dapat dilihat dengan perintah $ top!
1. ROW -TOP(baris paling pertama)
Terdapat informasi waktu saat ini, mesin berjalan,sesi user login,
dan rata-rata beban system
2. Task
Terdapat informasi total process yang sedang berjalan,proses yang
sedang berjalan,proses yang sleeping dan proses yang sedang
berhenti
3. CPU
Terdapat informasi persentase pemakaian CPU untuk proses
penggunan,persentase proses CPU yang digunakan system,
Persentase proses CPU yang mendapatkan prioritas
update,persentase CPU yang tidak terpakai , persentase CPU
yangmenunggu proses I/O,penggunaan CPU untuk service
hardware, penggunaan CPU untuk service software, dan jumlah
CPU yang menjalankan virtual lainnya
4. Memory dan Swap
Pada baris 4 dan 5 akan ditampilkan informasi mengenai
penggunaan memory dan swap misal jumlah memory yang
digunakan,memori bebas,cache,dll
5. Process List
PID = merupakan ID Proses.
USER = user disini maksudnya pengguna yang merupakan
pemilik proses
PR = merupakan prioritas proses
NI = merupakan Proses yang bagus untuk berjalan
VIRT = Memory virtual yang digunakan oleh proses
RES = Memory fisik yang digunakan oleh proses
SHR = Proses yang disharing.
S = Menunjukan status proses:
S=sleep
R=running
Z=zombie
%CPU = Persentase proses yang menggunakan CPU
%MEM = Persentase proses yang menggunakan RAM
TIME+ = Total waktu untuk seluruh aktivitas proses
COMMAND = Nama proses

3.2.19 Apa yang dapat disimpulkan tentang perintah $ top?

Perintah $top sama halnya seperti perintah $ps yaitu berfungsi untuk
menampilkan proses proses yang sedang berjalan

3.2.20 Aktifkan kursor dan keyboard pada aplikasi terminal yang kedua,
dan ketikan perintah $ pstree

3.2.21 Tuliskan dan jelaskan dengan singkat hasil yang didapatkan


pada saat perintah $ pstree dijalankan!
Perintah $pstree digunkan untuk menampilkan proses pada sistem
dalam bentuk hirarki parent/child

3.2.22 Tunjukkan dan jelaskan proses apa saja yang saling


berhubungan dengan atau merupakan hasil pembentukan dari
proses lain!

Contohnya seperti pada proses yang dijalankan oleh search engine


firefox. Dimana kita bisa melihat adannya proses web content yang
merupakan hasil dari pembentukan proses firefox. Pada proses firefox
adalah parent dari proses web content yang adalah child.
3.2.23 Tunjukkan dan jelaskan pula proses yang tidak saling terkait
satu dan lainnya

Proses fwupd dan proses gdm3 adalah 2 proses yang berbeda dimana
tidak ada hubungan antara kedua proses tersebut namun kedua proses
tersebut memiliki parent yang sama yaitu systemd, dimana systemd
merupakan proses yang dapat berdiri sendiri tanpa ada proses lain
yang menghasilkannya ,pada pstree dia merupakan parent dari semua
proses

3.2.24 Apa yang dapat disimpulkan tentang perintah $ pstree?

Perintah $pstree adalah perintah untuk menampilkan proses proses


yang sedang berjalan sama seperti perintah $ps pada sistem, tampilan
yang tampilkan berupa pohon dimana kita dapat melihat keterkaitan
suatu proses dengan proses lain.

Anda mungkin juga menyukai