• Tidak ada hasil yang ditemukan

Laporan praktikum 7 sistem operasi linux

N/A
N/A
Protected

Academic year: 2018

Membagikan "Laporan praktikum 7 sistem operasi linux"

Copied!
10
0
0

Teks penuh

(1)

[ Itsnaini Sahidatun S ] [ TIB2 ] [ M3114085 ] Percobaan 1: Melihat Proses Parent dan Proses Child

1. Membuat file fork1.cpp dan menulis seperti gambar dibawah ini

Membuat script yang akan digunakan untuk membuat file fork1.cpp. System call fork adalah suatu system call yang membuat suatu proses baru

pada system operasi UNIX.

Bila suatu program berisi sebuah fungsi fork(), eksekusi dari program akan menghasilkan eksekusi dua proses. Satu proses dibuat untuk memulai eksekusi

program.

Bila system call fork() dieksekusi, proses lain dibuat. Proses asal disebut proses parend dan proses kedua disebut proses child. Proses child merupakan duplikat dari proses parent. Kedua proses melanjutkan eksekusi dari titik dimana system call.

2. Mengunakan g++ compiler untuk menjalankan program fork1.cpp

Setelah scipt program file fork1.cpp telah dibuat maka untuk menjalankannya menggunakan g++ compailer. Tetapi jika pada laptop g++ belum terinstall, maka harus melakukan penginstallan terlebih dahulu dengan ketikkan pada terminal sudo apt-get install g++. Setelah itu jalankan program fork dengan perintah :

$ g++ -o fork1 fork1.cpp $ ./fork1

Maka tampilannya seperti diatas.

(2)

[ Itsnaini Sahidatun S ] [ TIB2 ] [ M3114085 ]

Menuliskan script seperti diatas pada program fork2.cpp yang telah dibuat dengan editor vi. . System call fork adalah suatu system call yang membuat suatu proses baru pada system operasi UNIX.

2. Mengunakan g++ compiler untuk menjalankan program fork2.cpp

(3)

[ Itsnaini Sahidatun S ] [ TIB2 ] [ M3114085 ] Percobaan 3: Membuat dua proses sebanyak lima kali

1. Membuat file fork3.cpp dan menulis seperti gambar dibawah ini

Menggunakan editor vi untuk membuat file fork3.cpp .

2. Mengunakan g++ compiler untuk menjalankan program fork3.cpp

kita membuat dua proses dalam satu terminal, yang dapat berjalan sebanyak 5 kali dengan file fork3.cpp . untuk mendapatkan hasil seperti itu kita menggunakan perulangan for. for (int

i=0;i<5;i++)

cout << This process << getpid() << endl sleep(2)

} return 0

(4)

[ Itsnaini Sahidatun S ] [ TIB2 ] [ M3114085 ]

Percobaan 4: Proses parent menunggu sinyal dari proses child dengan system call wait 1. Membuat file fork4.cpp dan menulis seperti gambar dibawah ini

 untuk membuat script yang nantinya akan digunakan untuk proses parent menunggu sinyal dari proses child dengan system call wait.

2. Mengunakan g++ compiler untuk menjalankan program fork4.cpp

(5)

[ Itsnaini Sahidatun S ] [ TIB2 ] [ M3114085 ]

Percobaan 5: System call fork/exec dan wait mengeksekusi program bernama ls, menggunakan file executable /bin/ls dengan satu parameter –l yang ekuivalen dengan ls -l

1. Membuat file fork5.cpp dan menulis seperti gambar dibawah ini

Membuat script file fork5.cpp yang akan digunakan untuk mengeksekusi ls.

2. Mengunakan g++ compiler untuk menjalankan program fork5.cpp

Compile program fork5.cpp dan program ini digunakan untuk mengeksekusi program bernama ls, menggunakan file executable /bin/ls dengan satu parameter –l yang ekuivalen dengan ls –l.

Percobaan 6: System call fork/exec dan wait mengeksekusi program lain

(6)

[ Itsnaini Sahidatun S ] [ TIB2 ] [ M3114085 ]

Ketikkan script di stas untuk membuat program fork6.cpp yang akan digunakan untuk menggunakan system call fork/exec dan wait untuk mengeksekusi program lain

2. Mengunakan g++ compiler untuk menjalankan program fork6.cpp

(7)

[ Itsnaini Sahidatun S ] [ TIB2 ] [ M3114085 ] Percobaan 7: Melihat manajemen memory

1. Memperhatikan dengan perintah dmesg jumlah memory tersedia dan proses swapping

Perintah : $ dmesg | more

Analisa : digunakan untuk melihat jumlah memory tersedia yang ada di PC dan proses swapping

2. Me perhatika ju lah e ory free , used , share a d buffer de ga peri tah free

Perintah : $ free

(8)

[ Itsnaini Sahidatun S ] [ TIB2 ] [ M3114085 ]

3. Dengan menggunakan perintah $ cat /proc/meminfo apakah sama dengan nomer 2

Analisa : dalam percobaan ini berbeda dengan nomer 2 karena disini disk yang terpakai lebih terperinci dengan jelas sedangkan nomer 2 hanya secara global bukan secara khusus.

4. Menggunakan perintah dibawah ini

(9)

[ Itsnaini Sahidatun S ] [ TIB2 ] [ M3114085 ]

5. Perhatikan perubahan manajemen memory

Perintah : free

Analisis : Me ory total adalah ju lah e ory ya g tersedia setelah load kernel. Memory digunakan untuk proses atau disk bufferring sebagai used . Me ory ya g seda g tidak digunakan ditampilkan pada kolom free . Me ory total sa a de ga ju lah kolo used da

free . Me ory dii dikasika shared yaitu berapa ba yak e ory ya g digu aka lebih dari satu proses. Program seperti shell mempunyai lebih dari satu proses yang berjalan. Kode executable read-only dan dapat disharing oleh semua proses yang berjalan pada shell. Kolo buffers menampilkan berapa banyak memory digunakan untuk disk buffering

6. Jalankan sebuah program, misalnya open Office. Perhatikan perubahan manajemen memory

Analisis : setelah menjalankan sebuah program disk buffer bertambah dan ini berakibat juga pada kolom used dan memory free berkurang.

7. Dengan perintah ps bagaimana penggunaan memory untuk se tiap proses diatas ? Perintah : ps -uax

Analisis : perintah ini sangat berguna untuk menunjukkan bagaimana

penggunaan memory berubah secara dinamis dan bagaimana proses individu

(10)

[ Itsnaini Sahidatun S ] [ TIB2 ] [ M3114085 ]

Kesimpulan :

1. Perbedaan antara proses parent dan proses child adalah: - Mempunyai pid yang berbeda

- Pada proses parent, fork() menghasilkan pid dari proses child jika sebuah proses child dibuat. - Membedakan copy dari semua data, termasuk variable dengan current value dan stack - Membedakan program counter yang menunjukkan eksekusi berikutnya meskipun awalnya

keduanya mempunyai nilai yang sama tetapi setelah itu berbeda

- Setelah fork, kedua proses tersebut tidak menggunakan variable bersama.

2. System call fork menghasilkan :

- Pid proses child yang baru ke proses parent, hal ini sama dengan memberitahukan proses parent nama dari child-nya.

- 0 : menunjukkan proses child

- -1 : 1 jika terjadi error, fork() gagal karena proses baru tidak dapat dibuat.

Referensi

Dokumen terkait

〔商法 三五三〕発行新株全部を引き受けた者と会社との間の新株引 受契約につき、他の株主がなす無効確認請求は不適法 山本,

Tarbiyatuna: Jurnal Pendidikan Islam; Volume 10, Nomor 2, Agustus 2017 | 217 dapat mengubah generasi bangsa dari keterpurukan serta kemunduran ke arah yang lebih baik, proses

Hasil penelitian menunjukkan bahwa Bank BCA masih mengacu pada PSAK 60 revisi 2010 namun dari pembahasan dapat disimpulkan bahwa pengungkapan mengenai aset

Sejalan dengan pembahasan dan kesimpulan di atas terkait dengan adanya kekaburan norma terhadap kedudukan perjanjian internasional mengenai HAM dalam terjadinya suksesi

Perlindungan Hukum Para Pihak Akibat Penjualan Hak Tanggungan di bawah. Tangan (Studi pada Bank Mandiri

Maka sesungguhnya pendirian mereka yang salah tidak akan merusak pendirian yang teguh dan kokoh pada jalan Allah, maka jika mereka tidak ingin kembali kepada jalan yang benar

• Membantu manajer melihat apa yang telah mereka capai selama pengukuran performa terakhir yang dilakukan, membantu meyakinkan bahwa kesuksesan di masa depan pada sebuah

Jika memang tidak ada panggilan yang bersifat mobilisasi umum, maka mengapa tidak pergi dari setiap golongan, yakni kelompok besar, di antara mereka beberapa orang