• Tidak ada hasil yang ditemukan

Program Aplikasi Dalam GNU/Linux Dalam bab ini akan diambil beberapa contoh program aplikas

yang tersedia di GNU/Linux. Dengan mengetahui adanya beberapa program aplikasi tersebut maka pengguna diharapkan dapat memanfaatkan GNU/Linux sebagai sitem operasi yang siap untuk menyelesaikan segala pekerjaan yang dihadapinya.

Sejak pertama kali dirintis oleh Linus Torvalds pada tahun 1991 [1], GNU/Linux sudah menjadi sistem operasi bak UnixUnix-likeyang stabil1

dan dipakai oleh berba- gai lembaga riset dan universitas ternama di seluruh dunia untuk riset sains. Untuk menyebut sekedar contoh dalam bidang fisika, lembaga dan universitas tersebut an- tara lain ICTP (International Center for Theoretical Physics) di Trieste Italia, Purdue University di USA, Imperial College di UK, University of Paderborn di German dan sebagainya. Kelompok Fisika Komputasi di laboratorium Fisika Atom-Inti FMIPA- UGM merupakan salah satu laboratoriom di Indonesia yang segala fasilitasnya sejak awal dan secara keseluruhan dirancang berdasarkan GNU/Linux. Tiga alasan dis- amping banyak alasan lain terhadap pertimbangan ini adalah seperti yang disinggung dalam bagian (1) di depan.

Kesangsian yang pada umumnya muncul adalah : Apakah seorang pengguna masih terus dapat bekerja menggunakan komputer dengan mudah seperti saat meng- gunakan DOS/Windows dalam menyelesaikan pekerjaan yang dihadapinya ? Tidak adanya paketMicrosoft Officedalam Linux menyebabkan muncul pertanyaan : bagaimana untuk membuat dokumen dan menampilkan data dalam bentuk grafik ? Tidak adanya

1

paketCorel Drawmemunculkan pertanyaan : bagaimana untuk pembuatan gambar yang akan disisipkan dalam dokumen. Dan banyak lagi pertanyaan serupa sehingga muncul kesangsian umum bahwa GNU/Linux tidak layak digunakan sebagai sistem operasi alternatif karena kurangnya dukungan perangkat lunak yang mendukungnya. Di bawah akan diberikan beberapa argumentasi disertai beberapa contoh perangkat lunak yang menunjukkan bahwa kesangsian tersebut tidak ada dasarnya untuk diper- tahankan.

Argumen yang pertama adalah terkait dengan jawaban dari beberapa pertanyaan umum di atas. Adalah benar bahwa paket Office tidak ada di dalam GNU/Linux, na- mun yang tidak ada tersebut adalah paket Office yang dibuat olehMicrosoft. Sedan- gkan paket Office yang dibuat oleh perusahaan lain sebenarnya tersedia dalam Linux, sebagai contoh Star Officedari Star Division,Applixwaredari Redhat, KOffice dari KDE dan sebagainya. Hal sama juga terjadi untuk paket perangkat lunak yang lain. Dalam GNU/Linux mungkin tidak tersedia paket olah foto seperti PhotoShop dari Adobe namun tersedia Gimp dari Spencer Kimball dan Peter Mattis yang memili- ki kesamaan fasilitas. Dengan kata lain, adanya anggapan bahwa satu paket pro- gram tidak tersedia dalam GNU/Linux pada umumnya lebih disebabkan karena paket tersebut dalam Linux memiliki nama lain yang belum dikenal pengguna sistem op- erasi DOS/Windows.

Argumen yang kedua adalah adanya kemampuan GNU/Linux dalam menangani berbagai masalah yang menyangkut saintifik. Kemampuan ini sebenarnya tidak lep- as dari tujuan awal ketika GNU/Linux diciptakan yaitu untuk menjadi sistem operasi yang bak UNIX dan bahkan dalam perkembangannya sekarang menuju ke sistem op- erasi yang mengikuti aturan bawaan UNIX (POSIX compliance)2. Ini berarti bahwa paket program yang dapat bekerja di UNIX juga hampir dipastikan dapat dijalankan di GNU/Linux. Itulah sebabnya program-program yang sudah baku di UNIX sebagai contoh paket editor seperti Vi, Emacs, paket pengarsipan dan pengkompresan berkas seperti TAR, ZIP, GZIP atau COMPRESS, paket type setting seperti TROFF, TEX

atau LA

TEX, paket antarmuka bahasa Postscript seperti GHOSTSCRIPT juga men- jadi baku di GNU/Linux. Dengan sedikit mengingat sejarah ke belakang, jauh se- belum DOS/Windows diciptakan, UNIX sudah memainkan peran yang sangat pent-

2

ing dalam menyelesaikan berbagai masalah saintifik yang rumit dan yang sarat meli- batkan pemrosesan paralel dalam penanganannya. Sampai sekarangpun UNIX masih tetap dominan dalam lingkungan komputer besar (supercomputer hingga worksta- tion) dan pelayanan Client-Server. Perkembangan UNIX yang sudah cukup lama hingga menghasilkan bentuk stabil seperti sekarang ini tentunya tidak lepas dari pe- menuhan berbagai tuntutan yang dihadapi para peneliti saat menyelesaikan berbagai masalah saintifik. Dengan kata lain, mengingat GNU/Linux secara mudah dapat diartikan sebagai sistem operasi UNIX yang dapat bekerja dalam PC, maka kelebi- han UNIX tersebut juga berlaku pada GNU/Linux. Kelebihan tersebut masih di- tambah lagi dengan mengingat bahwa GNU/Linux dapat bekerja pada PC maka masalah yang dahulu hanya dapat dikerjakan dalam mainframe atau work-station, maka sekarang terbuka peluang untuk dikerjakan PC3.

Keberatan utama para calon pengguna GNU/Linux adalah terhadapfeel & taste

sistem operasi ini dibanding sistem operasi lain. Kesan pertama yang muncul saat menggunakan GNU/Linux adalah rumit dan tidak ramah (user friendly) karena ham- pir segala hal harus dipanggil menggunakan perintah tertentu melalui terminal. Ter- lepas dari argumen pengguna GNU/Linux (UNIX) bahwa dengan mekanisme semacam ini maka si pengguna akan lebih mampu dalam mengontrol komputer, namun hal ini merupakan sumber penyebab rasa frustasi bagi pengguna baruyang terbiasa dengan GUI dalam MS Windows. Usaha beberapa penyalur GNU/Linux seperti Redhat, SuSE, Turbo Linux dan Caldera untuk membuat agar GNU/Linux lebihuser friend- ly tanpa meninggalkan kehandalannya nampaknya pantas mendapat nilai plus dari setiap pengguna GNU/Linux sekarang ini. Dalam memberikan beberapa contoh di bawah, program aplikasi akan dikelompokkan berdasar fungsi program tersebut. Un- tuk memudahkan alur pembicaraan, tiap kelompok program akan diuraikan berurutan berdasarkan tahapan yang biasanya dihadapi oleh seseorang ketika menyelesaikan masalah komputasi. Beberapa tahap tersebut antara lain :

1. Tahap pertama adalah merumuskan masalah ke dalam suatu bentuk ungka- pan matematika yang sederhana dan sekompak mungkin. Perumusan tersebut dalam banyak hal sangat sulit sehingga diperlukan bantuan komputer untuk

3

Keuntungan ini semakin nyata dengan mengingat bahwa unjuk kerja PC sekarang tidak kalah dengan unjuk kerjawork-stationpada 5 atau beberapa tahun yang lalu

menyelesaikannya. Dalam tahap ini biasanya juga diperlukan paket program bantu yang dapat menangani masalah komputasi dengan cepat. Hal ini dapat dicapai dengan bantuan bahasa pemograman untuk menyelesaikan perhitungan yang rumit atau juga paket program matematika yang dapat menyederhanakan bentuk-bentuk yang sulit dikerjakan secara analitik. Maka pada tahap ini be- berapa paket program yang diperlukan antara lain

• text editor seperti vi, emacs, nedit, kwrite, kedit, gedit dan yang lain

• bahasa pemrograman seperti basic, fortran, pascal, c dan yang lain

• paket program matematika seperti mathematica, mupad, octave,

scilabdan yang lain.

2. Tahap kedua adalah tahap analisis data atau tampilan grafik. Dalam tahap ini diperlukan paket program yang dapat membuat plot data atau menampilkan liku fungsi matematika yang diperoleh dari tahap pertama. Beberapa paket program yang berguna dalam menampilkan plot dan grafik antara lain

• library yang berisi algoritma pembangkit grafik baik 2 dimensi maupun 3 dimensi sepertidislin,plot motivdan yang lain

• paket plot data interaktif sepertignuplot,xmgracedan sebagainya

3. Tahap yang ketiga adalah pembuatan dokumen atau laporan atas hasil yang diperoleh dari kedua tahap sebelumnya. Dua jenis paket penghasil dokumen antara lain

type settingseperti TEX, LA

TEX,lyxdan yang lain

word processor sepertistar office, applixware, Kofficedan sebagainya.

3.1

Text editor

Text editor memegang peranan penting dalam GNU/Linux (juga UNIX) mengingat hampir semua berkas tentang konfigurasi sistem divais dalam GNU/Linux berben-

tuk text ASCII yang dapat disunting (editable). Penyuntingan (script)pun4

juga di- lakukan dengan menggunakan text editor. Peranan penting lain dari text editor adalah untuk membuat source code dengan bahasa pemrograman yang diinginkan seperti

pascal,fortran,c/c++atau juga untuk membuat dokumen menggunakan pro- gramtype settingseperti LA

TEX. Karena hampir setiap pekerjaan dalam GNU/Linux melibatkan text editor, maka fasilitas text editor yang ada di dalam GNU/Linux pada umumnya tidak sekedar untuk membuka, menyunting dan menyimpan berkas tetapi dilengkapi fasilitas yang sangat lengkap dan rumit seperti kemampuan menyunting beberapa berkas sekaligus, memahami tipe berkas secara otomatis dan bahkan men- jalankan perintah GNU/Linux yang lain tanpa harus menutup lebih dahulu text editor tersebut. Berikut ini akan disinggung tiga jenis text editor di antara banyak pilihan yang lain.

3.1.1

Vi

Vi merupakan text editor baku dalam GNU/Linux dan UNIX. Sisi unik editor vi adalah apada kesan yang ditimbulkannya. Bagi pemula, vi terkesan sangat kaku, tidak ramah dan sangat sulit untuk digunakan. Tetapi bagi pengguna tingkat lanjut (termasuk kelompok hackers dan crackers), vi adalah editor pilihan yang mampu melakukan tugas yang rumit, memiliki perintah yang lengkap sekaligus hanya mem- butuhkan resources yang minim. Untuk bekerja, vi tidak memerlukan memori, ke- cepatan prosesor dan kebutuhan display grafik yang besar. Vi dapat bekerja dalam lingkunganGUI maupun terminal sederhana.

Untuk memanggil vi maka ketik perintah berikut dari terminal. Jika berada dalam bentuk GUI maka terminal dapat diaktifkan dengan menge-klik tombol kiri mouse satu kali pada gambar mirip monitor yang biasanya terletak di panel bawah monitor.

pn@atom99:~ > vi

Setelah ditekan tombol Enter maka kita akan melihat seluruh terminal window ter- isi bentuk seperti gambar (3.1).

4

Istilah script dalam GNU/Linux diartikan sebagai urutan beberapa perintah yang dipadukan dalam bentuk berkas sedemikian hingga menjalankan (execute) berkas tersebut akan sama pengaruh- nya dengan menjalankan beberapa perintah yang terkandung pada isi berkas tersebut secara berurutan sekaligus.

Gambar 3.1: Tampilan editor vi

Dengan tampilan awal seperti gambar tersebut jangan heran ketika kita mengetik sesuatu huruf maka sepertinya tidak ada respon dari vi. Ini merupakan hal yang normal. Alasannya adalah karena terdapat dua keadaan ataumodedalam vi. Keadaan pertama disebut keadaan perintah (command mode). Dalam keadaan ini peranan setiap tombol pada keyboard bukan untuk memberikan masukan huruf tetapi sebagai masukan perintah.

Keadaan kedua disebut keadaan masukan (input mode). Dalam keadaan inilah apa yang kita pejet pada keyboard akan muncul sebagai huruf pada vi persis seperti halnya waktu kita memejet salah satu tombol pada mesin ketik maka huruf yang terkait akan muncul di kertas.

Dalam keadaan normal (default) sebagai contoh saat pertama kali dipanggil, vi berada dalam kondisi command mode. Untuk berpindah ke input mode maka kita ketik i sebagai kependekan dari insert atau sisip. Kalau kita perhatikan, setelah ditekan tombol i tersebut maka akan muncul tambahan tulisan--INSERT--pada bagian kiri bawah gambar (3.1) di atas. Ini merupakan tanda bahwa vi siap menyunt- ing setiap huruf yang kita masukkan melalui keyboard. Untuk berpindah lagi ke com- mand mode maka kita ketik tombol Esc dan setiap tombol pada keyboard sekarang berfungsi sebagai perintah tertentu. Dengan asumsi bahwa kita berada dalam input mode maka beberapa perintah penting yang pantas untuk dipahami dalam menggu- nakan editor vi ini antara lain

Perintah Kegunaan

Esc x menghapus huruf di tempat kursor berada

Esc d d menghapus baris di tempat kursor berada

Esc : e berkas menyunting berkas dengan namaberkas

Esc : w menyimpan berkas dan meneruskan proses penyuntingan

Esc : w q menyimpan berkas dan keluar dari vi

Esc : q ! keluar vi tanpa menyimpan berkas yang disunting

Esc : help informasi tentang segala hal menyangkut cara menggunakan vi

3.1.2

KWrite

Jika vi adalah iditor pilihan bagi pengguna lanjut maka KWrite merupakan editor yang cocok untuk pemula. Bentuk tampilannya yang GUI, adanya pilihan menu ser- ta berfungsinya mouse merupakan beberapa fitur yang memudahkan pemula dalam menggunakannya. Kelebihan ini tentunya harus diimbangi dengan kelemahan lain yaitu dibutuhkannya memori yang besar dan kecepatan prosesor yang tinggi mengin- gat X-Window perlu diaktifkan sebelum KWrite dapat digunakan. Jika terinstall pada komputer yang kita hadapi maka KWrite dapat dipanggil dengan meng-klik mouse padaK-panelyang terletak pada pojok kiri bawah desktop KDE, kemudian memilih menuEditorsdan dilanjutkan memilih sub-menuAdvanced Editor. Apabila berhasil maka tampilan KWrite akan terlihat seperti gambar (3.2).

Adanya beberapa menu sertaiconpada KWrite akan memudahkan bagi pengguna untuk melakukan penyuntingan berkas. Sebagai contoh : pada menuFileakan ter- dapat beberapa sub menu untuk membuka (Open), menyimpan (Save) atau menge- print (Print) berkas sedangkan pada menu Edit akan terdapat sub menu untuk menghapus (Cut), menyalin (Copy) serta melekatkan (Paste) sebagian tulisan pa- da berkas. Jika diinginkan kita juga dapat memanfaatkan sejumlah icon yang tampil di bawah menu. Sebagai contoh : icon berbentuk arsip terbuka berfungsi untuk mem- buka berkas, icon berbentuk disket untuk menyimpan dan yang berbentuk printer untuk menge-print berkas.

Gambar 3.2: Tampilan editor KWrite

3.1.3

Emacs dan XEmacs

Emacs dan XEmacs dapat dikatakan sebagai text editor dengan fitur yang meru- pakan perpaduan antara fitur yang dimiliki oleh vi dan KWrite. Ini berarti Emacs dan XEmacs memiliki fasilitas penyuntingan berkas yang lengkap dan handal seperti vi sekaligus memiliki fasilitas menu untuk kemudahan penyuntingan seperti KWrite. XEmacs dan Emacs sebenarnya dua text editor kembar. Ini berarti keduanya pada hakekatnya memiliki sifat, fasilitas dasar dan kehandalan yang sama. Yang mem- bedakan hanyalah bentuk tampilan GUI antara keduanya saja. Secara umum bentuk GUI dari XEmacs lebih ramah dibanding Emacs dengan adanya tambahan beberapa icon disamping menu baku.

Apabila di antara menu pilihan padaK-panel khususnya pada sub-menu Ed- itors tidak terdapat pilihan Emacs atau XEmacs maka cara tercepat untuk mengak- tifkan Emacs atau XEmacs adalah dengan mengetik perintah berikut pada terminal.

pn@atom99:~ > emacs

Atau

Untuk menunjukkan bahwa antara keduanya terdapat kemiripan, gambar (3.3) menampilkan bentuk GUI dari Emacs dan XEmacs ketika ditampilkan bersamaan.

Gambar 3.3: Bentuk editor XEmacs dan Emacs

Tiga fitur penting yang ada pada Emacs atau XEmacs dan tidak terdapat pada editor lain adalah

1. Kemampuannya dalam menampilkan banyak window secara bersamaan dan masing-masing mampu menyunting berkas secara independen

2. Kehandalannya dalam mengelola apa yang disebutbuffersyaitu suatu bagian dalam memori yang dimanfaatkan untuk menyimpan data secara temporal. Ba- gi pengguna, mekanisme buffers semacam ini akan nampak seolah-olah berba- gai berkas dapat diakses secara bersamaan

3. Kemudahannya untuk dikonfigurasi sehingga mampu mengenali jenis berkas yang sedang disunting dan jika perlu sekaligus menampilkan menu tambahan yang sesuai dengan jenis berkas tersebut.

3.2

Bahasa pemrograman

Bahasa pemrograman adalah bahasa yang biasa digunakan oleh seseorang yaitu pem- rogram untuk berinteraksi dengan komputer. Pada perkembangan awalnya, setiap

bahasa pemrograman diciptakan dengan penekanan untuk melakukan tugas khusus tertentu. Ini menyebabkan satu bahasa pemrograman dengan bahasa lain dengan jelas dapat terbedakan fasilitas dan fungsinya. Sebagai contoh : Fortran adalah ba- hasa pemrograman untuk menangani masalah yang sarat dengan matematika dan komputasi sehingga populer di antara pengguna yang terlibat bidang saintifik dan rekayasa. Pascal adalah bahasa pemrograman yang menekankan pada struktur dan alur yang runtun dalam penyelesaian masalah dan karenanya populer di dunia pen- gajaran dan pendidikan komputer. C adalah bahasa pemrograman yang sarat den- gan fasilitas untuk penanganan sistem dan divais dalam komputer dan akibatnya merupakan bahasa pilihan bagi para perancang dan pengembang perangkat lunak. Karena penekanan pada tugas khusus ini membawa konsekuensi bahwa fitur terten- tu pada satu bahasa kadang tidak dipentingkan. Fortran memiliki kekurangan pada sifat struktur bahasa, Pascal kurang dalam masalah modularisasi program sedang C lemah dalam konsep object oriented programming. Namun dalam perkemban- gannya sekarang, setiap bahasa pemrograman cenderung memperbaiki diri sehingga fasilitas yang dimiliki satu bahasa pemrograman dengan yang lain praktis konver- gen pada satu fitur yang sama. Oleh karenanya pada masa sekarang menjadi tidak relevan untuk membandingkan kelebihan dan kekurangan satu bahasa pemrograman terhadap yang lain. Keputusan untuk memilih menggunakan satu bahasa pemrogra- man dibanding yang lain lebih didasarkan pada jenis masalah yang akan diselesaikan oleh bahasa yang kita pilih tersebut.

Apapun bahasa pemrograman yang dipilih, proses pemrograman dapat dikelom- pokkan dalam tiga urutan tahap yaitu

1. Tahap pertama adalah membuat program menggunakan text editor yang kita senangi. Program yang dibuat pada tahap ini biasa disebutsource code.

2. Tahap kedua adalah meng-compileprogram tersebut yaitu mengubah source code dari bentuk teks yang dipahami manusia ke bentuk berkas yang berisi kode-kode yang dipahami komputer dan disebutobject file.

3. Tahap ketiga adalah melakukanlinkantara berbagai object file yang diinginkan sehingga menjadi satu berkas yang siap untuk dijalankan atau di-run. Berkas yang siap dijalankan ini disebutexecutable file.

Tahap kedua dan tahap ketiga di atas dalam beberapa kasus terpadu dalam satu per- intah sehingga tidak nampak terpisah dari titik pandangan pengguna. Apabila tidak dinyatakan secara eksplisit maka hasil executable file dalam GNU/Linux dan Unix akan otomatis diberi nama a.out dan dengan nama inilah program tersebut diak- tifkan atau dipanggil. Berikut akan disinggung tiga bahasa pemrograman yang sering digunakan pengguna GNU/Linux.

3.2.1

C dan C++

Dokumen terkait