Pertama yang akan kita bahas adalah dasar teori dari Proses I/O. Oke sobat tekno kita langsung saja masuk ke dalam pembahasan.
Instruksi (command) yang diberikan pada Linux melalui Shell disebut sebagai eksekusi program yang selanjutnya disebut Proses (process). Setiap instruksi yang diberikan, maka Linux kernel akan menciptakan sebuah proses dengan memberikan nomor PID (Process Identity). Proses dalam Linux selalu membutuhkan Input dan menghasilkan Output.
Untuk melihat apa saja file-file yang dibuka oleh kernel, dapat digunakan command lsof. Selain itu juga dapat dilihat pada procfs (/proc/), sebuah file system khusus yang menyimpan seluruh informasi mengenai proses-proses yang berjalan pada sistem operasi.
Berikut beberapa contoh file descriptor :
Contoh praktek bisa sobat lihat pada gambar dibawah.
Saya membuat dua file ektensi .txt
dengan isi nama-nama, lalu ketika dua file tersebut dieksekusi untuk
ditampilkan dan ditambahkan dengan peintah | sort maka akan tampil nama-nama tersebut sesuai abjad karena adanya sort tersebut.
Sumber : disini
Instruksi (command) yang diberikan pada Linux melalui Shell disebut sebagai eksekusi program yang selanjutnya disebut Proses (process). Setiap instruksi yang diberikan, maka Linux kernel akan menciptakan sebuah proses dengan memberikan nomor PID (Process Identity). Proses dalam Linux selalu membutuhkan Input dan menghasilkan Output.
1. File Descriptor
adalah sebuah abstraksi yang digunakan dalam pengaksesan file. Di dalam Linux/UNIX, file descriptor ini dilambangkan dalam sebuah integer. Untuk setiap proses, terdapat 3 file descriptor yang telah dimiliki.- Standard input (stdin). Bernilai 0.
- Standard output (stdout). Bernilai 1.
- Standar error (stderr). Bernilai 2.
Untuk melihat apa saja file-file yang dibuka oleh kernel, dapat digunakan command lsof. Selain itu juga dapat dilihat pada procfs (/proc/), sebuah file system khusus yang menyimpan seluruh informasi mengenai proses-proses yang berjalan pada sistem operasi.
Berikut beberapa contoh file descriptor :
a. Output ke layar (standar output), input dari sistem (kernel)
Sobat ketikan perintah # ps lalu tekan enter maka akan muncul seperti pada gambar.
gambar 1.1 |
b. Output ke layar (standar output), input dari keyboard (standar input)
Sobat ketikan perintah # cat lalu
tekan enter maka akan muncul kolom kosong, maka sobat tekno bisa
mengisinya misalkan disini saya mengisinya dengan kalimat "Hallo Selamat
Datang di Teknomania" ketika di enter lagi maka akan muncul tulisan
yang kita inputkan tadi.
gambar 1.2 |
c. Input dari keyboard dan output ke alamat internet.
Sobat ketikan perintah # mail
abcde@mail.com lalu tekan enter maka sobat akan melihat menu Cc,
Subject, dan isi dari kolom isian email tersebut, untuk mengakhirnya
tekan ctrl+d.
gambar 1.3 |
d. Input nama direktori, bila terjadi error makan akan muncul Standar error pada layar.
Contoh saya membuat direktori dengan
nama mydir, lalu saya ingin membuat direktori yang sama maka akan
muncul error "mkdir cannot create directory 'mydir' : file exists"
artinya karena direktori dengan nama mydir sudah ada jadi tidak bisa
membuatnya lagi.
gambar 1.4 |
2. Redirection
Dalam sistem unix dan Linux merupakan
salah satu cara untuk melewatkan output dari suatu program ke program lain,
dengan redirection kita bisa menyimpan output suatu file baik kedalam sebuah
file atau diproses dengan program lain. Fasilitas redirection memungkinkan kita untuk dapat
menyimpan output dari sebuah proses untuk disimpan ke file lain (Output
Redirection) atau sebaliknya menggunakan isi dari file sebagai input dalam
suatu proses (Input redirection). Komponen-komponen dari redirection adalah
<, >, < <, > >.
Berikut beberapa contoh Redirection :
a. Pembelokan standar output dan standar input
Untuk
pembelokan standar output sobat ketikan perintah # cat 1> myfile.txt
lalu tekan enter dan masukan text yang akan di simpan didalam
myfile.txt
Untuk
pembelokan standar input sobat ketik perintah # cat 0< myfile.txt
lalu tekan enter maka akan tampil teks yang ada didalam myfile.txt
Untuk melihat isi file bisa juga dengan perintah # cat myfile.txt
gambar 2.1 |
b. Pembelokan standar error untuk disimpan di file.
gambar 2.2 |
Sama
halnya seperti pada poin a, tetapi disini pesan error yang muncul akan
disimpan pada sebuah file .txt dengan mengetikan perintah yang sama
contoh diatas adalah # mkdir mydir 2> myerror.txt . ketikan # cat
myerror.txt maka akan muncul pesan error yang sudah disimpan tersebut.
3. Pipeline
Pipeline (|) adalah fasilitas di Shell yang berfungsi untuk memberikan input dari suatu proses dari output proses yang lain. Contohnya dapat dilihat pada gambar dibawahgambar 3.1 |
4.Filter
Adalah utilitas Linux yang dapat memproses standar input(dari keyboard) dan menampilkan hasilnya pada standar output (layar). Contoh filter adalah cat, sort, grep, dan lainnya.Contoh praktek bisa sobat lihat pada gambar dibawah.
gambar 4.1 |
Sumber : disini