Judul Laporan
"Praktikum 2 Operasi Input Output"
Pokok Bahasan
- Pipeline
- Redirection
Tujuan Belajar
Setelah mampelajari materi dalam bab ini, mahasiswa diharapkan mampu:
- Memahami konsep proses I/O dan redirection
- Memahami standar input, output, dan error
- Menggunakan notasi output, append, dan here document
- Memahami konsep PIPE dan filter
Abstrak
Dalam era perkembangan teknologi seperti saat ini, dunia memerlukan teknologi informasi yang dapat memudahkan kehidupan masyarakat. Untuk mencapai tujuan tersebut, Linus Torvalds mengembangkan sistem operasi yang secara umum merupakan sistem operasi sumber terbuka (open source). Sistem operasi yang dikembangkan itu ialah Linux. Linux merupakan sistem operasi yang bersifat open source, maksudnya ialah setiap pengguna Linux dapat menggunakannya tanpa menggunakan lisensi apapun dan juga dapat mengembangkannya menjadi distro (distribusi) Linux baru. Oleh karena itu, pada praktikum ini dilakukan percobaan menggunakan perintah-perintah untuk proses I/O seperti redirection, pipeline, dan filtering. Praktikum dilakukan dengan menggunakan software virtualbox dari Oracle yang dijalankan di atas sistem operasi Windows 10. Dari percobaan mengeksekusi perintah-perintah untuk proses I/O, diperoleh hasil percobaan yang sesuai dengan panduan praktikum yang telah disediakan.
Kata kunci : Sistem operasi, Linux, proses I/O, virtualbox, open source.
Teori Singkat
Sebuah proses memerlukan input dan output. Instruksi (command) yang diberikan pada Linux melalui shell disebut sebagai eksekusi program yang selanjutnya disebut proses. Setiap kali instruksi diberikan, maka Linux kernel akan menciptakan sebuah proses dengan membetikan nomor PID (Process Identity). Proses dalam Linux selalu membutuhkan input dan menghasilkan suatu output. Dalam konteks Linux, input/output adalah:
- Keyboard (input)
- Layar (output)
- Files
- Struktur data kernel
- Peralatan I/O lainnya (misalnya Network)
Linux berkomunikasi dengan file melalui file descriptor yang direpresentasikan melalui angka yang dimulai dari 0, 1, 2, dan seterusnya. Tiga buah file descriptor standar yang lalu diciptakan oleh proses adalah:
- 0 = keyboard (standar input)
- 1 = layar (standar output)
- 2 = layar (standar error)
Linux tidak membedakan antara peralatan hardware dan file, Linux memanipulasi peralatan hardware sama dengan file.
Pembelokan (redirection) dilakukan untuk standard input, output, dan error, yaitu untuk mengalihkan file descriptor dari 0, 1, dan 2. Simbol untuk pembelokan adalah:
0< atau < pengganti standard input
1> atau > pengganti standard output
2>
Mekanisme pipa digunakan sebagai alat komunikasi antar proses.
Input => Proses1 => Output = Input => Proses2 => Output
Proses 1 menghasilkan output yang selanjutnya digunakan sebagai input oleh Proses 2. Hubungan output input ini dinamakan pipa, yang menghubungkan Proses 1 dengan Proses2 dan dinyatakan dengan symbol "|". Misalnya Proses1 | Proses2.
Filter adalah utilitas Linux yang dapat memproses standard input (dari keyboard) dan menampilkan hasilnya pada standard output (layar). Contoh filter adalah cat, sort, grep, pr, head, tail, paste, dan lainnya. Beberapa perintah Linux yang digunakan untuk proses penyaringan antara lain:
- Perintah grep, yang digunakan untuk menyaring masukannya dan menampilkan baris-baris yang hanya mengandung pola yang ditentukan. Pola ini disebut regular expression.
- Perintah wc, yang digunakan untuk menghitung jumlah baris, kata, dan karakter dari baris-baris masukan yang diberikan kepadanya. Untuk mengetahui berapa baris gunakan option -l, untuk mengetahui berapa kata, gunakan option -w, dan untuk mengetahui berapa karakter, gunakan option -c. Jika salah satu option tidak digunakan, maka tampilannya adalah jumlah baris, jumlah kata, dan jumlah karakter.
- Perintah sort, yang digunakan untuk mengurutkan masukannya berdasarkan urutan nomor ASCII dari karakter.
- Perintah cut, digunakan untuk mengambil kolom tertentu dari baris-baris masukannya, yang ditentukan pada option -c.
- Perintah uniq, yang digunakan untuk menghilangkan baris-baris berurutan yang mngalami duplikasi, biasanya digabungkan dalam pipeline dengan sort.
Jawaban Pertanyaan Pendahuluan
1. Apa yang dimaksud dengan redirection?
Redirection merupakan mekanisme yang digunakan untuk mengarahkan / membelokkan output yang biasanya ke terminal menjadi ke file.
2. Apa yang dimaksud dengan pipeline?
Pipeline merupakan mekanisme yang dilakukan untuk mengarahkan output dari satu perintah / program aplikasi / proses ke perintah / progam aplikasi / proses yang lain.
3. Apa yang dimaksud perintah di bawah ini (echo, cat, more, sort, grep, wc, cut, uniq):
Perintah echo digunakan untuk mencetak string yang akan diproses sebagai argumen ke standard output. Perintah cat untuk membuat daftar konten atau isi file pada standard output. Perintah more digunakan untuk menampilkan isi file teks dengan tampilan perlayar. Perintah sort untuk mencetak baris file teks input dan penggabungan semua file dalam urutan yang diurutkan. Perintah grep untuk melakukan pencarian sebuah pattern dalam file teks yang telah dibuat. Perintah wc untuk menghitung jumlah baris, kata, dan byte dari setiap file yang ditentukan atau input standar dan mencetak hasilnya. Perintah cut untuk memotong bagian-bagian baris dari file yang ditentukan, atau data yang disalurkan dan mencetak hasilnya ke standard output. Dan perintah uniq untuk menyaring baris berulang dalam file.
Percobaan dan Hasil serta Analisanya
Percobaan 1 : File descriptor
1. Output ke layar (standard output), input dari system (kernel)
2. Output ke layar (standard output), input dari keyboard (standard input)
3. Input dari keyboard dan output ke alamat internet
4. Input nama direktori, output tidak ada (membuat direktori baru), bila terjadi error maka tampilan error pada layar (standard error). Dibawah ini muncul error karena direktori mydir telah ada, sedangkan user berusaha untuk membuat direktori baru dengan nama yang sama.
1. Pembelokan standard output.
2. Pembelokan standard input, yaitu input dibelokkan dari keyboard menjadi dari file
3. Pembelokan standard error untuk disimpan di file. Pesan error yang muncul akibat duplikasi direktori akan dibelokkan ke file myerror.txt.
5. Notasi 1>&2 : pembelokan standard output adalah sama dnegan file descriptor 2 yaitu standard error
6. Notasi >> (append).
7. Notasi here document (<<++ .... ++) digunakan sebagai pembatas input dari keyboard. Perhatikan bahwa tanda pembatas dapat digantikan dengan tanda apa saja, namun harus sama dan tanda penutup harus diberikan pada awal baris.
8. Notasi - (input keyboard) adalah representan input dari keyboard. Artinya menampilkan file 1, kemudian menampilkan input dari keyboard dan menampilkan file 2. Perhatikan bahwa notasi "-" berarti menyelipkan input dari keyboard.
9. Untuk membelokkan standard output ke file, digunakan operator >
10. Untuk menambahkan output ke file digunakan operator >>
11. Untuk membelokkan standard input digunakan operator <
12. Pembelokan standard input dan standard output dapat dikombinasikan tetapi tidak boleh menggunakan nama file yang sama sebagai standard input dan output.
1. Operator pipa (|) digunakan untuk membuat eksekusi proses dengan melewati data langsung ke data lainnya.
2. Pipa juga digunakan untuk mengkombinasikan utilitas sistem untuk membentuk fungsi yang lebih kompleks.
LATIHAN
1. Lihat daftar secara lengkap pada direktori aktif, belokkan tampilan standard output ke file baru.
2. Lihat daftar secara lengkap pada direktori /etc/passwd, belokkan tampilan standard output ke file baru tanpa menghapus file baru sebelumnya.
3. Urutkan file baru dengan cara membelokkan standard input
4. Urutkan file baru dengan cara membelokkan standard input dan standard output ke file baru.urut
5. Buatlah direktori latihan2 sebanyak 2 kali dan belokkan standard error ke file rmdirerror.txt
6. Urutkan kalimat berikut:
Jakarta
Bandung
Surabaya
Padang
Palembang
Lampung
Dengan menggunakan notasi here document (<@@@ .... @@@)
7. Hitung jumlah baris, kata, dan karakter dari file baru.urut dengan menggunakan filter dan tambahkan data tersebut ke file baru.
8. Gunakan perintah dibawah ini dan perhatikan hasilnya.
$ cat > hello.txt
dog cat
cat duck
dog chicken
chicken duck
chicken cat
dog duck
[Ctrl-d]
$ cat hello.txt | sort | uniq
$ cat hello.txt | grep "dog" | grep -v "cat"
Kesimpulan
Sistem operasi Linux merupakan sistem operasi open source yang dapat digunakan dan dikembangkan secara bebas tanpa lisensi. Bagi sebagian orang, Linux terasa lebih sulit daripada Windows karena kurang familiar di kalangan masyarakat umum. Meski begitu, sistem operasi Linux tetap banyak digemari khususnya oleh para pegiat teknologi, misalnya system administrator, developer, devops engineer, network engineering, dan cyber security. Pada praktikum 2 ini telah dilakukan percobaan menggunakan perintah-perintah untuk proses I/O seperti redirection, pipeline, dan filtering. Dengan dilaksanakannya praktikum ini diharapkan dapat menambah pemahaman konsep proses I/O dan redirection; standard input, output, dan error; penggunaan notasi output, append, dan here document; serta pemahaman konsep PIPE dan filter.





























Tidak ada komentar:
Posting Komentar