• 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

• Dari gambar diatas kita dapat mengetahui bahwa perintah yang diketikkan pada gambar ditas berfungsi untuk bepindah ke direktrori yang kita tuju...

Untuk pengguna modem, coba kalian melakukan konfigurasi modem melalui terminal pada mesin kalian sendiri, dapat menggunakan wvdial atau yang

o sort ibukota.txt|head -3|wc-c, untuk mengurutkan file ibukota.txt dan menghitung jumlah karakter yang ada pada baris pertama sampai baris ketiga yang ada dalam file

Sebuah shell akan dapat membantu kita untuk menjalankan program dengan mudah sehingga lebih mempercepat kerja, tentu saja jika kita sudah

Didalam daftar tabel partisi yang ditampilkan oleh fdisk, kolom Device menunjukkan identitas partisi. Nama device inilah yang nanti sering digunakan untuk operasi partisi, yang

Untuk pengguna modem, coba kalian melakukan konfigurasi modem melalui terminal pada mesin kalian sendiri, dapat menggunakan wvdial atau yang lainnya2. Pertama kita

Linux merupakan sistem operasi yang mirip UNIX, yang merupakan implementasi independen dari POSIX, true multitasking, virtual memory, shared libraries, demand loading, memory

Setelah booting selesai, tampilan yang muncul akan mirip dengan yang terlihat pada gambar.. Setelah proses loading selesai, layar selamat datang akan muncul untuk memulai