Anda di halaman 1dari 6

Halaman : 33

Sistem Operasi 2 : Linux



BAB IV
PROSES I/O
(Pertemuan 6)

Untuk menciptakan suatu proses, diperlukan intruksi atau perintah yang kemudian
menghasilkan keluaran(output), sehingga proses memerlukan input dan output.
Instruksi (command) yang diberikan pada Linux (melalui shell) disebut sebagai
eksekusi program yang selanjutnya disebut sebagai proses. Setiap kali instruksi
diberikan, maka Linux kernel akan menciptakan sebuah proses dengan memberikan
nomor PID (Proses Identity). Proses dalam Linux selalu membutuhkan input dan
menghasilkan suatu output.

4.1 File Descriptor
Linux berkomunikasi dengan file melalui file descriptor yang direpresentasikan
melalui angka yang dimulai dari 0, 1, 2 dan seterusnya. 3 buah file descriptor standar
selalu diciptakan oleh proses adalah :
0 =keyboard (standard input)
1 =layar (standard output)
2 =layar (standard error)
Linux tidak membedakan antara peralatan hardware dan file, Linux memanipulasi
peralatan hardware sama dengan file.
Input dari sistem (kernel), output ke layar (standard output) :

Input dari keyboard (standard Input), output ke layar :
[dsn970210@omega kelas]$ cat
Satu, dua tiga dicoba
Satu, dua tiga dicoba
sekarang selesai
sekarang selesai
^d

[dsn970210@omega kelas]$ who
benny ttyp0 Apr 8 15:01 (202.155.19.101)
dsn970210 ttyp1 Apr 8 14:47 (202.155.19.101)
dsn030435 ttyp2 Apr 8 15:01 (202.155.19.82)
Halaman : 34

Sistem Operasi 2 : Linux

Input dari direktori, output tidak ada(membuat direktori baru), bila terjadi error maka
tampilan error muncul pada layar(standard error)
[dsn970210@omega kelas]$ mkdir satu
[dsn970210@omega kelas]$ mkdir satu
mkdir: satu: File exists

4.2 Redirection (pembelokan)
Pembelokan 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> Pengganti standard error

Contoh :
Standard output
[dsn970210@omega kelas]$ cat 1> file.txt
Sedang mencoba
Menulis text
^d

Perintah tersebut diatas sama halnya jika penulisan perintahnya adalah cat >file.txt
Standard Input
[dsn970210@omega kelas]$ cat 0< file.txt
Sedang mencoba
Menulis text

Perintah tersebut diatas sama halnya jika penulisan perintahnya adalah cat <file.txt
atau cat file.txt
Standard Error
[dsn970210@omega kelas]$ mkdir dir1
[dsn970210@omega kelas]$ mkdir dir1
mkdir: dir1: File exists
[dsn970210@omega kelas]$ mkdir dir1 2>error.txt
[dsn970210@omega kelas]$ cat error.txt
mkdir: dir1: File exists
Halaman : 35

Sistem Operasi 2 : Linux

Dari contoh diatas setelah penggunaan 2>(standard error) untuk dibelokkan ke file
error.txt, error tidak muncul lagi, melainkan sudah tersimpan dalam file bernama
error.txt tersebut. Menulis 2>tidak boleh dipisah dengan spasi 2 >.

4.3 Append
Tanda >> dapat digunakan untuk menambahkan input pada file. J ika dalam
pembelokkan ke file digunakan tanda >maka isi file sebelumnya akan terhapus. Agar
file isi file pertama tidak terhapus dan dapat melakukan penambahan isi file baru,
maka dapat digunakan tanda pembelokkan >>
Contoh :
[dsn970210@omega kelas]$ echo "Baris Pertama" > naskah
[dsn970210@omega kelas]$ echo "Baris kedua" >> naskah
[dsn970210@omega kelas]$ echo "Baris ketiga" >> naskah
[dsn970210@omega kelas]$ cat naskah
Baris Pertama
Baris kedua
Baris ketiga
[dsn970210@omega kelas]$ echo "Baris keempat" > naskah
[dsn970210@omega kelas]$ cat naskah
Baris keempat

4.4 PIPA
Dalam Linux, mekanisme pipa (pipe) digunakan sebagai alat komunikasi antar proses.
Inputproses1output=input proses2 output
Proses1 menghasilkan output yang selanjutnya digunakan sebagai input oleh proses2.
Hubungan output input ini dinamakan PIPE, yang menghubungkan proses1 dengan
proses2 dan dinyatakan dengan simbol |.
Proses1 | proses2
Contoh :
[dsn970210@omega kelas]$ ls -l | sort -r
drwxr-x--- 2 dsn97021 dosen 512 Apr 8 16:07 dir1
-rw-r----- 1 dsn97021 dosen 28 Apr 8 15:48 file.txt
-rw-r----- 1 dsn97021 dosen 25 Apr 8 16:08 error.txt
-rw-r----- 1 dsn97021 dosen 14 Apr 8 16:20 naskah

Output dari ls l langsung diberikan sebagai input untuk program sort.
Halaman : 36

Sistem Operasi 2 : Linux

Dengan demikian PIPA dapat menyerderhanakan penulisan program dan eksekusi
proses secara lebih cepat. Identik dengan ``ls l | sort, tanpa mekanisme PIPA
instruksi dijalankan sebagai berikut :
[dsn970210@omega kelas]$ ls -l > tmp
[dsn970210@omega kelas]$ cat tmp
drwxr-x--- 2 dsn97021 dosen 512 Apr 8 16:07 dir1
-rw-r----- 1 dsn97021 dosen 25 Apr 8 16:08 error.txt
-rw-r----- 1 dsn97021 dosen 28 Apr 8 15:48 file.txt
-rw-r----- 1 dsn97021 dosen 14 Apr 8 16:20 naskah
Contoh PIPA :
$cat /etc/passwd | sort | head
$head /etc/passwd | tail -5|sort

4.5 Filter
Filter adalah utilitas yang dapat digunakan dalam sistem operasi Linux yang
digunakan untuk meproses standard input dan menampilkan hasilnya pada standard
output (layar).
Contoh filter adalah wc, cat, sort, grep, head, tail, paste

wc : Adalah perintah yang digunakan untuk menghitung jumlah baris, kata dan
karakter pada file.
Format :
Wc [-lwc] [file ...]
-l menghitung baris
-w menghitung kata
-c menghitung karakter

[dsn970210@omega kelas]$wc l document.txt
cat : adalah perintah yang dapat digunakan untuk membaca isi file, menciptakan file
baru dari standard input.
sort : adalah perintah yang dapat digunakan untuk mengurutkan isi file perbaris.
[dsn970210@omega kelas]$who | sort

Halaman : 37

Sistem Operasi 2 : Linux

grep : adalah perintah yang dapat digunakan untuk pencarian isi file sesuai dengan
pattern yang diminta.
[dsn970210@omega kelas]$ tail -5 naskah.txt
Sekarang
besok
Lusa
Kemarin
[dsn970210@omega kelas]$ grep esok naskah.txt
besok

Head : adalah perintah yang dapat digunakan untuk menampilkan beberapa isi file
beberapa baris awal.
Format :
head [-jumlah] [file ..]
-jumlah : untuk menentukan jumlah baris yang akan ditampilkan
Contoh :
[dsn970210@omega kelas]$ head -2 naskah.txt
Sekarang
Besok

Tail : adalah perintah yang dapat digunakan untuk menampilkan isi file beberpa baris
terakhir.
Format :
tail [-/+n] [ satuan] [file ..]
+n : ke-n hingga terakhir
-n : n buah yang terakhir
satuan : menyatakan baris (l), blok(b) dan karakter (c)
Contoh :
[dsn970210@omega kelas]$ cat > naskah.txt
Sekarang
besok
Lusa
Kemarin

[dsn970210@omega kelas]$ tail -2 naskah.txt
Lusa
Kemarin
Halaman : 38

Sistem Operasi 2 : Linux

Paste : adalah perintah yang dapat digunakan untuk menggabungkan isi file satu
dengan file lain perbaris, kemudian menampilkan dalam standard output dalam satu
output.
[dsn970210@omega kelas]$ cat > f1
1
2
3
4

[dsn970210@omega kelas]$ cat > f2
satu
dua
tiga
empat

[dsn970210@omega kelas]$ paste f1 f2
1 satu
2 dua
3 tiga
4 empat

Pada rangkaian perintah yang memanfaatkan PIPA, misalnya :
P1 | P2 | P3 | Pn-1 | Pn
Maka P2 sampai Pn-1 mutlak harus utilitas Linux yang berfungsi untuk proses filter,
sedangkan P1 (awal) dan Pn (akhir) boleh tidak filter. Beberapa perintah yang bukan
merupakan filter adalah who, ls, ps, lp, lpr, mail.


Latihan :
1. Buatlah perintah yang melibatkan 4 proses filter
2. Bagaimanakah perintah untuk mencari string profile yang berada dalam
beberapa file yang berada dalam direktori /etc
3. Carilah semua file yang ada dalam sistem dan hasil pencarian diletakkan
dalam file ketemu.txt dan jika terjadi errror karena permasalahan permisi file
simpanlah dalam file error.txt

Anda mungkin juga menyukai