Praktikum 2 - Operasi Input Output



                                                        PRAKTIKUM 2

OPERASI INPUT OUTPUT




SISTEM OPERASI

DOSEN PENGAMPU: MOHAMMAD FATHURAHMAN, S.T., M.T.

 

DISUSUN OLEH:

ALVIANA SIRAJUDIN – 2103421024

BM 5A

 

PROGRAM STUDI BROADBAND MULTIMEDIA

JURUSAN TEKNIK ELEKTRO

POLITEKNIK NEGERI JAKARTA

2023


POKOK BAHASAN:

  • Pipeline
  • Redirection

TUJUAN BELAJAR:

  • Memahami konsep proses I/O dan rediriction
  • Memahami standar input, ouput, dan error
  • Menggunakan notasi output, append, dan here document
  • Memahami konsep PIPE dan filter

DASAR TEORI

1. Proses I/O

    Sebuah proses memerlukan Input dan Output. Instruksi atau Command yang diberikan di dalam terminal Linux disebut sebagai eksekusi program yang selanjutnya disebut proses. Tiap instruksi yang diberikan pada terminal linux akan menciptakan sebuah proses dan akan diberikan nomor PID (Proccess Identity) atau ID dari setiap proses tersebut.

2. File Descriptor

    Linux berkomunikasi dengan file melalui file descriptor yang dipresentasikan 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)

3. Pembelokan (Redirection)

    Pembelokan di sini dilakukan sebagai standar input, output, dan error, yaitu untuk mengalihkan file description dari 0, 1, dan 2. Simbol untuk pembelokan adalah:

    0< atau < pengganti standari input

    1> atau > pengganti standari output

    2>

4. Pipa (Pipeline)

    Mekanisme pipa digunakan sebagai alat komunikasi antar proses.

                                Input => Proses1 => Output = Input => Proses2 => Output

    Proses 1 menghasilkan ouput yang selanjutnya digunakan sebagai input oleh Proses 2. Hubungan output input ini dinamakan pipa, ysng menghubungkan Proses 1 dengan Proses 2 dan dinyatakan dengan symbol "|".

                                                    Proses1     |     Proses2

 

5. Filter

       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.

    Pada sebuah rangkaian pipa:

P1| P2| P3 ….. | Pa-1| Pn

Maka P2, sampai dengan Pn-i mutlak harus utilitas Linux yang berfungsi sebagai Filter. P: (awal) dan Pa. (terakhin) boleh tidak filter. Utilitas yang bukan filter misalnya who, Is, ps, Ip, Ipr, mail dan lainnya.

Beberapa perintah Linux yang digunakan untuk proses penyaringan antara lain:

  • Perintah Grep

Digunakan untuk menyaring masukannya da n menampilkan baris-baris yang hanya mengandung pola yang ditentukan. Pola ini disebut regular expression.

  • Perintah WO

Digunakan untuk menghitung jumlah baris, kata dan karakter dari baris-baris masukan yang diberikan kepadanya. Untuk mengetahui berapa baris gunakan option - I, 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 barus, jumlah kata dan jumlah karakter

  • Perintah Sort

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

Digunakan untuk menghilangkan baris-baris berurutan yang mengalami duplikasi, biasanya digabungkan dalam pipeline dengan sort


TUGAS PENDAHULUAN:

1. Apa yang dimaksud redirection?

        Redirection adalah proses mengarahkan lalu lintas informasi, seperti halaman web atau URL, dari satu lokasi ke lokasi lain. Ini digunakan dalam konteks komputer dan internet untuk mengalihkan pengguna dari satu halaman atau URL ke halaman atau URL lainnya. Redirection sering digunakan untuk mengatasi perubahan URL, mengelola lalu lintas, atau mengarahkan pengguna ke halaman yang relevan.

2. Apa yang dimaksud pipeline?

        Pipeline adalah rangkaian atau alur proses yang terdiri dari beberapa langkah atau tahapan yang dilakukan secara berurutan untuk menyelesaikan tugas atau mencapai tujuan tertentu. Dalam konteks komputasi dan teknologi informasi, pipeline sering digunakan untuk menggambarkan alur data atau tugas yang dipecah menjadi beberapa langkah terpisah, yang masing-masing dilakukan secara berturut-turut oleh komponen atau proses yang berbeda. Hal ini digunakan untuk meningkatkan efisiensi, paralelisme, atau modularitas dalam pemrosesan data atau informasi.

3. Apa yang dimaksud perintah di bawah ini:

  • echo : Perintah untuk menampilkan teks atau variabel ke layar
  • cat : Perintah untuk menggabungkan dan menampilkan isi file teks
  • more : Perintah untuk melihat isi file teks secara bertahap dengan munculnya satu halaman sekaligus
  • sort : Perintah untuk mengurutkan baris dalam satu file
  • grep : Perintah untuk mencari teks terntentu dalam file teks atau output dari perintah lain
  • wc : Perintah untuk menghitung jumlah baris, kata, dan karakter dalam file teks
  • cut : Perintah untuk memotong atau menampilkan bagian0bagian tertentu dari setiap baris dalam file teks
  • uniq : Perintah untuk menghilangkan baris-baris berulang dalam file teks yang sudah diurutkan


PERCOBAAN:

1. Percobaan 1: File Descriptor

  • Output ke layar (standar output), input dari system (kernel)


  • Output ke layar (standar output), input dari keyboard (standar input)

  • Input dari keyboard dan output ke alamat internet
           Bila terdapat output error seperti "Command 'mail' not found", maka kalian bisa berikan printah "Sudo apt install mailutils" pada terminal dan tunggu hingga proses installnya berhasil.
Kemudian kembali berikan perintah "mail <email>".



  • Input nama direktori, output tidak ada (membuat direktori baru), bila terjadi error maka tampilan error pada layar (standar error)


2. Perobaan 2: Pembelokan (redirection)

  • Pembelokan standar output
  • Pembelokan standar input, yaitu input dibelokkan dari keyboard menjadi dari file
  • Pembelokan standar error untuk disimpan di file
  • Notasi 2>&1: Pembelokan standar error (2>) adalah identik dengan file descriptor 1

  • Notasi 1>&2 (atau >&2): Pembelokan standar output adalah sama dengan file descriptor 2 yaitu standar error
  • Notasi >> (append)
  • 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
  • Notasi -- (input keyboard) adalah representan input dari keybuard. Artinya menampilkan file 1, kemudian menampilkan input dari keyboard dan menampilkan file 2. Perhatikan bahwa notasi "-" berarti menyelipkan input dari keyboard
  • Untuk membelokkan standart output ke file, digunakan operator >
  • Untuk menambahkan output ke file digunakan operator >>
  • Untuk membelokkan standart input digunakan operator <
  • Pembelokan standart input dapat dikombinasikan tetapi tdak boleh menggunakan nama file yang sama sebegai standar input dan output


3. Percobaan 3: Pipa (pipeline)
  • Operator pipa (|) digunakan untuk membuat eksekusi proses dengan melewati data langdung ke data lainnya


4. Percobaan 4: Filter
  • Pipa juga digunakan untuk mengkombinasikan utlitas sistem untuk membentuk fungsi yang lebih kompleks


LATIHAN:

1. Lihat daftar secara lengkap pada direktori aktif, belokan tampilan standard output ke file baru

  • ketik 'ls' untuk melihat daftar direktori aktif, dan untuk membelokkan tampilan standard outout ke file baru, gunakan '>'


2. Lihat daftar secara lengkap pada direktori /etc/passwd, belokan tampilan standard output  ke file baru tanpa menghapus file baru sebelumnya

  • Untuk melihat secara lengkap berikan printah ls -al /etc/passwd, kemudian untuk memberikan tampilkan belokan standard output ke fila baru tanpa menghapus berikan perintah ls -al /etc/passwd >> baru

3. Urutkan file baru dengan cara membelokkan standard input

  • Berikan perintah cat 0< baru | sort untuk mengurtkan file dengan cara membelokkan

4. Urutkan file baru dengan cara membelokkan standard input dan standard output ke file baru.urut

  • Berikan perintah sort untuk mengurutkan file
  • Berikan perintah '<' untuk membelokkan standard input
  • Berikan perintah '>'  untuk membelokkan standard output ke file

5. Buatlah direktori latihan2 sebanyak 2 kali dan belokkan standard error ke file rmdirerror.txt

  • Berikan perintah mkdir untuk membuat direktori baru. Jika saat membuat direktori yang sama sebanyak 2x terdapat persan error, lakukan pembelokkan pesan error ke file menggunakan perintah '2>'

6. Urutkan kalimat berikut: Jakarta, Bandung, Surabaya, Padang, Palembang dan LampungDengan menggunakan notasi here document (<@@@....@@@)

  • Berikan notasi untuk membelokkan document ke file, kemudian berikan isi document tersebut. Jika sudah, document akan tersimpkan ke file yang dibelokkan
  • Kemudian berikan perintah sort untuk mengurutkan

7. Hitung jumlah baris, kata dan karakter daari file baru.urut dengan menggunakan filter dan tambahakan data tersebut data tersebut ke file baru

  • Untuk menunjukkan ,jumlah baris, kata, dan karakter berikan perintah ls baru.diurut | wc

8. Gunakan perintah di bawah ini dan perhatikan hasilnya

$ cat > hello.txt
dog cat
cat duck
dog chicken
chicken duck
chicken cat
dog duck
[ctrs-d]
$ cat hello.txt | sort | uniq
$ cat hello.txt | grep "dog" | grep -v "cat"

  • Berikan perintah grep untuk menyaring masukan dan menampilkan baris-baris yang hanya mengandung pola yang ditentukan

KESIMPULAN:

    Setelah melanjutkan dari praktikum 1 yaitu perintah dasar sistem operasi linux, di praktikum 2 kali ini sudah mulai terbiasa menggunakan operasi Linux. Di praktikum ini, kita mempelajari konsep proses input ouput dan redirection, memahami standar input output dan error pada Ubuntu, serta mulai menggunakan notasi output, append dan here document dan memahami konsep Pipe dan Filter. 


Komentar

Postingan populer dari blog ini

Praktikum 11 - Manajemen User dan Group

Praktikum 7 - UNIX System Call dan Manajemen Memori

Praktikum 12 - Manajemen Aplikasi