“Ketahuilah,hal2 terindah di dunia ini terkadang tak bs terlihat dlm pandangan atau teraba dgn sentuhan, mereka hny bs terasakan dgn hati”.
“Ketika kekuatan akan cinta melebihi kecintaan akan kekuasaan, maka dunia pun menemukan kedamaian”.
“Jika Anda bisa membuat orang lain tertawa, maka Anda akan mendapatkan semua cinta yg Anda inginkan”.
“Jangan lihat siapa yg berbicara, tapi dengarkan apa yg mereka bicarakan”.
Tiada siapa paling pandai & paling bodoh di dunia ini krn setiap yg pandai itu boleh mjd bodoh & setiap yg bodoh itu boleh mjdi pandaiPengetahuan ditingkatkan dgn belajar; kepercayaan dgn perdebatan; keahlian dgn latihan & cinta dgn kasih sayang
Proyek besar tak bisa diselesaikan sekaligus, tapi hrs di bagi2 kebagian yg kecil & dapat dikendalikan
Mgkn saja setiap masalah & tantangan yg kita anggap sulit itu masih ada solusinya, namun blom terpikirkan oleh kita
Barangsiapa membawa berita tentang orang lain kepadamu, maka dia akan membawa berita tentang dirimu kepada orang lain
Kualitas dari kehidupan se2orang itu tergantung pada komitmennya utk berhasil, bidang apapun yg dia tempuh
Manusia biasanya lebih menghargai sesuatu yg sukar diperoleh tapi sering melupakan nikmat yg telah tersedia
Orang yg berjaya dalam hidup adalah orang yg nampak tujuannya dengan jelas & menjurus kepadanya tanpa menyimpang
Seseorang dgn wawasan yg cukup untuk mengakui kekurangannya berada paling dekat dgn kesempurnaan
Orang2 berhasil tidak hanya keras hati, mereka juga pekerja keras yg percaya pada kemampuan dirinya
Berfikir itu cahaya, kelalaian itu kegelapan, kejahilan itu kesesatan & manusia yg paling hina ialah orang yg menganiaya orang bawahannya
Bkn mereka yg terkuat & terbesar yg akan dapat mempertahankan eksistensinya. Tapi hanya mereka yg mampu beradaptasi terhadap perubahan
Mimpi mmg sangat perlu utk memelihara gairah hidup & kemajuan, tapi mimpi tanpa disertai tindakan hanyalah seperti pepesan kosong belaka
Kawan sejati ialah orang yg mencintaimu meskipun telah mengenalmu dengan sebenar-benarnya ia itu baik dan burukmu
Kekecewaan mengajar kita arti kehidupan. Teruskan perjuangan kita walau terpaksa utk hadapi rintangan demi rintangan hidup
Barangsiapa yg hari ini sama dgn kemarin, maka tertipulah dia, & barangsiapa hari ini lebih jahat dari kemarin, maka terkutuklah dia
Kita tidak dapat meneruskan hidup dengan baik jika tidak dapat melupakan kegagalan dan sakit hati di masa lalu
Ketakutan-ketakutan akan membatasi Anda untuk melakukan berbagai hal yang sangat berarti bagi Anda
Tak ada rahasia utk menggapai sukses. Sukses itu dpt terjadi krn persiapan, kerja keras & mau belajar dari kegagalan
Lupakan kekecewaan, karena harapan dimasa depan masih terbentang luas dan begitu cerah
Dalam kerendahan hati ada ketinggian budi. Dalam kemiskinan harta ada kekayaan jiwa. Dalam kesempitan hidup ada kekuasaan ilmu
Kita akan belajar lebih banyak mengenai sebuah jalan dengan menempuhnya, daripada dengan mempelajari semua peta yag ada di dunia
Menuliskan tujuan akan sangat membantu dalam menjaga alasan melakukan sesuatu
Sukses dalam hidup tidak ditentukan oleh kartu baik, tapi dengan cara memainkan kartu buruk dengan baik
Yang anda butuhkan untuk meraih cita2 adalah keinginan kuat yg akan membawa anda menjadi pekerja keras
Anda bisa sukses sekalipun tak ada orang yang percaya anda bisa. Tapi anda tak pernah akan sukses jika tidak percaya pada diri sendiri
Sukses dalam hidup tidak ditentukan oleh kartu baik,tapi dengan cara memainkan kartu buruk dengan baik
Kalaulah anda tidak mampu untuk menggembirakan orang lain, janganlah pula anda menambah dukanya
Jangan sekali-kali kita meremehkan sesuatu perbuatan baik walaupun hanya sekadar senyuman
Mimpi tidak hanya membantu Anda berhadapan dengan kegagalan, tetapi mereka juga memotivasi Anda secara konstan
Mustahil itu OPINI. Ketika Anda TIDAK YAKIN dapat mencapai IMPIAN, sesungguhnya Anda sudah GAGAL SEBELUM MEMULAI
Seribu perkataan dan pengetahuan tdk berarti tanpa ada satu tindakan yang nyata. ACTION !!!
KEKUATIRAN tidak pernah memperbaiki hari esok, bahkan hanya melemahkan SUKACITA pada hari ini
Memaafkan memang takan mengubah MASA LALU, tapi pasti akan mempermudah MASA DEPAN
Berapa Besar ukuran CINTA? Sebesar PERJUANGAN kita untk MEMPERTAHANKAN nya
Kata-kata itu tenaga yang luar biasa. Seandainya mulut HItler diplester, Perang Dunia ke 2 tak akan ada.
Jadilah berkat bagi banyak orang. Berbagi itu indah teman :
Memiliki IMPIAN saja belum cukup. Miliki komitmen untuk MERASA HARUS dan BERTEKAD mencapai impian tersebut
Dalam Takut, yg Tampak adlh Hambatan. Dalam YAKIN, yg Tampak adlh KESEMPATAN
WORKING……is to win the WAR to be THE KING
Kesempatan tidak datang dua kali . Just do it !!! Jangan sampai menyesal karena kesempatan tersebut berlalu begitu saja
Hidup tanpa mempunyai TUJUAN sama seperti ” Layang-layang putus” Miliki tujuan dan PERCAYALAH anda dapat mencapainya
BERPIKIR POSITIF dapat menghancurkan semua tembok pemisah antara ‘tidak bisa’ dan ‘bisa’
Do what you LOVE , and LOVE what you do. And you will get what you want
You can’t go back and make new start.. But you can start now to make new end…
“Tidak akan ada langkah ke-2 bila tak ada langkah pertama” , Just Do it !!!
Jangan Merangkak dalam Keraguan, Berlarilah dengan KEYAKINAN
Good night all, syukuri untuk semua apa yg terjadi hari ini dan tidurlah dengan nyenyak.
Friendship doubles your joys, and divides your sorrows
Never tell God that u have a big PROBLEM, but tell ur problem that u have a BIG GOD
orang bijak adalah orang yang selalu belajar dari kegagalannya sedangkan orang yang bodoh adalah orang yang selalu menutupi kegagalannya
orang yang gagah perkasa itu bukan orang yang bertubuh kekar melainkan orang yang mampu mengendalikan emosinya ketika marah
lakukan apa yang dapat anda lakukan, dengan apa yang anda miliki dan di tempat anda berada
Kebanyakan orang gagal adalah orang yang tidak menyadari betapa dekatnya mereka ke titik sukses saat mereka memutuskan untuk menyerah
Jangan biarkan bayangan masa lalu merusak sinar matahari untuk hari esok, Hiduplah untuk hari ini.
Lakukanlah apa yang anda ingin lakukan. selama itu bernilai positif bagi anda.
Terkadang terasa pesimis,namun bangkitkanlah dengan bayangkan euforia yg nanti kalian raih
Jangan pernah berfikir tidak akan pernah bisa mendaptkan dia,meraih cita-cita,dan segala hal yg kau inginkan
Tetap semangat ! Tetap berkontribusi bagi bangsa dan negeri ini
Selamat pagi,awali hari dengan penuh semangat !
Lelah?menyerah? Padahal kesuksesan sudah di depan mata
Berusahalah terus jangan pantang menyerah seakan akan besok kau akan mendapatkan kebahagian tak terkira
Semangatlah karena kau tahu esok akan menjadi kesuksesanmu
Kau takkan pernah tahu kesuksesan itu jikalau tak pernah mencoba dan hanya menyerah
Mimpikan yang kau mau dan kejarlah impianmu itu
Belajar memang melelahkan,namun lebih lelah nanti kelak jikalau saat ini tidak belajar
Hidup ini penuh warna,kitalah yang harus berusaha mengisi tuk hidup penuh warna cerah
Orang sukses takkan pernah mengeluh bagaimana kalau akan gagal,namun berusaha bagaimana untuk berhasil
lakukanlah yang terbaik dan anda akan dapat hasil yang terbaik pula
kesuksesan itu penuh tantangan,gagal sekali dua kali itu biasa,tetaplah konsisten dengan mimpi kita
Hadapi masalah tnpa masalah agar masalah tidak mnjadi risalah kesalahan spanjang perjalanan ini
Genggamlah bumi sblm bumi menggengam anda,pijaklah bumi sblm bumi memijak anda,maka perjuangkanlah hidup ini sblm anda memasuki perut bumi.
berlarilah sekencang mungkin,realisasikan lah target yg telah dicanangkan untuk hidup yg lebih baik
“Hanya seseorang yg bs takut bertindak berani. Tanpa rasa takut itu tidak ada apapun yg bisa disebut berani”.
“Tindakan benar memerlukan kekuatan besar”.
“Tidak ada beban yg berat kalau semua orang mau mengangkatnya”.
“Buka mata kita lebar-lebar sebelum menikah, dan biarkan mata kita setengah terpejam sesudahnya”.
“Berbahagialah mereka yang dapat bertahan di saat menerima keberuntungan dan ketidakberuntungan”.
“Uang tdk akan pernah cukup untuk menyembunyikan perasaan sakit dan kebingungan”.
“Dalam dunia ini, tidak ada kesilapan atau ketidak sengajaan. Semua yg mendatangi kita adalah untuk dipelajari”.
“Ketka kita sedang tdk mengingat-Nya bahkan Ia selalu bsama kita dan menurunkan semua anugerah-Nya. Lalu pantaskah kita merusak semuanya?”.
“Ketika kita berencana maka biarkanlah Tuhan yg menjadi penghapusnya dan menggantinya dengan yg lebih baik”.
“Kejujuran adalah batu penjuru dari segala kesuksesan, Pengakuan adalah motivasi terkuat”.
“Mengucapkan kta2 negatif sprti halnya sseorang menancapkan paku2 di sebatang pohon.Walaupun paku sdh tercabut,tetap aj meninggalkan bekas”.
“Anda tdk pernah merencanakan masa depan dimasa lalu”. (Edmund)
“Ilmu itu di dapat dari lidah yg gemar bertanya dan akal yg suka berpikir”. (Abdullah bin Abbas)
“Tiada shalat yg sempurna tanpa jiwa yg khusyuk.Tiada puasa yg sempurna tanpa mencegah diri drpd pbuatan sia2″.
“Ya Tuhan, jgn engkau tinggalkan kami dlm kesengsaraan,jgn engkau ambil kami dlm kelengahan,dan jgn engkau jdkan kami tmasuk org2 yg lalai”.
SISTEM OPERASI DASAR
BAB I
PENDAHULUAN
I.1. Pengertian Sistem Operasi
Sistem operasi merupakan sebuah penghubung antara pengguna dari komputer dengan perangkat keras komputer. Sebelum ada sistem operasi, orang hanya mengunakan komputer dengan menggunakan sinyal analog dan sinyal digital. Seiring dengan berkembangnya pengetahuan dan teknologi, pada saat ini terdapat berbagai sistem operasi dengan keunggulan masing-masing. Untuk lebih memahami sistem operasi maka sebaiknya perlu diketahui terlebih dahulu beberapa konsep dasar mengenai sistem operasi itu sendiri.
Pengertian sistem operasi secara umum ialah pengelola seluruh sumber-daya yang terdapat pada sistem komputer dan menyediakan sekumpulan layanan (system calls) ke pemakai sehingga memudahkan dan menyamankan penggunaan serta pemanfaatan sumber-daya sistem komputer.
I.2. Fungsi Dasar Sistem Operasi
Sistem komputer pada dasarnya terdiri dari empat komponen utama, yaitu perangkat-keras, program aplikasi, sistem-operasi, dan para pengguna. Sistem operasi berfungsi untuk mengatur dan mengawasi penggunaan perangkat keras oleh berbagai program aplikasi serta para pengguna.
Sistem operasi berfungsi ibarat pemerintah dalam suatu negara, dalam arti membuat kondisi komputer agar dapat menjalankan program secara benar. Untuk menghindari konflik yang terjadi pada saat pengguna menggunakan sumber-daya yang sama, sistem operasi mengatur pengguna mana yang dapat mengakses suatu sumber-daya. Sistem operasi juga sering disebutresource allocator. Satu lagi fungsi penting sistem operasi ialah sebagai program pengendali yang bertujuan untuk menghindari kekeliruan (error) dan penggunaan komputer yang tidak perlu.
I.3. Tujuan Mempelajari Sistem Operasi
Tujuan mempelajari sistem operasi agar dapat merancang sendiri serta dapat memodifikasi sistem yang telah ada sesuai dengan kebutuhan kita, agar dapat memilih alternatif sistem operasi, memaksimalkan penggunaan sistem operasi dan agar konsep dan teknik sistem operasi dapat diterapkan pada aplikasi-aplikasi lain.
I.4. Sasaran Sistem Operasi
Sistem operasi mempunyai tiga sasaran utama yaitukenyamanan – membuat penggunaan komputer menjadi lebih nyaman, efisien – penggunaan sumber-daya sistem komputer secara efisien, serta mampu berevolusi – sistem operasi harus dibangun sehingga memungkinkan dan memudahkan pengembangan, pengujian serta pengajuan sistem-sistem yang baru.
I.5 Perkembangan komputer dengan Sistem Operasinya
Perkembangan komputer khususnya PC (Personal Computer) tidak lepas dari kemajuan tekhnologi CPU (Central Processing Unit). Perkembangan CPU yang begitu cepat dari jumlah transistor 2.300 pada tahun 1971 menjadi 7,5 juta pada tahun 1997 membuat kita berdecak kagum bukan main (jenis Intel). Perkembangan ini semula untuk diimplementasikan untuk menjalankan sistem operasi DOS (Disk Operating System) yang dikeluarkan oleh Microsoft sebagai pemasok software pada saat itu. Akan tetapi lama kelamaan munculah berbagai sistem operasi yang lain termasuk Linux sehingga perkembangan CPU menjadi meningkat serta diiringi muncul beberapa produsen prosesor pesaing selain Intel seperti AMD, Cyrix, IBM dan yang lainnya. Dan tentunya perkembangan ini pula menuntut kita untuk menuntut kita untuk mengembangkan dana kita supaya kita dapat mengikutinya dan mempelajarinya.
I.6. Sejarah Sistem Operasi
Sejak pertama kali telah dikenal ada dua jenis OS (Operating System) untuk menggerakan komputer, UNIX dan non-UNIX (MS-DOS, Mac-OS, dll) UNIX digunakan pada komputer besar seperti super komputer, mainframe dan sebagainya, sedangkan non-UNIX banyak digunakan pada PC.
UNIX dikembangkan diakhir tahun 60-an oleh sebuah group yang dipimpin Ken Thompson dari AT&T Laboratories. Pada awalnya OS ini didistribusikan secara gratis untuk pengembangan ke institusi-institusi pendidikan. Namun dalam perjalanannya, setelah banyak dipakai oleh dunia industri dan bisnis karena kehandalannya dalam dunia jaringan (networking), maka OS ini dipatenkan dan diperdagangkan.
UNIX di Indonesia dalam perkembangannya lebih dikenal sebagai sistem operasi yang mahal. Hal ini disebabkan oleh kelangkaan atau tidak tersedianya program aplikasinya dan bahkan sistem operasi yang merupakan varian dari UNIX seperti MINIX sulit ditemukan. MINIX tetap juga memerlukan sistem operasi yang benar-benar kompatible dengan IBM PC. Hal ini sulit diterapkan di Indonesia, karena sebagian besar perangkat keras yang digunakan adalah IBM PC kompatible dengan BIOS yang tersendiri.
Perkembangan UNIX yang mahal dan penggunaanya yang terbatas disebabkan karena dirancang untuk mampu mengerjakan perintah-perintah program secara simultan (multitasking) dan bisa digunakan oleh beberapa user secara bersama (multiuser).
MS-DOS dibuat pada tahun 1981 oleh Microsoft untuk pertama kalinya membuat sistem operasi untuk IBM-PC. Kerja sama antara Microsoft dengan IBM pada waktu itu membuat MS-DOS merupakan diterima sebagai sistem operasi standard.
Semenjak itu peran Microsoft dalam perindustrian komputer menjadi meningkat. Pada tahun 1991, kerja sama antara Microsoft dan IBM berakhir ketika mereka memisahkan diri untuk membuat sistem operasi bagi PC. IBM memilih untuk mengembangkan OS/2, sementara itu Microsoft mengembangkan sistem operasi Windows. Microsoft mengumumkan Windows 3.0 pada tahun 1990, diikuti Windows 3.1 pada tahun 1992. Windows NT yang digunakan untuk lingkungan bisnis dikeluarkan pada tahun 1993. Dan pada tahun 1995 tepatnya bulan Agustus, munculah sistem operasi Windows ’95 yang berhasil menjual sampai 7 juta kopi di seluruh dunia hanya dalam waktu dua bulan. Selang dua tahun dikeluarkanlah Windows ’95 B atau sering dikenal sebagai Windows ’97 untuk mengganti versi Windows ’95 yang lama karena memiliki banyak “bug”. Akan tetapi sistem operasi Windows ’97 ini juga dilaporkan tidak stabil dan masih memiliki bug oleh user, serta perkembangan tekhnologi hardware/software dan network termasuk juga internet menuntut Microsoft untuk menciptakan Windows ’98 yang dikeluarkan tiga tahun setelah pembuatan Windows ’95. Masalah realibilitas dan kestabilan pada sistem operasi Windows sampai saat ini menjadi kritikan para kritikus komputer, walaupun sistem operasi dibuat menjadi lebih mudah dioperasikan oleh user karena tekhnologi GUI (Graphic User Interface) yang ditawarkan. Kelemahan inilah membuat para user melirik sistem “open source code” yang lebih memiliki realibilitas karena user dituntut untuk mengembangkan sendiri sistem operasinya, walaupun user dituntut pula untuk belajar lebih giat dibandingkan GUI (Graphic User Interface) yang ditawarkan Windows bersifat “user friendly“. Tetapi “open source code” yang tersedia pada UNIX maupun variannya sulit untuk didapatkan karena sistem operasi tersebut sudah dipatenkan dan harganya mahal.
Menurut Tanenbaum, sistem operasi mengalami perkembangan yang sangat pesat, yang dapat dibagi kedalam empat generasi :
• Generasi Pertama (1945-1955)
Generasi pertama merupakan awal perkembangan sistem komputasi elektronik sebagai pengganti sistem komputasi mekanik, hal itu disebabkan kecepatan manusia untuk menghitung terbatas dan manusia sangat mudah untuk membuat kecerobohan, kekeliruan bahkan kesalahan. Pada generasi ini belum ada sistem operasi, maka sistem komputer diberi instruksi yang harus dikerjakan secara langsung.
• Generasi Kedua (1955-1965)
Generasi kedua memperkenalkan Batch Processing System, yaitu Job yang dikerjakan dalam satu rangkaian, lalu dieksekusi secara berurutan.Pada generasi ini sistem komputer belum dilengkapi sistem operasi, tetapi beberapa fungsi sistem operasi telah ada, contohnya fungsi sistem operasi ialah FMS dan IBSYS.
• Generasi Ketiga (1965-1980)
Pada generasi ini perkembangan sistem operasi dikembangkan untuk melayani banyak pemakai sekaligus, dimana para pemakai interaktif berkomunikasi lewat terminal secara on-line ke komputer, maka sistem operasi menjadi multi-user (di gunakan banyak pengguna sekali gus) dan multi-programming (melayani banyak program sekali gus).
• Generasi Keempat (Pasca 1980an)
Dewasa ini, sistem operasi dipergunakan untuk jaringan komputer dimana pemakai menyadari keberadaan komputer-komputer yang saling terhubung satu sama lainnya. Pada masa ini para pengguna juga telah dinyamankan dengan Graphical User Interface yaitu antar-muka komputer yang berbasis grafis yang sangat nyaman, pada masa ini juga dimulai era komputasi tersebar dimana komputasi-komputasi tidak lagi berpusat di satu titik, tetapi dipecah dibanyak komputer sehingga tercapai kinerja yang lebih baik.
I.7. Layanan Sistem Operasi
Sebuah sistem operasi yang baik menurut Tanenbaum harus memiliki layanan sebagai berikut :
pembuatan program, eksekusi program, pengaksesan I/O Device, pengaksesan terkendali terhadap berkas pengaksesan sistem, deteksi dan pemberian tanggapan pada kesalahan, serta akunting.
Pembuatan program yaitu sistem operasi menyediakan fasilitas dan layanan untuk membantu para pemrogram untuk menulis program; Eksekusi Program yang berarti Instruksi-instruksi dan data-data harus dimuat ke memori utama, perangkat-parangkat masukan/ keluaran dan berkas harus di-inisialisasi, serta sumber-daya yang ada harus disiapkan, semua itu harus di tangani oleh sistem operasi;
Pengaksesan I/O Device, artinya Sistem Operasi harus mengambil alih sejumlah instruksi yang rumit dan sinyal kendali menjengkelkan agar pemrogram dapat berfikir sederhana dan perangkat pun dapat beroperasi;
Pengaksesan terkendali terhadap berkas yang artinya disediakannya mekanisme proteksi terhadap berkas untuk mengendalikan pengaksesan terhadap berkas;
Pengaksesan sistem artinya pada pengaksesan digunakan bersama (shared system); Fungsi pengaksesan harus menyediakan proteksi terhadap sejumlah sumber-daya dan data dari pemakai tak terdistorsi serta menyelesaikan konflik-konflik dalam perebutan sumber-daya;
Deteksi dan Pemberian tanggapan pada kesalahan, yaitu jika muncul permasalahan muncul pada sistem komputer maka sistem operasi harus memberikan tanggapan yang menjelaskan kesalahan yang terjadi serta dampaknya terhadap aplikasi yang sedang berjalan; dan
Akunting yang artinya Sistem Operasi yang bagus mengumpulkan data statistik penggunaan beragam sumber-daya dan memonitor parameter kinerja.
Eksekusi program adalah kemampuan sistem untuk “load” program ke memori dan menjalankan program. Operasi I/O: pengguna tidak dapat secara langsung mengakses sumber daya perangkat keras, sistem operasi harus menyediakan mekanisme untuk melakukan operasi I/O atas nama pengguna. Sistem manipulasi berkas dalah kemampuan program untuk operasi pada berkas (membaca, menulis, membuat, and menghapus berkas). Komunikasi adalah pertukaran data/ informasi antar dua atau lebih proses yang berada pada satu komputer (atau lebih). Deteksi erroradalah menjaga kestabilan sistem dengan mendeteksi “error“, perangkat keras mau pun operasi.
Efesisensi penggunaan sistem :
- Resource allocator adalah mengalokasikan sumber-daya ke beberapa pengguna atau job yang jalan pada saat yang bersamaan.
- Proteksi menjamin akses ke sistem sumber daya dikendalikan (pengguna dikontrol aksesnya ke sistem).
- Accounting adalah merekam kegiatan pengguna, jatah pemakaian sumber daya (keadilan atau kebijaksanaan).
System call menyediakan interface antara program (program pengguna yang berjalan) dan bagian OS. System call menjadi jembatan antara proses dan sistem operasi. System call ditulis dalam bahasa assembly atau bahasa tingkat tinggi yang dapat mengendalikan mesin (C). Contoh: UNIX menyediakan system call:read, write => operasi I/O untuk berkas.
Tiga cara memberikan parameter dari program ke sistem operasi:
- Melalui registers (sumber daya di CPU).
- Menyimpan parameter pada data struktur (table) di memori, dan alamat table tsb ditunjuk oleh pointer yang disimpan di register.
- Push (store) melalui “stack” pada memori dan OS mengambilnya melalui pop pada stack tsb.
Mesin Virtual (Virtual Machine) program yang mengatur pemakaian sumber daya perangkat keras. Control program = trap System call + akses ke perangkat keras.
Konsep MV menyediakan proteksi yang lengkap untuk sumberdaya sistem, dikarenakan tiap MV terpisah dari MV yang lain. Namun, hal tersebut menyebabkan tidak adanya sharing sumberdaya secara langsung. MV merupakan alat yang tepat untuk penelitian dan pengembangan sistem operasi. Konsep MV susah untuk diimplementasi sehubungan dengan usaha yang diperlukan untuk menyediakan duplikasi dari mesin utama.
I.8. Struktur Komputer
Struktur sebuah sistem komputer dapat dibagi menjadi :
• Sistem Operasi Komputer.
• Struktur I/O.
• Struktur Penyimpanan.
• Storage Hierarchy.
• Proteksi Perangkat Keras.
I.8.1. Sistem Operasi Komputer
Dewasa ini sistem komputer multiguna terdiri dari CPU (Central Processing Unit); serta sejumlah device controller yang dihubungkan melalui bus yang menyediakan akses ke memori. Setiap device controller bertugas mengatur perangkat yang tertentu (contohnya disk drive, audio device, dan video display). CPU dandevice controller dapat dijalankan secara bersamaan, namun demikian diperlukan mekanisme sinkronisasi untuk mengatur akses ke memori. Pada saat pertama kali dijalankan atau pada saat boot, terdapat sebuah program awal yang mesti dijalankan. Program awal ini disebut program bootstrap. Program ini berisi semua aspek dari sistem komputer, mulai dari register CPU, device controller, sampai isi memori.
Interupsi merupakan bagian penting dari sistem arsitektur komputer. Setiap sistem komputer memiliki mekanisme yang berbeda. Interupsi bisa terjadi apabila perangkat keras (hardware) atau perangkat lunak (software) minta “dilayani” oleh prosesor. Apabila terjadi interupsi maka prosesor menghentikan proses yang sedang dikerjakannya, kemudian beralih mengerjakan service routineuntuk melayani interupsi tersebut. Setelah selesai mengerjakanservice routine maka prosesor kembali melanjutkan proses yang tertunda.
I.8.2. Struktur I/O
Bagian ini akan membahas struktur I/O, interupsi I/O, dan DMA, serta perbedaan dalam penanganan interupsi.
I.8.2.1. Interupsi I/O
Untuk memulai operasi I/O, CPU me-load register yang bersesuaian ke device controller. Sebaliknya device controller memeriksa isi register untuk kemudian menentukan operasi apa yang harus dilakukan. Pada saat operasi I/O dijalankan ada dua kemungkinan, yaitusynchronous I/O dan asynchronous I/O.
Pada synchronous I/O, kendali dikembalikan ke proses pengguna setelah proses I/O selesai dikerjakan. Sedangkan pada asynchronous I/O, kendali dikembalikan ke proses pengguna tanpa menunggu proses I/O selesai. Sehingga proses I/O dan proses pengguna dapat dijalankan secara bersamaan.
I.8.2.2. Struktur DMA
Direct Memory Access (DMA) suatu metoda penanganan I/O dimana device controller langsung berhubungan dengan memori tanpa campur tangan CPU. Setelah men-set buffers, pointers, dancounters untuk perangkat I/O, device controller mentransfer blok data langsung ke penyimpanan tanpa campur tangan CPU. DMA digunakan untuk perangkat I/O dengan kecepatan tinggi. Hanya terdapat satu interupsi setiap blok, berbeda dengan perangkat yang mempunyai kecepatan rendah dimana interupsi terjadi untuk setiapbyte (word).
I.8.3. Struktur Penyimpanan
Program komputer harus berada di memori utama (biasanya RAM) untuk dapat dijalankan. Memori utama adalah satu-satunya tempat penyimpanan yang dapat diakses secara langsung oleh prosesor. Idealnya program dan data secara keseluruhan dapat disimpan dalam memori utama secara permanen.
Namun demikian hal ini tidak mungkin karena :
- Ukuran memori utama relatif kecil untuk dapat menyimpan data dan program secara keseluruhan.
- Memori utama bersifat volatile, tidak bisa menyimpan secara permanen, apabila komputer dimatikan maka data yang tersimpan di memori utama akan hilang.
I.8.3.1. Memori Utama
Hanya memori utama dan register merupakan tempat penyimpanan yang dapat diakses secara langsung oleh prosesor. Oleh karena itu instruksi dan data yang akan dieksekusi harus disimpan di memori utama atau register.
Untuk mempermudah akses perangkat I/O ke memori, pada arsitektur komputer menyediakan fasilitas pemetaan memori ke I/O. Dalam hal ini sejumlah alamat di memori dipetakan dengan device register.
Membaca dan menulis pada alamat memori ini menyebabkan data ditransfer dari dan ke device register. Metode ini cocok untuk perangkat dengan waktu respon yang cepat seperti video controller. Register yang terdapat dalam prosesor dapat diakses dalam waktu 1clock cycle. Hal ini menyebabkan register merupakan media penyimpanan dengan akses paling cepat bandingkan dengan memori utama yang membutuhkan waktu relatif lama. Untuk mengatasi perbedaan kecepatan, dibuatlah suatu penyangga (buffer) penyimpanan yang disebut cache.
I.8.3.2. Magnetic Disk
Magnetic Disk berperan sebagai secondary storage pada sistem komputer modern. Magnetic Disk disusun dari piringan-piringan seperti CD. Kedua permukaan piringan diselimuti oleh bahan-bahan magnetik. Permukaan dari piringan dibagi-bagi menjadi track yang memutar, yang kemudian dibagi lagi menjadi beberapa sektor.
I.8.4. Storage Hierarchy
Dalam storage hierarchy structure, data yang sama bisa tampil dalam level berbeda dari sistem penyimpanan. Sebagai contoh integer A berlokasi pada bekas B yang ditambahkan 1, dengan asumsi bekas B terletak pada magnetic disk. Operasi penambahan diproses dengan pertama kali mengeluarkan operasi I/O untuk menduplikat disk block pada A yang terletak pada memori utama Operasi ini diikuti dengan kemungkinan penduplikatan A ke dalamcache dan penduplikatan A ke dalam internal register.
Sehingga penduplikatan A terjadi di beberapa tempat. Pertama terjadi di internal register dimana nilai A berbeda dengan yang di sistem penyimpanan. Dan nilai di A akan kembali sama ketika nilai baru ditulis ulang ke magnetic disk.
Pada kondisi multi prosesor, situasi akan menjadi lebih rumit. Hal ini disebabkan masing-masing prosesor mempunyai local cache. Dalam kondisi seperti ini hasil duplikat dari A mungkin hanya ada di beberapa cache. Karena CPU (register-register) dapat dijalankan secara bersamaan maka kita harus memastikan perubahan nilai A pada satu cache akan mengubah nilai A pada semua cache yang ada. Hal ini disebut sebagai Cache Coherency.
I.8.5. Proteksi Perangkat Keras
Sistem komputer terdahulu berjenis programmer-operated systems. Ketika komputer dioperasikan dalam konsul mereka (pengguna) harus melengkapi sistem terlebih dahulu. Akan tetapi setelah sistem operasi lahir maka hal tersebut diambil alih oleh sistem operasi. Sebagai contoh pada monitor yang proses I/O sudah diambil alih oleh sistem operasi, padahal dahulu hal ini dilakukan oleh pengguna.
Untuk meningkatkan utilisasi sistem, sistem operasi akan membagi sistem sumber daya sepanjang program secara simultan. Pengertian spooling adalah suatu program dapat dikerjakan walau pun I/O masih mengerjakan proses lainnya dan disk secara bersamaan menggunakan data untuk banyak proses.
Pengertian multi programming adalah kegiatan menjalankan beberapa program pada memori pada satu waktu.
Pembagian ini memang menguntungkan sebab banyak proses dapat berjalan pada satu waktu akan tetapi mengakibatkan masalah-masalah baru. Ketika tidak di sharing maka jika terjadi kesalahan hanyalah akan membuat kesalahan program. Tapi jika di-sharingjika terjadi kesalahan pada satu proses/ program akan berpengaruh pada proses lainnya. Sehingga diperlukan pelindung (proteksi). Tanpa proteksi jika terjadi kesalahan maka hanya satu saja program yang dapat dijalankan atau seluruh output pasti diragukan. Banyak kesalahan pemprograman dideteksi oleh perangkat keras. Kesalahan ini biasanya ditangani oleh sistem operasi. Jika terjadi kesalahan program, perangkat keras akan meneruskan kepada sistem operasi dan sistem operasi akan menginterupsi dan mengakhirinya. Pesan kesalahan disampaikan, dan memori dari program akan dibuang. Tapi memori yang terbuang biasanya tersimpan pada disk agarprogrammer bisa membetulkan kesalahan dan menjalankan program ulang.
I.9. Struktur Sistem Operasi
I.9.1. Komponen-komponen Sistem
Pada kenyataannya tidak semua sistem operasi mempunyai struktur yang sama. Namun menurut Avi Silberschatz, Peter Galvin, dan Greg Gagne, umumnya sebuah sistem operasi modern mempunyai komponen sebagai berikut:
• Managemen Proses.
• Managemen Memori Utama.
• Managemen Secondary-Storage.
• Managemen Sistem I/O.
• Managemen Berkas.
• Sistem Proteksi.
• Jaringan.
• Command-Interpreter system.
I.9.2. Managemen Proses
Proses adalah keadaan ketika sebuah program sedang di eksekusi. Sebuah proses membutuhkan beberapa sumber daya untuk menyelesaikan tugasnya. sumber daya tersebut dapat berupa CPU time, memori, berkas-berkas, dan perangkat-perangkat I/O.
Sistem operasi bertanggung jawab atas aktivitas-aktivitas yang berkaitan dengan managemen proses seperti:
• Pembuatan dan penghapusan proses pengguna dan sistem proses.
• Menunda atau melanjutkan proses.
• Menyediakan mekanisme untuk proses sinkronisasi.
• Menyediakan mekanisme untuk proses komunikasi.
• Menyediakan mekanisme untuk penanganan deadlock.
I.9.3. Managemen Memori Utama
Memori utama atau lebih dikenal sebagai memori adalah sebuah array yang besar dari word atau byte, yang ukurannya mencapai ratusan, ribuan, atau bahkan jutaan. Setiap word atau bytemempunyai alamat tersendiri. Memori Utama berfungsi sebagai tempat penyimpanan yang akses datanya digunakan oleh CPU atau perangkat I/O. Memori utama termasuk tempat penyimpanan data yang sementara (volatile), artinya data dapat hilang begitu sistem dimatikan. Sistem operasi bertanggung jawab atas aktivitas-aktivitas yang berkaitan dengan managemen memori seperti :
• Menjaga track dari memori yang sedang digunakan dan siapa yang menggunakannya.
• Memilih program yang akan di-load ke memori.
• Mengalokasikan dan meng-dealokasikan ruang memori sesuai kebutuhan.
I.9.4. Managemen Secondary-Storage
Data yang disimpan dalam memori utama bersifat sementara dan jumlahnya sangat kecil. Oleh karena itu, untuk meyimpan keseluruhan data dan program komputer dibutuhkan secondary-storage yang bersifat permanen dan mampu menampung banyak data. Contoh dari secondary-storage adalah harddisk, disket, dll.
Sistem operasi bertanggung-jawab atas aktivitas-aktivitas yang berkaitan dengan disk-management seperti: free-space management, alokasi penyimpanan, penjadualan disk.
I.9.5. Managemen Sistem I/O
Sering disebut device manager. Menyediakan “device driver” yang umum sehingga operasi I/O dapat seragam (membuka, membaca, menulis, menutup). Contoh: pengguna menggunakan operasi yang sama untuk membaca berkas pada hard-disk, CD-ROM dan floppy disk.
Komponen Sistem Operasi untuk sistem I/O :
- Buffer: menampung sementara data dari/ ke perangkat I/O.
- Spooling: melakukan penjadualan pemakaian I/O sistem supaya lebih efisien (antrian dsb.).
- Menyediakan driver untuk dapat melakukan operasi “rinci” untuk perangkat keras I/O tertentu.
I.9.6. Managemen Berkas
Berkas adalah kumpulan informasi yang berhubungan sesuai dengan tujuan pembuat berkas tersebut. Berkas dapat mempunyai struktur yang bersifat hirarkis (direktori, volume, dll.). Sistem operasi bertanggung-jawab :
• Pembuatan dan penghapusan berkas.
• Pembuatan dan penghapusan direktori.
• Mendukung manipulasi berkas dan direktori.
• Memetakan berkas ke secondary storage.
• Mem-backup berkas ke media penyimpanan yang permanen (non-volatile).
I.9.7. Sistem Proteksi
Proteksi mengacu pada mekanisme untuk mengontrol akses yang dilakukan oleh program, prosesor, atau pengguna ke sistem sumber daya. Mekanisme proteksi harus :
• membedakan antara penggunaan yang sudah diberi izin dan yang belum.
• specify the controls to be imposed.
• provide a means of enforcement.
I.9.8. Jaringan
Sistem terdistribusi adalah sekumpulan prosesor yang tidak berbagi memori atau clock. Tiap prosesor mempunyai memori sendiri. Prosesor-prosesor tersebut terhubung melalui jaringan komunikasi Sistem terdistribusi menyediakan akses pengguna ke bermacam sumber-daya sistem. Akses tersebut menyebabkan:
• Computation speed-up.
• Increased data availability.
• Enhanced reliability.
I.9.9. Command-Interpreter System
Sistem Operasi menunggu instruksi dari pengguna (command driven). Program yang membaca instruksi dan mengartikan control statements umumnya disebut: control-card interpreter, command-line interpreter, dan UNIX shell. Command-Interpreter System sangat bervariasi dari satu sistem operasi ke sistem operasi yang lain dan disesuaikan dengan tujuan dan teknologi I/O devices yang ada. Contohnya : CLI, Windows, Pen-based (touch), dan lain-lain.
BAB II
PERBANDINGAN SISTEM OPERASI SECARA UMUM
II.1. Sistem Operasi BeOS : Sistem Operasi Multimedia.
Sejak versi pertamanya tahun 1997, salah satu tujuan utama BeOS, adalah mengelola jumlah data yang besar secara optimal. Sistem operasi ini dapat memenuhi tuntutan aplikasi-aplikasi multimedia dengan dukungan multi processor, sistem file 64 bit, danmultithreading.
BeOs dapat menggunakan dan memanfaatkan semua prosesor yang ada, baik itu satu atau 16 prosesor. User tak perlu mengupgrade komputernya cukup hanya dengan mengganti motherboard atau memasang porcessor baru. Pada mulanya BeOS dikembangkan untuk BeBox, sebuah komputer dengan 2 prosesor PowerPC dan dengan memori utama maksimal 256 MB. Meskipun BeOS dulu termasuk sangat lengkap namun BeOs tidak dapat menyaingi sistem operasi seperti Intel dan Macintosh. Sehingga sejak versi 3, BeOS sudah tersedia untuk Power-Macintosh dan untuk PC berbasis Intel.
Multithreading membebani beberapa prosesor sekaligus.
Dengan arsitektur multithreading, BeOS memanfaatkan prosesor secara optimal. Dari sistem file hingga tampilan, sistem operasi dibagi-bagi dalam threads. Threads adalah pekerjaan atau tugas yang dapat dilakukan secara terpisah dan tak tergantung satu sama lain. Bila ada beberapa prosesor pada satu PC, maka BeOS membagi-bagi threads secara dinamis kepada setiap prosesor. Contoh : Pada sistem file, prosesor yang satu mengubah sebagian file, sedangkan prosesor yang lainnya mencopy file tersebut.
Sistem file 64 bit untuk file berukuran besar.
Sistem operasi seperti Windows 95/98 bekerja dengan sistem file 32 bit yang membatasi file maksimal 4 GB. Ukuran ini memadai untuk proses audio, dimana 1 jam audio rata-rata menyita tempat 600 MB pada audio CD. Dengan sistem file 64 bit, sebuah file pada BeOS dapat mencapai ukuran hingga 18 juta Terabyte atau sama dengan 18 milyar GB.
Selain itu sistem file juga mencatat semua yang dilakukan. Artinya, setelah hubungan listrik terputus, ia dapat mengembalikan semua data seperti semula. Bila sistem operasi server membutuhkan berjam-jam untuk itu, maka BeOS hanya perlu beberapa menit, karena ia hanya men-start ulang transaksi yang belum selesai dan menutupnya. Aksi yang sudah selesai dihapus dari protokol.
BeOS berorientasi pada objek (object oriented). Bagi para software-developer, ini berarti ia dapat kembali ke objek sistem. Contohnya adalah Bapplication, Bwindows atau Bview. Sebuah program sederhana seperti Hello World hanya terdiri atas beberapa baris code, di mana turunan objek-objek tersebut dapat “diwariskan” dan dimodifikasi.
Aplikasi yang tersedia masih sedikit.
Daftar program yang tersedia untuk BeOS masih sedikit dan kalah jauh dibandingkan dengan Windows. Namun dalam usianya yang masih muda, hal ini dapat dimaklumi.
Data BeOS 4.5 berikut dengan keuntungan dan kelemahannya.
Platform : PowerPC, Intel
Arsitektur : 32 bit, Preemptives multitasking, Multithreading, Symmetrical Multiprocessing, dukungan jaringan terintegrasi, optimal untuk web.
RAM : minimum 16 MB
Kapasitas harddisk : minimal 150 MB
Sistem file sendiri : Journaling 64 bit, multithread.
Sistem file lain : FAT 16, FAT 32
Kernel : MACH
Keuntungan :
1. Optimal untuk aplikasi multimedia (video editing atau proses audio).
2. Sistem Multithread yang unik dalam mengoptimalkan dua atau lebih prosesor.
3. Penanganan sistem file 64 bit untuk berukuran besar.
4. Masa depannya menjanjikan karena dalam waktu dekat sistem operasi ini akan mendapatkan dukungan dari produsen hardware Eropa, BeOS direncanakan akan mendukung Intel Pentium III serta dapat berfungsi dual boot karena mampu menulis dan membaca sistem file FAT Windows dan DOS.
Kelemahan :
1. Belum adanya aplikasi kantor/bisnis yang sesuai atau berkemampuan yang baik.
2. Sistem operasi ini nampaknya hanya berorientasi pada sistem operasi multimedia saja.
3. Sedikitnya aplikasi untuk desktop pada saat ini.
4. Untuk saat ini sistem operasi BeOS bukan merupakan sistem operasi yang bersifat open-source.
II.2. OS/2 Warp : Server Bisnis yang mahal.
Sistem operasi OS/2 Warp dikembangkan oleh IBM. Pada versi 4 (Merlin) terdapat pembaruan terpenting dengan adanya tampilan yang jauh lebih cantik dan sangat mirip dengan Windows ’95 serta integrasi pengenalan bahasa. Dan kini pada versi 5 (Aurora), IBM melakukan perbaikan teknik secara umum, yang bisa menempatkan Warp selangkah di depan Windows NT. Inovasi yang terpenting pada versi 5 adalah “Journaling File System” (JFS). Strukturnya lebih menyerupai database daripada sistem file. Berkat JFS, setiap perubahan dapat dibatalkan dan pemeriksaan integritas seperti yang dituntut oleh NTFS atau sistem lainnya tidak diperlukan. Dan ini merupakan keuntungan yang besar bagi sebuah server, yang harus selalu available 100 %, baik dalam Intranet maupun Internet.
Software yang tersedia untuk pengguna pribadi relatif sedikit. Untuk aplikasibisnis sudah tersedia versi Star Office yang sesuai. Di bidang aplikasi khusus, misalnya untuk bank atau asuransi, dimana keamanan investasi merupakan hal penting bagi pelanggan, OS/2 menguntungkan untuk investasi karena mampu mendukung versi yang lama.
Kelebihan utama OS/2 adalah arsitekturnya yang kuat. Kernel preemptives multitasking-nya sangat stabil dan hanya dapat disaingi oleh UNIX. Integrasi Java dalam sistem membuat Warp server penghubung platform ini menjadi sebuah “server untuk semua”. Ini mungkin trend masa depan, dimana Warp menghubungkan semua dalam sistem operasi dengan semua platform dalam jaringan (“any to any”).
Data OS/2 Warp Server for E-Business berikut dengan keuntungan dankelemahannya.
Platform : Intel
Arsitektur : 32 bit, Preemptives Multi-tasking, Multithreading, Symmetrical Multiprocessing, dukungan jaringan, optimal untuk Web, Java, manajemen jaringan, dan speech-recognitionyang terintegrasi.
Kernel : monolithic.
RAM : minimum 32 MB
Kapasitas harddisk : minimal 350 MB
Sistem file sendiri : HPFS, Journaling File System (JFS), multithreaded.
Sistem file lain : FAT, dengan bantuan shareware : FAT 32, VFAT, NTFS, ext2fs, HFS.
Keuntungan :
1. Sistem stabil untuk jaringan perusahaan, server komunikasi dan transaksi, yang menghubungkan beberapa platform.
2. Sistem Multithread yang menyerupai BeOS.
3. Tampilan yang jauh lebih cantik daripada Windows ’95 serta integrasi pengenalan bahasa.
4. Sistem operasi server yang available 100 %, baik dalam Intranet maupun Internet, berkat bantuan JFS.
5. Menguntungkan untuk investasi karena mampu mendukung versi yang lama.
Kelemahan :
1. Tidak banyak software untuk pengguna pribadi selain Office.
2. Harga yang mahal membuat para user yang struktur finansialnya lemah enggan untuk membelinya.
3. Soal stabilitas masih belum menyaingi UNIX.
4. Khusus digunakan untuk bisnis, bukan untuk kalangan pribadi atau pengguna PC.
II..3. MacOS : Standar bagi graphic designer.
MacOS ditemukan pada tahun 1984 oleh peneliti Xerox PARC. Tetapi Applelah yang mempopulerkan dan belakangan diikuti oleh Microsoft. Apple memang jelas lebih maju karena hardware dan sistem operasi yang berasal dari produsen yang sama. Dalam versi awal-awalnya, MacOS telah memiliki fungsi yang setara dengan Windows ’95, baru pihak Microsoft mengikutinya dengan dikeluarkan Windows ’95 yang menyerupai MacOS namun tidak sama. Tetapi dalam tahun-tahun terakhir ini sistem operasi Apple secara teknis agak tertinggal. Walaupun selama 15 tahun MacOS juga mengalami perkembangan yang cukup pesat, tapi beberapa hal pada MacOS tampak agak kuno dibandingkan dengan pesaing pada platform lainnya. Versi terakhir yaitu MacOS 8.5.1 memilikipreemptives multithreading, pengaman memori, sistem file modern (HFS+) dan TCP/IP-Stack yang matang.
MacOS 8.5 juga dilengkapi dengan program “sherlock“. Detektif ini tidak hanya mencari file pada harddisk dan dalam jaringan lokal, tapi juga dapat beraksi di Internet dan mencari berdasarkan keyword.
Lebih cepat pada program grafik dan DTP.
Dengan tampilan grafis yang nyaman di operasikan, Mac selalu merupakan pilihan para graphic-designer dan desktop publisher (DTP). Hal yang tak berubah hingga kini adalah kinerjanya belum dapat ditandingi oleh Wintel (Windows/Intel) pada aplikasi semacam Photoshop atau QuarkXPress. Belum lama ini, Apple mengeluarkan sebuah arsitektur sistem operasi baru, yaitu MacOSXServer. Untuk pertama kalinya, sistem operasi server yang baru ini berbasis kernel UNIX (Mach 2.5) dan menawarkanmultitasking sejati serta kinerja yang jauh lebih tinggi daripada AppleShare-Server biasa. Dengan demikian sistemnya juga lebih stabil. Namun Apple tetap tak mempercayakan pengendalian server kepada administrator sistem melalui baris perintah. Semua fungsi komputer dioperasikan lewat tampilan grafis. Sementara itu kompatibilitasnya dengan aplikasi MacOS tetap terjaga berkat bantuan program terkenal yang disebut “Blue-Box”.
Data MacOS 8.5 berikut beserta keuntungan dan kelemahannya.
Platform : PowerPC.
Arsitektur : 32-bit.
Kernel : monolithic.
RAM : minimal 8 MB.
Kapasitas harddisk : minimal 120 MB.
Sistem file sendiri : HFS, HFS+.
Sistem file sendiri : FAT, FAT 32, ISO9660, UDF.
Keuntungan :
1. Platform untuk DTP, graphic design, web-design dan aplikasi bisnis.
2. Versi terakhirnya memiliki preemptives multithreading, pengaman memori, sistem file modern (HFS+) dan TCP/IP-Stack yang matang.
3. Memiliki program “sherlock“.
4. Kompatibilitasnya tetap terjaga berkat bantuan program terkenal yang disebut “Blue-Box“.
Kelemahan :
1. Dibandingkan dengan BeOS nampaknya MacOS tertinggal jauh. Sehingga sepertinya cocok untuk standar bagi graphic designer.
2. Secara teknis, MacOS tertinggal dengan sistem operasi yang lainnya.
3. Kurang cocok untuk aplikasi server dan game.
II.4. JavaOS : Tak tergantung platform.
Pencipta Java, Sun Microsystems juga membuat sistem operasi Java yang disebut JavaOS. Jalur pengembangan JavaOS terbagi dalam beberapa cabang : Ada JavaOS untuk customer, yaitu sebuah sistem operasi untuk televisi, Web-Phones, dan komputer saku (palmtop). Di sisi lain Sun mengembangkan dan memasarkan JavaOS for Business bersama IBM. JavaOS bukan pengganti sistem operasi biasa utuh, melainkan lebih tepat disebut sebagai sebuah lingkungan (pengembangan) bagi perusahaan. Pendahulu JavaOS for Business adalah JavaOS for NC. Konsep ini dibuat untuk Thin Clients, yang dapat beroperasi tanpa harddisk. Konsekuensinya : Yang ingin menggunakan JavaOS membutuhkan Windows NT untuk booting.
Dengan versi business-nya JavaOS dioptimalkan bagi platform industri yang terbuka. Dengan demikian perusahaan dapat melakukan perawatan dan mengelola aplikasi web dan Java secara sentral melalui server. Softwarenya tak perlu diinstalasikan pada setiap komputer klien.
Menurut keterangan Sun Microsystems, untuk platform Java tersedia lebih dari 1200 aplikasi komersial. JavaOS-Runtime yang tak tergantung platform dan kernel khususnya membentuk kedua lapisan utama sistem operasi. Komponen penting Runtime adalah Java Virtual Machine.
Data JavaOS for Business 2.1.
Platform : Pentium dan lainnya.
Arsitektur : 32 hingga 128 bit (tergantung pada platform).
Kernel : Microkernel.
RAM : 128 bit.
Harddisk : Remote dari NT-server.
Sistem file : Tidak ada.
Keuntungan :
1. Dapat beroperasi tanpa harddisk.
2. Cocok untuk pengembangan bisnis untuk tekhnologi informasi. Seperti : televisi, dll.
3. Software tak perlu diinstalasikan pada setiap komputer klien.
4. Perawatan dan pengelolaan aplikasi web dan Java secara sentral melalui server jaringan.
5. JavaOS-Runtime yang tak tergantung platform dan kernel khususnya mebentuk kedua lapisan utama sistem operasi.
6. Lingkungan pengembangan untuk perusahaan yang tak tergantung platform.
Kelemahan :
1. JavaOS ternyata bukan sistem operasi biasa yang utuh.
2. Thin Clients dapat beroperasi asal membutuhkan Windows NT untuk booting.
3. Nampaknya tidak cocok untuk para pengguna PC.
4. Hampir tidak mempunyai aplikasi standar.
II.5. Sistem UNIX Komersial : Database Profesional.
Dapat diandalkan, aman, mahal dan terikat pada hardware tertentu, merupakan atribut sistem operasi Unix komersial seperti Solaris dan SCO-Unix. Unix komersial untuk PC ini hanya terdapat pada Solaris dari Sun dan UnixWare dari SCO (Santa Cruz Operation, Inc.). Bidang aplikasi utama adalah server Intranet dan database.
Unix mempunyai sejarah yang panjang dan terkenal dengan stabilitas sistem yang sangat stabil dan mempunyai kinerja yang lebih baik pada beberapa bidang dibanding Windows NT, tetapi pangsa pasar Unix komersial ini mulai menghilang. Sebab pangsa pasar yang mulai menghilang diakibatkan harga sistem operasi ini mahal dan kecepatan inovasi Linux yang lama kelamaan mendesak sistem Unix komersial. Para produsen yang bersangkutan telah mencoba berreaksi pada tekanan pasar. Contoh saja ialah Solaris 7 untuk pribadi dapat dipesan dengan haraga 35 dollar langsung dari Amerika. Pada SCO, Anda bahkan dapat memilih UnixWare 7 atau OpenServer 5.0.5 dan memesannya secara online. Namun dalam kemampuan multiuser keduanya tak sebaik versi komersial.
Untuk Solaris dan SCO tersedia Linux Emulator untuk menjalankan program Linux, yaitu ELF dan a.out yang tersedia di internet (http://www.ugcs.caltech.edu/-steven/lrxrun). Dan mulai UnixWare 7.1 disertakan sebuah emulator. Instalasi Solaris untuk CPU Intel cukup mudah : Anda hanya membutuhkan 2 buah partisi kosong. Boot-manager Solaris diinstalasikan kemudian, bila belum ada. Anda dapat memilih 2 cara instalasi : Interkatif seperti biasa atau berbasis web-browser. Pengenalan hardware berlangsung otomatis dan memberikan hasil yang lumayan. Pembuatan partisi sebaiknya agak rumit, karena interaksinya sama sekali lain dengan FDISK umumnya. Routine instalasi SCO UnixWare lebih maju dibandingkan Solaris, tapi tak dapat langsung menemukan banyak network card.
Kini produsen seperti Sun dan SCO menawarkan sistem operasinya secara (hampir) cuma-cuma sebagai versi perkenalan. Jadi yang ingin mencobanya suatu hari pada waktu bekerja wajib untuk membayarnya. Selain itu software yang gratis diyakini bisa meningkatkan penyebaran dan membantu menemukan bug dengan lebih cepat.
Tetapi para “pejuang” software gratis menolak politik lisensi ini. Mereka mengkritik, bahwa softwarenya tetap terikat lisensi, dan tidak boleh dicopy secara bebas. Dibanding Linux, driver hardware-nya juga kurang menyenangkan.
Data Solaris 7 (Unix) berikut beserta keuntungan dan kelemahannya.
Platform : Intel, SPARC, UltraSPARC.
Arsitektur : 32-bit (Intel), 64-bit (UltraSPARC).
Kernel : monolithic.
RAM : minimal 32 MB.
Kapasitas harddisk : mulai 500 MB.
Sistem file sendiri : UFS.
Sistem file lain : FAT, FAT32, ISO9660.
Keuntungan :
1. Sistem file stabil untuk database, server Internet, Intranet, file-server, Internet-client, pengembangan Java.
2. Stabilitas yang terkenal dan kinerja yang lebih baik dibandingkan dengan Windows NT.
3. Telah tersedia sistem operasi Unix versi “hampir” gratis.
Kelemahan :
1. Harga sistem operasi komersial yang mahal.
2. Kecepatan inovasi Linux lama kelamaan mendesak sistem Unix komersial.
3. Penawaran sistem operasi Unix versi “hampir” gratis tak sebaik sistem operasi Unix komersial.
4. Driver hardware yang kurang menyenangkan pada versi “hampir” gratisnya.
5. Sedikit software untuk kantor.
6. Belum cocok untuk Desktop.
Data SCO UnixWare 7.0.1 berikut beserta keuntungan dan kelemahannya.
Platform : Intel.
Arsitektur : 32-bit, 64-bit sedang disiapkan.
Kernel : monolithic.
RAM : 32 MB.
Kapasitas harddisk : 0,5 – 1 GB.
Sistem file sendiri : VxFS (Veritas File System), bfs (boot file system).
Sistem file lain : s5, ufs, sfs (secure file system), FAT, ISO 9660.
Keuntungan :
1. Sistem file stabil untuk database, server Internet, Intranet, file server, Internet-client, pengembangan Java.
2. Routine instalasi SCO UnixWare lebih maju dibandingkan Solaris.
3. Menyediakan juga versi “hampir” gratis seperti Solaris.
Kelemahan :
1. Harga sistem operasi komersial mahal.
2. Kecepatan inovasi Linux lama kelamaan mendesak sistem Unix komersial.
3. Penawaran sistem operasi Unix versi “hampir” gratis tak sebaik sistem operasi Unix komersial.
4. Driver hardware yang kurang menyenangkan pada versi “hampir” gratisnya.
5. Sedikit software untuk kantor.
6. Belum cocok untuk Desktop.
II.6. FreeBSD dan NetBSD : Unix “Gratis” untuk Favorit ISP.
Konsep awal sistem operasi Unix yang dikembangkan 1968 masih ditemukan dalam banyak versi modern, misalnya FreeBSD dan NetBSD. Sebagian besar kernel Unix ditulis dalam bahasa pemrograman C dan karenanya dapat dipindahkan ke platform hardware lainnya dengan sedikit upaya. Sistem file disusun secara hirarkis dengan direktori, sedang hardware dikontak melaluiinterface simbolik. Beberapa perusahaan dan organisasi mengluarkan sistem operasi Unix sebagai turunan atau sering juga disebutderivate.
Cabang utama keluarga Unix adalah BSD-Unix (BerkeleySoftware Distribution). Pada tahun 1990 dari situ muncul “cabang” Net/2, yang kenudian menjadi 386BSD 0.1. Sebelum 386BSD mencapai versi 0.1, NetBSD dan FreeBSD memisahkan diri. Tahun 1994 dalam NetBSD dan FreeBSD masuk jalur BSD yang semula (kini sebagai versi baru 4.4 BSD-Lite).
Untuk pemilik PC yang ingin menghemat, pilihan pertama adalah FreeBSD (http://www.freebsd.org). Pilihan keduaNetBSD 1.3.3 (http://www.netbsd.org). FreeBSD kompatibel secara binari dengan SCO-Unix, BSDI, NetBSD, Linux dan 386BSD.
Secara teoritis, ini berarti program sistem operasi-sistem operasi tersebut dapat digunakan pada FreeBSD. Sayangnya FreeBSD tidak dapat digunakan pada mikrokanal lama PC IBM. Yang lebih buruk lagi adalah ia juga tak mendukung ISA Plug and play card. Sebagai
tampilan grafis bisa digunakan Xfree86 versi 3.3.3, dengan desktop manager seperti KDE, GNOME, AfterStep dan WindowMaker. Pada beberapa tes benchmark yang dilakukan , FreeBSD dapat berjalan lebih cepat daripada Linux dalam beberapa bagian, misalnya sebagai server NFS (Network File System adalah protokol file-server yang umum antara sesama sistem operasi Unix).
Sistem operasi server yang bagus dengan masa depan tidak jelas.
Jika dibandingkan dengan Linux, maka masalah yang ada pada FreeBSD dan NetBSD adalah kecilnya basis developer dan pemakai yang mencari bug/kesalahan program. Selain itu, hampir tidak ada aplikasi komersial untuk BSD yang gratis. Sebagai server database dan sistem operasi desktop, masa depan sistem operasi ini tidak jelas, termasuk untuk masa depan. Secara prinsip, turunan BSD yang berasal dari software gratis ini setidaknya sama baiknya dengan Linux dalam kebanyakan aplikasi server. Itu sebabnya kenapa cukup banyak ISP (Internet Service Provider) yang menggunakan BSD. Hanya saja dukungan hardwarenya tidak luas. Karena kurangnya developer dan pemakai serta dukungan hardware, keluarga Unix yang gratis ini tak bisa menandingi perkembangan Linux yang demikian cepat.
Data FreeBSD 3.1 berikut beserta keuntungan dan kelemahannya.
Platform : Intel, Alpha eksperimental.
Arsitektur : 32-Bit (Intel), 64-Bit (UltraSPARC).
Kernel : monolithic.
RAM : 32 MB.
Kapasitas harddisk : 150 – 350 MB.
Sistem file sendiri : ufs.
Sistem file lain : FAT, SO9660, NTFS, FAT, ISO9660, NTFS.
Keuntungan :
1. Sistem file stabil untuk database, server Internet, Intranet, file-server, Intranet-client, pengembangan Java.
2. FreeBSD dapat berjalan lebih cepat daripada Linux dalam beberapa bagian, misalnya sebagai server NFS.
3. Termasuk sistem operasi yang hemat karena versi gratisnya.
4. Secara prinsip BSD sama baiknya dengan Linux dalam aplikasi server.
Kelemahan :
1. Sedikit software untuk kantor apalagi versi gratisnya.
2. FreeBSD tidak dapat digunakan pada mikrokanal lama PC IBM.
3. FreeBSD tidak dapat mendukung ISA-plug-and-play-card.
4. Kecilnya basis developer dan pemakai yang mencari bug/keasalahan program.
5. FreeBSD tak bisa menandingi perkembangan Linux yang cepat karena kurangnya developer dan pemakai serta dukungan hardware.
6. Belum jelas masa depannya untuk server database dan sistem operasi desktop.
II.7. Linux : Sistem Operasi Semua.
Pada tahun 1991 seorang hacker handal berkebangsaan Finlandia yang bernama Linus Benedict Torvalds mengembangkan sebuah sistem UNIX yang bisa diimplementasikan di komputer setingkat PC yang dikenal dengan nama Linux dengan tujuan memasyarakatkan UNIX. Linux adalah open source OS berlesensi GPL (GNUGeneral Public Lisence) yang mana pendistribusian dan pengembangannya bisa dilakukan secara bebas dengan mengikutkan kode program asal sebagai turunannya.
Dalam kondisi sulit seperti sekarang ini, maka OS seperti Linux, FreeBSD, dll merupakan suatu alternatif yang tepat untuk digunakan. Ia menyediakan sistem operasi secara cuma-cuma melalui Internet dan ia tak mengira akan menimbulkan “keributan”. Dulu pemakai masih membutuhkan sebuah sistem operasi lainnya (Minix) untuk dapat menggunakan Linux.
Pada tahun 1992, terjadi diskusi menarik yang terkenal dengan tema “Linux is obsolete” antara Andy Tanenbaum, seorang profesor ilmu komputer di Free University of Amsterdamp, yang juga merupakan pembuat utama sistem operasi Minix, dengan Linus Trovalds tentang kernel monolithic dan microkernel. Diskusi “Linux is obsolete” tersebut dapat dibaca di alamathttp://www.swappy.osc.de/kde/www/food/linux_is_obsolete.html. Sebenarnya Linux hanya merupakan sebuah kernel dari sebuah sistem PC-UNIX yang mengatur semua program-program baik aplikasi maupun aksesori yang mengikutinya. Kernel adalah sebuah program yang mengatur kontrol bermacam-macam hardware atau distribusi file-file yang diperlukan. Dengan demikian kernel bisa juga dianggap sebagai “jantung”-nya operating sistem.
Linux bekerja dengan sebuah kernel monolithic. Sebuah kelompok kerja di Dresden melakukan percobaan implementasi microkernelyang dinamakan proyek “Fiasco“. Informasi lengkap mengenai Fiasco kernel ini bisa anda lihat di Internet pada alamathttp://os.inf.tu-dresden.de/fiasco/overview.html. Jika dibandingkan dengan MS-Windows9x, maka kernel identik dengan filefile .DLL yang berada dalam direktoris system. Untuk menghubungkan kernel dengan user, maka diperlukan beberapa program interface-nya. Program-program tersebut antara lain adalah: Network tool, User command, X-Window, dll. Namun di dalam MS-Windows9x kernel tersebut terenkripsi sehingga bukan merupakan open source seperti Linux dan juga bukan merupakan operating system yang berlisensi GPL.
Linus Trovald sendiri tak pernah meragukan bahwa Linux akan memantapkan sebagai dirinya sebagai sistem operasi server. Kenyataan membuktikan bahwa para pengguna web server lebih memilih turunan Unix yang gratis ini. Di level perusahaan, penggunaan Linux sebagai firewall atau web server meningkat secara drastis. Salah satu alasannya adalah tingkat kestabilannya yang sangat baik. Server Linux biasanya dapat difungsikan ratusan hari tanpa booting atau uptime. Bila dihentikan, biasanya karena adanya pemasangan komponen hardware baru atau mengupdate kernel. Oleh karenanya Linux sangat cocok sebagai sistem operasi untuk server. Selain itu juga sangat murah. Selain murah, distribusi Linux juga dapat digunakan pada beberapa server sekaligus tanpa melanggar aturan lisensi. Kecuali program database komersial, program server untuk Linux juga tersedia gratis. Contoh : Samba untuk file server, Apache untuk web-server, dst. Tidak ada pembatasan jumlah pengguna (client) oleh lisensi, baik pada Linux maupun program server. Persyaratan tekhnis dapat diatasi dengan penggunaan hardware yang lebih baik.
Tanpa dukungan para produsen hardware dan software, sistem operasi apapun tidak akan bisa berkembang, termasuk Linux. Tetapi perusahaan software terkemuka telah membuat aplikasi untuk Linux, sebut saja Oracle, Informix, Sybase, IBM, Inprise (dulu Borland) dan Software AG.
Penggunaannya sebagai sistem operasi desktop.
Persaingan antar sistem operasi bukan hanya ditentukan pada tingkat pasar server tetapi pada tingkat pemakaian pada meja kerja di kantor dan di rumah. Kriteria untuk pemilihan sistem operasi untuk server tak sama dengan untuk PC desktop. Selain banyaknya fungsi dan harga, instalasi dalam bahasa negara pemakai yang bersangkutan, perawatan, paket Office, program-program yang ditawarkan, dan game, pengoperasian yang mudah dan intuitif juga tidak kalah pentingnya.
Di masa lalu Linux masih memiliki kelemahan dalam hal-hal tersebut. Tetapi kini kelemahan tersebut telah dikurangi dan diramalkan akan lenyap seluruhnya. Para produsen distribusi Linux selalu memperbaiki instalasinya dari versi ke versi dengan tujuan menyingkirkan hambatan-hambatan bagi pemakai. Kernel Linux sendiri dapat mengenali banyak komponen hardware secara otomatis, sehingga pemakai tidak mutalk memerlukan pengetahuan mengenai alamat I/O atau Interrupts untuk instalasi.
Menyangkut paket Office juga sudah ada perbaikan. Selain software klasik untuk Unix, yaitu Applix, sudah ada Star Office5 dan WordPerfect 8 dari Corel, yang diberikan gratis bagi pemakai pribadi. Perbaikan juga sedang dilakukan pada paket Office yang terintegrasi, Koffice for KDE. Namun prosesnya masih dalam tahap pengembangan yang relatif dini. Program-program populer yang mapan juga semakin banyak banyak tersedia untuk Linux, misalnya : Acrobat Reader, program CAD Varcon, ARCAD, dan Mathematica. Kelebihannya sering terletak pada konfigurasi yang beragam, dimana dengan sistem modul dari aplikasi dan tools dapat diciptakan lingkungan aplikasi sesuai dengan keinginan.
Tampilan grafis KDE nyaman digunakan.
Desktop manager standar untuk tampilan grafis Linux Xfree86 disebut Fvwm cukup rumit dioperasikan. Sebaliknya KDE (K Desktop Environment) versi 1.1.1 lebih menyerupai Windows 98. Fungsi drag and drop, request HTTP dan FTP dalam jendela dimungkinkan. Selain itu aplikasi untuk KDE sudah banyak tersedia dan akan terus bertambah. Cukup mudah membuat program aplikasi KDE, karena KDE berbasis pada QT milik perusahaan Troll Tech dari Norwegia. Sejak ada proyek KDE, lisensinya sebagai software gratis dipertentangkan. QT untuk Linux adalah software gratis, tetapi terikat lisensi Troll Tech. Sedangkan untuk platform lain, QT tidak gratis. Karena itu beberapa distributor seperti Redhat dan Debian tidak mau mengedarkan KDE secara resmi. Tapi mulai versi 2.0 mendatang, Troll akan memasukan QT ke bawah lisensi Open Source. Langkah ini tentunya
menguntungkan bagi penyebaran KDE.
Alternatif lainnya bila anda kurang berminat adalah GNOME (GNU Network Object Model Environment) di alamathttp://www.gnome.org. Walaupun tak “sematang” KDE, namun sejak awal dikonsep sebagai software gratis.
Kernel utama 2.2: Milestone yang penting.
Dimulai munculnya versi kernel 2.2 yang ditunggu-tunggu, dan kemudian 2.2.0 lalu 3 hari kemudian diikuti versi 2.2.1 sebagai bug fix. Tidak lama kemudian versi berikutnya, yaitu 2.2.2 sudah beredar dan kini telah mencapai versi 2.2.10 (stabel version). Perkembangan versi baru yang demikian cepat menunjukkan bahwa versi 2.2 merupakan sebuah milestone yang penting. Meskipun tidak mudah, tapi mengupgrade kernel menguntungkan karena banyak penambahan baru-penambahan baru. Apalagi dengan kernel 2.2 yang menambahkan
beberapa fungsi-fungsi baru seperti : pada Prosesor mendukung prosesor non-Intel, multi prosesor lebih efektif dan Power Managementbahkan mendukung platform 64-bit. Dan fungsi-fungsi baru yang lainnya.
Data Linux 2.2.10 berikut beserta dengan keuntungan dan kelemahannya.
Platform : Intel, PowerPC, Alpha, Motorola 68K, SPARC, UltraSPARC, ARM, MIPS.
Arsitektur : 32-bit, 64-bit, pada UltraSPARC dan Alpha.
RAM : 8 MB.
Kapasitas harddisk : 200-600 MB.
Sistem file sendiri : Ext2.
Sistem file lain : FAT, FAT32, ISO9660, NTFS, HPFS, HFS, UFS, SYSV, Minix.
Kernel : monolihic.
Keuntungan :
1. Basis yang fleksibel untuk Internet client, server Internet/Intranet, File server, database, jaringan dan kantor-kantor.
2. Sistem operasi yang sangat stabil setara dengan Unix komersial seperti server Linux dapat difungsikan ratusan hari tanpa bootingatau uptime.
3. Pendistribusian gratis tanpa terikat lisensi sehingga membuat Linux sebagai sistem operasi termurah dan terbaik.
4. Sangat cocok juga untuk penggunaan pada tingkat PC/Desktop.
5. Perkembangan kernel yang demikian cepat dan tambahan fungsi-fungsi baru.
6. Banyaknya produsen software besar yang menawarkan aplikasi Linux dengan gratis seperti : Netscape, Corel, IBM, dll.
7. Banyak pilihan desktop manager dari standar seperti Linux Xfree86 sampai GNOME.
8. Aplikasi-aplikasi kantor yang cukup banyak.
9. Source code terbuka dan lengkap membuat user dapat mengembangkan sendiri sesuai dengan lingkungannya.
Kelemahan :
1. Instalasinya masih cukup rumit dibandingkan dengan Windows.
2. Aplikasi untuk game masih sedikit.
BAB III
MICROSOFT WINDOWS
A. Mematikan, Me-restart dan melakukan Stand-by Mode pada Komputer Anda
Pada Windows, terdapat cara-cara tertentu untuk mematikan komputer anda.
1. Mematikan dan Me-Restart Komputer
- Klik pada tombol Start. Yang akan diikuti oleh tampilnya Start Menu.
- Klik pada Shutdown yang akan diikuti oleh tampilnya kotak dialog Shut Down Windows.
- Pilihlah Shut Down untuk mematikan komputer anda dan Re-Start untuk me-restart.
- Klik OK.
2. Melakukan Stand-By
Ketika komputer anda berada pada kondisi Stand-by Mode, maka komputer anda akan menghabiskan energi listrik yang lebih sedikit, akan tetapi dapat di nyalakan kembali secara cepat.
- Klik pada tombol Start. Yang akan diikuti oleh tampilnya Start Menu.
- Klik pada Shutdown yang akan diikuti oleh tampilnya kotak dialog Shut Down Windows.
- Pilihlah Stand-by Mode lalu Klik OK.
B. Dekstop
Desktop pada windows di tunjukkan oleh gambar di bawah ini.
Keterangan
TASKBAR => Pada umumnya, taskbar ialah bagian yang terletak pada bagian bawah dari desktop. Tombol Start, tombol program-program aktif, tombol quick start dan tampilan waktu terletak pada taskbar.
MY COMPUTER => Icon My Computer memungkinkan akses ke dalam computer anda. Anda dapat mengakses harddisk, Control Panel dan bagian-bagian lain dari computer anda melalui My Computer.
INTERNET EXPLORER => Icon ini digunakan menampilkan Internet Explorer browser.
NETWORK NEIGHBORHOOD => JIka anda bekerja pada sebuah network, icon ini menampilkan
komputer-komputer yang ada pada network
RECYCLE BIN => Ketika anda menghapus sebuah data, sebelum data tersebut dihapus secara permanen data tersebut akan di simpan terlebih dahulu di Recycle Bin
C. Memulai Sebuah Program
Berikut ialah langkah-langkah untuk memulai sebuah program :
- Klik pada tombol Start yang terletak pada bagian kiri bawah dari layar anda.
- Sorot pada Programs yang akan diikuti oleh munculnya Program Menu
- Jika anda melihat ada tanda panah, artinya pada bagian itu terdapat menu bagian.
- Carilah program yang ingin anda jalankan dan klik pada program tersebut 2 kali untuk memulainya
D. Memasukan sebuah item dari desktop ke Start Menu atau Program Menu
Langkah-langkahnya ialah sebagai berikut :
- Klik kiri pada item satu kali tanpa melepas klik-an anda dan gerakan item tersebut ke atas tombol Start.
- Lepaskan klik-an anda ketika Start Menu muncul.
- Item tersebut akan muncul di Start Menu.
- Jika anda ingin memindahkan item tersebut ke dalam Program atau menu bagian dari Start Menu, gerakan item tersebut dari Start menu ke Program Menu atau menu bagian yang lain.
E. Menganti nama dan menghapus sebuah item dari Start atau Program Menu
Hal ini dapat dilakukan dengan menjalankan langkah-langkah berikut :
- Sorotlah item tersebut.
- Klik kanan.
- Klik kiri pada Delete untuk menghapus dan Rename untuk mengganti nama item tersebut.
F. Mengurutkan item-item dalam sebuah menu
Langkah-langkahnya ialah :
- Masuklah dalam menu yang ingin anda urutkan.
- Klik kanan.
- Klik kiri pada Sort by Name.
G. Window
Apa yang disebut dengan Window di tunjukkan pada gambar 2. Pada window inilah kita
mengolah data secara nyata.
CONTROL BOX => Control box menyediakan menu yang memungkinkan anda untuk mengembalikan, memindahkan, mengubah ukuran atau menutup sebuah window.
BORDER => Border memisahkan window dari desktop. Gerakan border untuk mengubah ukuran dari window.
TITLE BAR => Title bar menampilkan nama dari program atau file yang dijalankan.
MINIMIZE => Gunakan Minimize untuk menghapus windows secara sementara dari dekstop. Selama window di minimize, nama dari window tersebut akan tampat di taskbar taskbar.
MAXIMIZE => Gunakan Maximize untuk membuat window tersebut memenuhi keseluruhan layar.
RESTORE => Restore digunakan untuk mengembalikan windows yang telah di maximize ke ukuran semula.
CLOSE => Klik Close button untuk menutup window.
MENU => Menu menampilkan program menu. Anda mengirimkan perintah
perintah ke dalam program menggunakan menu ini.
TOOLBARS => Toolbars pada umumnya berada di bawah menu bar. Anda dapat menggunakan icon pada toolbars untuk mengirimkan perintah-perintah ke program.
WORK AREA => Work area terletak pada bagian tengah dari window. Hampir keseluruhan pekerjaan anda di lakukan pada bagian ini.
STATUS BAR => Status bar memberikan informasi mengenai program yang anda jalankan.
Jika anda membuka beberapa window pada waktu yang bersamaan, window yang berada paling atas ialah window yang terfocus. Anda hanya dapat berinterkasi dengan window yang terfocus.
Untuk mengubah focus dari window window terdapat 3 cara yaitu :
- Klik dimana saja pada window yang anda focuskan.
- Tekan Alt-Tab tanpa melepasnya, lalu pilihlah window yang ingin anda fokuskan.
- Semua window yang sedang active ditampilkan pada taskbar. Klik pada tombol window yang berada taskbar untuk memberi focus pada window tersebut.
Untuk menggerakkan sebuah window pada desktop anda, klik kiri pada title bar window tersebut tanpa melepaskannya, lalu gerakan window tersebut.
H. Menemukan File atau Direktori secara cepat
Ada saatnya ketika kita ingin bekerja dengan suatu file atau direktori, kita terlupa dimana kita menyimpan file atau direktori tersebut. Untuk mengatasi hal ini, Windows menyediakan fasilitas Search yang dapat dilakukan dengan langkah-langkah sebagai berikut:
- Klik pada tombol Start.
- Sorotlah Find.
- Sorotlah Files or Folders.
- Tekan Enter. Sebuah kotak dialog akan muncul. Isilah kriteria-kriteria file atau direktori yang ingin anda temukan.
Name & Location Tab
NAMED => Masukkan nama file atau bagian dari nama file tersebut. Gunakan * sebagai “wild card”.
CONTAINING TEXT => Jika anda mencari sebuah yang file yang didalamnya terkandung sebuah kata khusus, masukan kata tersebut ke kolom ini.
LOOK IN => Masukkan drive atau direktori dimana anda ingin mencari sebuah file atau direktori..
INCLUDE SUBFOLDERS => Pilihlah ini jika anda ingin mencari juga di dalam subfolder dari drive atau direktori yang anda tuliskan di bagian Look In.
BROWSE => Klik Browse untuk memilih drive atau folder secara manual.
Date Tab
ALL FILES => Pilihlah ini jika anda ingin mencari dari semua files yang berada di komputer anda.
FIND ALL FILES => Pilihlah Modified untuk mencari file yang telah anda rubah semenjak hari yang ada masukkan, pilihlah Created untuk mencari file yang dibuat semenjak hari yang anda masukan atau pilihlah Last Accessed untuk mencari dari files yang anda akses semenjak hari yang anda masukan.
BETWEEN => Between digunakan untuk mencari file yang di ubah, dibuat dan diakses diantara dua buah hari. During digunakan untuk mencari file yang di ubah, dibuat dan diakses pada jangka waktu tertentu kebelakang.
Advanced Tab
Of TYPE => Memilih jenis file yang ingin anda cari
SIZE IS => Memilih ukuran dari file yang ingin anda cari
Name & Location Tab
FIND NOW => Klik Find Now untuk memulai proses pencarian
STOP => Klik Stop untuk menghentikan proses pencarian
NEW SEARCH => Klik New Search untuk memulai pencarian baru
I. Icon, Menu, Shortcut Key dan Selection (Block)
Icon merupakan sebuah grafik image. Icon menolong anda untuk menjalankan sebuah perintah secara cepat. Untuk menjalankan program dengan menggunakan icon, tekanlah klik kiri dua kali pada icon tersebut.
Menu menyediakan sebuah jalan bagi anda untuk mengirimkan perintah ke komputer anda. Ketika ada membuka sebuah window, pilihan menu terletak berjajar dari kiri ke kanan pada menu bar yang terletak tepat di bawah title bar. Ketika anda meng-klik sebuah menu item maka akan muncul sebuah drop down menu. Pilihan perintah yang anda ingin jalankan dari drop-down menu tersebut.
Anda dapat menggunakan shortkey untuk menjalankan sebuah perintah secara cepat dengan menekan kombinasi tombol-tombol pada keyboard. Sebagai contoh. ketika anda melihat menu, anda akan menyadari sebagian besar dari pilihan tersebut mempunyai sebuah huruf yang digaribawahi. Anda dapat memilih pilihan menu tersebut dengan menekan Alt + Key, dimana Key ialah huruf yang di garisbawahi.
Selection (block) ialah bagian yang berwarnaAyang mana pada bagian tersebut dapat dikenakan sebuah perintah tertentu. Untuk membuah selection, langkah-langkahnya ialah :
- Klik kiri di tempat yang akan menjadi awal dari selection anda.
- Tekan klik kiri tanpa melepasnya, lalu gerakkan mouse anda sampai semua bagian yang anda inginkan tercakup.
Mengetik pada kata yang di block akan mengganti kata tersebut dengan kata yang baru.
J. Dekstop Shortcut
Sebuah desktop shortcut, biasanya dilambangkan dengan sebuat icon, ialah sebuah file kecil yang mewakilkan sebuah program, file, direktori, dokumen atau alamat internet. Denganmenklik sebuat shortcut icon, anda akan dibawa langsung ke object yang di wakilkan oleh shortcut tersebut. Shortcut hanyalah sebuah penunjuk, sehingga menghapus shortcut tidak akan menghapus program, file, direktori, dokumen atau alamat internet yang di wakilkan.
Langkah-langkah untuk membuat sebuah desktop shortcut dari item pada Start menu ialah :
- Klik pada Start dan temukan item yang ingin anda buat shortcutnya.
- Klik kanan pada item tersebut tanpa melepasnya dan bawa item tersebut ke desktop anda.
Langkah-langkah untuk membuat sebuah desktop shortcut dari item dari Windows Explorer
ialah sebagai berikut :
- Bukalah Windows Explorer.
- Temukan item yang ingin buat shortcutnya pada Windows Explorer tersebut.
- Klik kanan pada item tersebut lalu sorot Send to.
- Klik pada Desktop (create Shortcut).
Untuk membuat dekstop shortcut dari alamat internet, klik kiri pada link yang ingin anda buat shortcutnya tanpa melepasnya, lalu gerakan dan lepaskan klik-an anda pada desktop.
Desktop Shortcut juga dapat di buat secara manual dengan menggunakan Desktop Shortcut
Wizard. Langkah-langkahnya antara lain :
- Klik kanan pada dekstop. Pilihlah New Shortcut. -> Window Create Shortcut akan muncul kemudian.
- Tulislah lokasi dan name dari item yang ingin anda buat shorcutnya. Jika perlu gunakan
- browse untuk menemukan item tersebut.
- Klik Next. Sebuah kotak dialog akan muncul.
- Masukan nama yang dari shortcut tersebut.
- Klik Finish.
K. Mengubah Icon dari sebuah Desktop Shortcut
Berikut ialah langkah-langkahnya :
- Klik kanan pada icon tersebut.
- Klik pada Properties.
- Klik pada tombol Change Icon.
- Klik pada icon yang anda pilih..
- Klik OK.
Tidak semua objek dapat dirubah iconnya. Jika anda tidak melihat adanya tombol Change Icon, berarti icon dari objek tersebut tidak dapat dirubah.
L. Cut, Copy dan Paste
Cut : Ketika anda melakukan perintah cut pada sebuah data, maka data tersebut akan dihapus dari tempat asalnya dan disimpan di sebuah tempat yang di sebut Clipboard.
Copy : Ketika anda melakukan perintah copy pada sebuah data, maka data tersebut tanpa dihapus dari tempat asalnya akan di simpan di sebuah tempat yang disebut Clipboard.
Paste : Dengan menggunakan perintah Paste, anda dapat menempatkan data-data dari Clipboard ke tempat yang diinginkan.
Clipboard : Sebuat tempat untuk menyimpan data-data yang telah di cut atau di copy.
Langkah-langkah melakukan Cut, Copy and Paste.
a. Menggunakan Menu
Cut dan Copy
- Sorotlah data yang ingin anda cut atau copy.
- Klik pada Edit, yang terletak pada Menu Bar..
- Pilihlah Cut atau Copy.
Paste
- Tempatkan cursor pada tempat di mana anda ingin meletakkan data yang telah anda cut atau copy.
- Klik pada Edit pada menu bar dan pilihlah Paste.
b. Menggunakan Keyboard Shortcut
Berikut ialah keyboard shortcut untuk melakukan cut, copy atau paste.
Cut : Ctrl + X
Copy : Ctrl + C
Paste : Ctrl + X
c. Menggunakan Icon pada toolbars
Cut dan Copy
- Pilihlah data yang ingin anda copy.
- Klik icon cut atau icon copy pada toolbars.
Paste
- Tempatkan cursor pada tempat di mana anda ingin meletakkan data yang telah anda cut atau copy.
- Klik icon paste pada toolbars.
Untuk melakukan perintah-perintah diatas ke beberapa files secara sekaligus gunakan Crtl +
Klik kiri. Atau gunakan Shift + Klik kiri untuk memblock file-file yang berurutan. Untuk menampilkan isi dari clipboard dari dilakukan dengan cara mengklik Start -> Programs ->
Accessories -> System Tools -> Clipboard Viewer.
M. Menyimpan Sebuah File
Klik File pada menu bar. Lalu pilih Save atau Save As. Maka dialog box seperti ini akan muncul pada layar anda.
SAVE IN => Untuk memilih tempat file anda di simpan
UP ONE LEVEL => Untuk menaikkan hirarki direktori satu level..
VIEW DESKTOP => Untuk menyimpan di desktop.
CREATE A NEW FOLDER => Untuk membuat direktori baru
LIST ICONS => Untuk menampilkan file atau direktori pada File/Folder Box tanpa keterangan detail.
DETAIL ICONS => Menampilkan file atau direktori pada File/Folder Box dengan disertai keterangan detail.
FILE/FOLDER BOX => Tempat ditampilkannya file atau direktori yang telah ada.
FILE NAME => Tempat memasukan nama file
SAVE AS TYPE FIELD => Untuk memilih dalam format apa file anda akan disimpan.
SAVE => Untuk menyimpan file anda.
CANCEL =>Untuk membatalkan perintah save/save as.
N. Hari dan Tanggal
Untuk mengubah setting hari dan tanggal, langkah-langkahnya ialah sebagai berikut :
- Klik pada Start Menu -> Settings -> Control Panel -> Date/Time. Kotak dialog Date/Time Properties akan muncul.
- Frame Data digunakan untuk memilih bulan dan tahun.
- Time Field digunakan untuk merubah waktu. ( jam, menit, detik dan AM/PM )
- Pilihlah time zone yang bener sesuai dengan tempat tinggal anda.
- Jika anda ingin menyesuaikan setting waktu anda dengan daylight saving time, cek box yang ada pada frame Time Zone.
- Klik Apply lalu klik OK.
O. Display Properties
1. Memasuki Display Properties
Terdapat 2 cara yaitu :
- Start -> Settings -> Control Panel -> Display
- Klik Kanan pada Background Dekstop -> Properties
2. Mengubah Setting Wallpaper (Background dari Dekstop Windows)
- Pilihlah bagian Background
- Pilihlah wallpaper yang diinginkan.
- Browse -> Untuk memilih file gambar secara manual
- Position -> Terdapat tiga pilihan yaitu :
- Center -> Meletakkan di bagian tengah
- Tile -> Meletakkan gambar secara penuh di layar
- Fill Screen -> Memperbesar gambar hingga layar penuh.
- Pattern -> Memilih pola untuk wallpaper
3. Mengubah Setting Screen Saver
Screen Saver ialah animasi atau tampilan pada layar jika dalam selang waktu tertentu keyboard atau mouse tidak disentuh.
- Pilihlah bagian Screen Saver dari Display Properties.
- Pilihlah screensaver yang inginkan.
- Settings -> Untuk mengubah setting dari screen saver yang dipilih
- Preview -> Untuk melihat screen saver yang dipilih
- Wait for -> Batas waktu hingga screen saver ditampilkan
4. Mengubah Tampilan Layar
- Pilihlah bagian Appereance dari Display Properties. •
- · Scheme -> Untuk memilih tipe tipe tampilan layar yang telah disediakan oleh Windows
- Item ->Untuk memilih bagian dari layar yang ingin kita edit.
- Font -> Untuk mengubah jenis huruf yang di gunakan
- Size -> Untuk mengubah ukuran yang di gunakan
- Color -> Untuk mengubah warna yang digunakan
- B -> Tampilan Tebal,
- I -> Tampilan Miring
5. Mengubah Setting Performa Layar
- Pilihlah bagian Settings dari Display Properties
- Color Pallete -> Untuk mengatur berapa banyak warna yang di kenali oleh komputer ( bergantung pada Video Card ).
- Desktop Area -> Untuk mengatur resolusi layar. Resolusi berkaitan erat dengan kualitas gambar yang dihasilkan layar. Semakin besar resolusi yang dipilih, semakin bagus kualitas gambar yang di hasilkan.
P. Memformat Disket
Disket merupakan salah satu sarana penyimpan data yang pergerakannya tinggi. Akan tetapi, ketika anda ingin menggunakan disket untuk menyimpan data, anda harus menformatnya terlebih dahulu. Dipasaran sendiri, banyak tersedia disket yang terformat (formatted), akan tetapi yang tidak terformat (unformatted) pun masih dapat kita jumpai.
Apabila anda mempunyai disket yang belom terformat, anda bisa dengan mudahnya memformatnya. Berikut ialah cara-caranya :
- Masukkan disket anda ke drive a :
- Bukalah My Computer atau Windows Explorer
- Klik kanan pada drive a : dan pilihlah Format.
- Apabila itu telah dilakukan, maka akan muncul dialog box seperti berikut:
- Pada dialog box diatas, terdapat beberapa pilihan yang dapat anda pilih, antara lain :
Volume Label : Memberi nama pada disket anda
Quick Format : Memformat dengan kecepatan tinggi(hanya untuk disket yang pernah di format sebelumnya).
Create an-MS DOS startup-disk : Selain memformat disket, memasukan juga file system DOS ke dalam disket sehingga disket tersebut dapat di gunakan untuk mem-boot komputer anda.
Q. Memperbaiki Kerusakan pada Disk Anda
Kerusakan yang terjadi pada sebuah disk akan sangat mempengaruhi performa dari disk tersebut. Akan tetapi,sungguh beruntung sekali bahwa kerusakan yang terjadi pada disk sebagian besar ialah kerusakan tidak serius yang dapat dengan mudah diperbaiki oleh program perbaikan disk.
Dengan menggunakan Microsoft Windows, kita pun dapat memperbaiki sebagian dari kerusakan-kerusakan tersebut. Langkah-langkahnya ialah sebagai berikut :
- Bukalah My Computer atau Windows Explorer
- Klik kanan pada drive tujuan anda dan pilihlah Properties.
- Kliklah tab Tools
- Apabila anda telah melakukan itu semua, akan tampil dialog box seperti berikut :
• Klik “Check Now” pada bagian Error Checking. Bila ini di lakukan akan muncul dialog
box seperti dibawah ini :
Seperti kita bisa lihat pada gambar diatas, sebelum kita menjalankan program ini terdapat 2
pilihan yang dapat kita modifikasi.
- Automaticaly fix file system errors : Dengan men-cek pilihan ini, Windows akan secara otomatis memperbaiki setiap kerusakan yang ditemuinya.
- Scan for and attempt recovery for bad sectors : Dengan men-cek pilihan ini, selain memeriksa file dan direktori pada drive yang kita pilih akan adanya kerusakan, Windows pun memeriksa drive tersebut akan adanya kerusakan fisik.
R. Men-Defrag Hardisk Anda
Secara normal, komputer menyimpan data pada hardisk secara kontinu. Akan tetapi, pada keadaan tertentu komputer menyimpan data tersebut secara terpecah-pecah. Dalam keadaan
seperti ini, komputer akan membutuhkan waktu yang lebih lama untuk membaca data dari hardisk. Untuk memnyatukan data yang terpecah-pecah menjadi data yang kontinue, digunakanlah program Defragmentasi.
Langkah – langkah untuk meng operasikan program Defragmentasi pada Windows ialah sebagai berikut :
- Pilihlah bagian Tools dari Drive Properties anda.
- Klik “Defragment Now” pada bagian Defragmentation.
- Apabila itu telah dilakukan, akan muncul dialog box seperti berikut :
- Pilihlah drive hardisk yang ingin anda defrag.
- Klik lah “Defragment”. Apabila kita lihat gambar diatas, terdapat tombol “Analyze” dan tombol “Defragment”. Tombol “Analyze” digunakan untuk melihat keadaan data pada hardisk anda tanpa mendefragnya. Dan tombol “Defragment” digunakan untuk melihat keadaan data pada hardisk anda, lalu mendefragnya.
S. Mempebesar Ruang Kosong pada Hardisk Anda
Ketika anda bekerja dengan menggunakan sebuah program pada Windows, terkadang program tersebut membuat file-file yang tidak diperlukan. Apabila anda telah bekerja untuk waktu yang lama, tentu saja jumlah file yang tidak diperlukan ini semakin banyak jumlahnya dan menghabiskan kapasitas dari hardisk anda. Untuk mengatasi hal ini, Windows menyediakan program “Clean Up” yang dapat menghilangkan file-file yang tidak diperlukan tersebut sehingga ruang kosong pada hardisk anda akan semakin besar.
Langkah-langkahnya ialah sebagai berikut :
- Bukalah Drive Properties anda pada bagian General.
- Kliklah tombol “Disk Cleanup”. Apabila itu telah dilakukan akan muncul dialog box seperti berikut.
klik OK
T. Mematikan Program yang Membeku
Ketika anda bekerja dengan suatu program, tidak selamanya program tersebut bekerja dengan baik. Ada kalanya pula ketika program tersebut tidak berfungsi dengan seharusnya sehingga tidak menerima perintah-perintah dari sang pemakai. Dalam keadaan ini dikatakan bahwa program itu telah membeku atau biasa kita sebut dengan istilah “Hang”. Pada umumnya tidak ada cara untuk memperbaiki program yang “Hang”, tetapi anda dapat mematikan program tersebut secara paksa.
Berikut ialah langkah-langkahnya :
- Kliklah Ctrl+Alt+Del
- Apabila itu telah dilakukan, akan muncul dialog box sebagai berikut :
- Apabila kita lihat gambar diatas, pada kolom Status semua program dalam keadaan Running, yang berarti bekerja dengan baik. Akan tetapi, apabila terdapat program yang Hang, status program tersebut akan tertulis Not Responding.
- Untuk mematikan program tersebut, pilihlah program tersebut lalu klik tombol “End Task”. Ada kalanya, sebuah program yang membeku menyebabkan seluruh komputer anda membeku sehingga ketika anda menekan Ctrl+Alt+Del, dialog box diatas tidak muncul. Pada saat ini, satu-satunya cara untuk mengatasi hal ini ialah dengan cara mere-start komputer anda.
U. Menghapus Program dari Windows
Menghapus program adalah bagian yang sangat penting dalam Windows karena hal ini sangatlah sering kita gunakan. Di Windows ada cara tersendiri dalam menghapus suatu program, yaitu :
- Start Menu -> Control Panel -> Add/Remove Program
- Lalu akan tampil tampilan seperti di bawah ini :
- Pilihlah program yang ingin anda hapus.
- Lalu klik Change/Remove.
- Sebenarnya dengan menggunakan fasilitas ini, anda pun dapat menginstall sebuah program ke komputer anda. Akan tetapi, sekarang ini karena pada umumnya program penginstallan telah tersedia di CD program, penginstallan akan lebih mudah dengan menggunakan program tersebut.
V. Menambah dan Menghilangkan Komponen Windows
Komponen Windows ialah program-program yang telah tersedia didalam CD penginstallan Windows. Akan tetapi, ketika kita menginstall Windows tidak semua program ini diinstall ke komputer kita. Hal ini dimaksudkan untuk menghindari penginstallan program yang tidak diperlukan. Berikut ini akan dijelaskan langkah-langkah untuk menambah atau menghilangkan komponen Windows dari komputer anda.
- Bukalah Control Panel anda, dengan mengklik tombol Start -> Settings -> Control Panel.
- Lalu klik lah icon Add/Remove Programs yang kemudian dilanjutkan dengan menklik
- Add/Remove Windows Components.
- Apabila itu telah dilakukan akan muncul dialog box sebagai berikut :
- Box yang tercek menandakan bahwa program tersebut telah terinstall pada komputer anda. Dan box yang tidak tercek menandakan bahwa program tersebut tidak terinstall pada komputer anda.
- Berilah cek pada box yang kosong apabila anda ingin menginstalln program tersebut dan hilangkanlah cek pada box bila anda ingin menghilangkan program tersebut dari komputer anda.
- Klik Next.
BAB IV
PERBANDINGAN ANTARA WINDOWS DAN LINUX
Jika sebelumnya linuxer yang telah lama menggunakan sistem operasi MS Windows, terus ingin mencoba sistem operasi pinguin atau Linux, artikel berikut akan memberitahukan kepada linuxer agar linuxer tidak kaget atau merasa “tersesat” ketika memulai sistem operasi Linux. Linux tidak mempunyai sistem pembedaan drive A, B, C dan seterusnya seperti pada Windows, jadi ketika linuxer masuk ke sistem operasi linux nanti jangan kaget kalau tiba-tiba drive C atau D nya hilang. Sistem operasi linux bukanlah untuk mengeja alphabet dari A sampai dengan Z, justru linux mengenali komputer dengan sistem direktori-direktori, baik mulai dari harddisk, floppy disk drive, CD-ROM dan lainnya. Misalnya saja penamaan untuk CD-ROM, linuxer bisa cari di direktori /mnt/cdrom atau floppy disk drive di direktori /mnt/floppy.
Linux menggunakan sistem (/) forward slash, beda sekali dengan Windows yang menggunakan sistem (\) backward slash Linux mempunyai sifat case-sensitive, yang berarti huruf besar dan huruf kecil mempunyai arti yang berbeda. Jadi huruf A dan a mempunyai arti yang berbeda. Linux tidak mempunyai .exe seperti di Windows. Jadi jangan kebingungan nanti kalau linuxer ingin menjalankan perintah-perintah linux. Jangan sampai berkata “koq, dot exe nya ga ada ?”. Linux mempunyai sistem executable file tersendiri, jadi jika ingin mengetahui suatu file bisa di execute atau tidak, adalah dari attributnya file yang bersangkutan, jika attrributnya execute berarti bisa dijalankan. Cara mengetahuinya bisa dari perintah ls -l atau dari chmod.
Linux mempunyai banyak GUI (Graphical User Interface) Window yang berbeda. Diantaranya ada KDE, GNOME, Sawfish, Enlightenment dan lain sebagainya. Tidak seperti MS Windows yang hanya mempunyai satu GUI. Misalnya GUI Windows 98 tidak bisa mempunyai GUI Windows 2000 atau GUI Windows XP yang wah. Window di linux mempunyai istilah tersendiri, yaitu Xwindow. Di Xwindow linuxer mampu menjalankan KDE atau GNOME, atau bertukaran sesuai dengan keinginan. Keren kan. Jika di MS Windows, linuxer mengenal istilah DOS Prompt, di linux akan bernama console atau terminal. Di console, linuxer akan menjumpai dengan apa yang dinamakan pemrograman shell, kalau di windows seperti pemrograman untuk autoexec.bat.
Perintah-perintah di linux berbeda sekali dengan di Windows, misalnya saja dir (Windows) dan ls (Linux) yaitu suatu perintah untuk menampilkan file-file pada direktori aktif. Perintah-perintah ini karena berbeda ada baiknya para newbie untuk mempelajarinya, lagi pula mudah kok contohnya saja ls adalah singkatan list dan pwd yang adalah singkatan dari print working directory. Mudah kan.
Banyak aplikasi di linux yang menggunakan nama-nama yang aneh, misalnya Dia (software untuk menggambar diagram), SWAT (Samba Web Administration Tool) dan masih banyak lagi nama-nama aneh yang kemampuan powerful. Disarankan untuk membaca manual aplikasi tersebut terlebih dahulu. Jadi akan jelas apa guna dari nama-nama aneh tersebut. Dan aneh pun menjadi indah. Ketika di Windows ada yang mau belajar bahasa pemrograman, dia harus membeli terlebih dahulu program tersebut, walaupun cuman bajakan harganya masih tergolong mahal untuk suatu bahasa pemrograman. Terus jika ingin mempunyai server untuk jaringan harus beli lagi program server.
Berbeda dengan linux, ketika linuxer membeli cd linux, atau mendownloadnya dari internet, paket linux tersebut sudah dilengkapi dengan berbagai macam aplikasi dan bahasa pemrograman. Contohnya adalah C, C++, Perl, PHP dan Python. Jenis database server seperti MySql, dan PostgreSql. Atau aplikasi pemrograman visual seperti Glade, Kdevelop dan Qt. Dan program server seperti Apache Web Server, mail server, DNS server, Proxy server, Firewall untuk melindungi komputer linuxer ketika surfing di internet. Jadi tidak perlu beli cd program banyak-banyak kan, irit ya. => Linux bisa juga diinstall berdampingan dengan sistem operasi lain, jadi linuxer tidak perlu khawatir kalau mau belajar linux, windowsnya tidak perlu dihapus. Dengan menggunakan LILO (Linux Loader) sebuah boot manager untuk memilih sistem operasi mana yang akan digunakan. Jadi sekarang tidak ada alasan lagi untuk mulai belajar linux, karena linux dan windows bisa berjalan berdampingan.
Jika linuxer mau membeli hardware baru, atau mau menambah komponen-komponen seperti printer, modem, scanner dan zip-drive, usahakanlah mencari yang bukan win series. Contohnya ada beberapa produsen menjual modem yang bertuliskan win modem, ini artinya modem tersebut hanya dapat dijalankan di atas sistem operasi windows. Karena sedikit driver yang mendukung linux, maka linuxer diharapkan teliti ketika membeli produk-produk hardware. Secara umum sekarang para produsen telah menyertakan driver-driver linux mereka, atau telah menyatakan hardware mereka telah mensupport sistem operasi linux. Jika ingin mengetahui hardware-hardware apa saja yang telah mendukung linux, linuxer bisa surfing ke http://www.linuxdevices.com/sebagai referensi.
Supaya linuxer tidak bingung ketika ingin menggunakan aplikasi di linux, di bawah akan disajikan beberapa aplikasi yang bisa digunakan untuk menggantikan aplikasi-aplikasi di windows. Lagipula penamaan-penamaan aplikasi di linux memang banyak menggunakan nama-nama yang aneh.
Nah, kalau sudah tahu aplikasi -aplikasi yang bisa digunakan seperti yang di windows, kenapa tidak berpikir untuk beralih ke linux? Untuk belajar linux gampang sekali koq, cobalah untuk belajar menginstall terlebih dahulu, kemudian baca semua dokumentasi yang ada, sisanya hanya tinggal dicoba. Tidak perlu takut untuk mencoba linux, akan banyak komunitas linux yang akan membantu ketika linuxer ada mengalami kesusahan dengan linux. Hidup pinguin !!!
Cara Pembagian Subnet Kelas C pada LAN
CARA PEMBAGIAN SUBNETMASK KELAS C PADA JARINGAN LAN
Subnet mask terbagi menjadi 3 kelas yaitu kelas A, B, dan C namun ada. Dan sekarang kita akan membahas bagaimana cara membagi subnet mask kelas C, nilai standart subnet mask kelas C adalah 255.255.255.0 dan itu mampu menampung 254 host(komputer) dalam setiap jaringan. Bayangkan jika kita hanya mempunyai beberapa komputer tetapi ruang lingkupnya sangat luas maka yang terjadi adalah LOLA (Loadingnya Lama), jadi kita perlu mempersempit ruang lingkup host tersebut.
Misal suatu sekolah akan mebuat labolatorium komputer dengan jumlah 40 unit. Jika menggunakan subnet mask standart 255.255.255.0 sebetulnya bisa tapi sebaiknya kita mengutamakan pengoptimalkan kinerja jaringan tersebut agar sesuai dengan kapasitas komputer yang kita miliki.
Begini cara menghitungnya, nilai subnet mask terdiri dari 4 kelompok angka desimal yang dipisahkan oleh tanda titik (misal 255.255.255.0) dan terdiri dari 32 bit angka biner, jadi masing-masing angka desimal berasal dari 8 bit angka biner. Bilangan biner sendiri terdiri dari angka 0 dan 1, jika 0 maka tak bernilai dan 1 maka bernilai, nilai pada setiap angka bit biner tidak sama untuk lebih jelasnya lihat daftar ini:
Bit ke – Nilai
1 2 = 1
2 2 = 2
3 2 = 4
4 2 = 8
5 2 = 16
6 2 = 32
7 2 = 64
8 2 = 128
Bit ke – 8 7 6 5 4 3 2 1
Nilai 128 64 32 16 8 4 2 1
Sekarang jumlahkan mulai dari bit ke-1 sampai mencukupi 40 host (menurut contoh) tidak boleh kurang harus pas atau lebih. Maka 1+2+4+8+16+32=63, kemudian kurangi satu(sudah rumus) jadi 63-1=62.
Nah sekarang sudah ketemu jumlah host yang mendekati yaitu 62, jika mendekati walaupun kurang dari host yang dibutuhkan maka tidak bisa. Sekarang ingat bahwa angka 1 sampai 32 terletak pada bit ke-1 sampai 6, jadi yang belum dijumlahkan adlah bit ke-7 dan 8, kemudian jumlahkan nilai bit ke-7 dan 8 yaitu 64+128=192
Ini dia, sudah selesai. Maka ganti angka 0 pada subnet mask 255.255.255.0 dengan 192 menjadi 255.255.255.192 jadi untuk membuat jaringan dengan 40 host menggunakan subnet mask 255.255.255.192 dengan daya tampung maksimal sampai 62 komputer.
JIKA ANDA MASIH BELUM PAHAM saya beri contoh lagi. Misal anda akan membuat warnet dengan 10 client (host). Ya tinggal dijumlahkan, ingat..! tidak boleh kurang boleh pas atau lebih, 1+2+4+8=15 kemudian kurangi satu menjadi 14. Sekarang angka pada bit berapa yang belum dijumlahkan, yaitu 5,6,7,8 sekarang jumlahkan 16+32+64+128=240
Jadi sekarang tinggal mengganti angka 0 menjadi 240, nah inilah subnet mask untuk 10 host yaitu 255.255.255.240 dengan daya tampung host maksimal 14 komputer.
Alamat Mimpi
|
|||||||||||
Panduan php dan mysql download disini
MATERI PELATIHAN Java Fundamental
MATERI PELATIHAN
Java Fundamental
MUHAMAD MALIK
md_prod@telkom.net
Daftar Isi
1.Pendahuluan…………………………………………………………………………………………………………1
Tentang Java………………………………………………………………………………………………………..1
Bagaimana cara belajar Java………………………………………………………………………………….1
Tentang pelatihan ini…………………………………………………………………………………………….2
Susunan materi pelatihan………………………………………………………………………………………3
Latar belakang pembaca……………………………………………………………………………………….4
Aturan penulisan………………………………………………………………………………………………….4
2.Persiapan……………………………………………………………………………………………………………..5
Java dan berbagai variasinya………………………………………………………………………………….5
Instalasi Java……………………………………………………………………………………………………….6
Hello World ……………………………………………………………………………………………………….11
Konsep penting…………………………………………………………………………………………………..12
Referensi………………………………………………………………………………………………………….14
Siklus pemrograman Java…………………………………………………………………………………….15
Perangkat pembantu…………………………………………………………………………………………..19
3.Pemrograman Java……………………………………………………………………………………………….22
Anatomi kode program………………………………………………………………………………………..22
Statement, Expression, Block……………………………………………………………………………….25
Tipe data……………………………………………………………………………………………………………31
Operator…………………………………………………………………………………………………………..34
Aliran kontrol……………………………………………………………………………………………………..38
HALAMAN III
PENDAHULUAN | HALAMAN 1
1.Pendahuluan
Tentang Java
Teknologi Java telah berusia 10 tahun lebih. Dalam usia tersebut,
suatu teknologi dapat dikatakan telah matang. Populasi
penggunanya relatif besar, sehingga apabila kita menemui
masalah, banyak referensi dan tutorial tentang cara mengatasinya.
Sepanjang perjalanannya, Java telah mengalami dua kali perubahan
signifikan. Pertama pada waktu transisi dari versi 1.3 menjadi 1.4,
dan kemudian 1.4 menjadi 1.5 atau dikenal juga dengan 5.0. Dalam
transisi tersebut, ada perubahan signifikan dalam teknik
pemrograman maupun library yang disediakan. Transisi ini berjalan
relatif mulus, menunjukkan bahwa teknologi Java cukup solid dan
dibangun di atas dasar yang kokoh. Semua transisi
mempertahankan binary backward compatibility, artinya semua
aplikasi yang sudah kita kompilasi dan berjalan mulus di Java versi
lama akan terus berjalan dengan baik walaupun kita melakukan
upgrade.
Bagaimana cara belajar Java
Seiring dengan pertambahan umurnya, fitur dalam Java juga sudah
menjadi sangat besar. Mulai dari pemrograman perangkat kecil
seperti handphone dan PDA, sampai ke aplikasi enterprise yang
berinteraksi dengan mainframe dan mesin-mesin server besar.
Ukuran besar ini di satu sisi menguntungkan karena apapun yang
kita butuhkan, Java sudah menyediakannya. Tapi di lain pihak, ini
menyulitkan orang yang baru mulai belajar Java. Banyak sekali fitur
yang saling berkaitan dan berhubungan, sehingga para pemula
HALAMAN 2 | JAVA FUNDAMENTAL
mengalami kesulitan untuk menemukan titik awal untuk belajar.
Berdasarkan pengalaman saya belajar Java secara otodidak, jalur
yang optimal adalah sebagai berikut:
1. Belajar sintaks Java
2. Belajar konsep OOP
3. Belajar dasar pemrograman database (JDBC)
4. Belajar dasar pemrograman web (Servlet)
5. Belajar dasar pemrograman desktop (Swing)
Setelah menguasai lima materi dasar tersebut, kita akan memiliki
modal yang mencukupi untuk menyelam lebih jauh lagi menuju
lingkup Java yang kita minati, misalnya Java Mobile Edition (JME)
atau Java Enterprise Edition (JEE).
Tentang pelatihan ini
Pelatihan ini bertujuan untuk menyediakan pemahaman tentang
sintaks Java dan konsep pemrograman berorientasi object (Object
Oriented Programming – OOP).
Setelah mengikuti pelatihan ini, peserta mungkin belum bisa
membuat aplikasi yang utuh. Tapi dasar-dasar untuk mendesain
aplikasi dengan paradigma object sudah dimiliki.
Pemahaman OOP relatif sulit diserap dan dijiwai oleh programmer
yang sebelumnya berasal dari latar belakang prosedural. Tetapi
jangan khawatir. Pada bagian desain aplikasi, kita akan melihat
contoh kasus, kemudian mendesainnya menggunakan kedua
pendekatan (OOP dan Prosedural). Dengan demikian diharapkan
pembaca dapat memahami perbedaan antara keduanya.
Pendekatan OOP bukanlah dimaksudkan untuk menggantikan
PENDAHULUAN | HALAMAN 3
100% paradigma prosedural. Masing-masing pendekatan ada
tempatnya. Asal digunakan dengan proporsi yang sesuai,
mencampur kedua pendekatan bukanlah hal yang tabu.
Susunan materi pelatihan
Konsep OOP adalah konsep yang umum. Konsep ini bisa ditemui di
berbagai bahasa pemrograman. Bahkan kita juga bisa
mengimplementasikannya di bahasa yang tidak mendukung OOP
secara eksplisit.
Walaupun demikian, materi pelatihan ini ditujukan untuk
mempelajari OOP dengan Java. Jadi ada banyak perpaduan antara
konsep yang spesifik hanya ada di Java, dan konsep yang umum
dan ada di bahasa yang lainnya. Bila perbedaannya cukup jelas,
saya akan menuliskannya di catatan tepi.
Berikut susunan materi pelatihan ini:
1. Pendahuluan
2. Persiapan. Berisi gambaran umum tentang cara membuat
aplikasi Java.
3. Pemrograman Java. Berisi penjelasan singkat tentang
bahasa Java. Di sini pembaca diasumsikan sudah pernah
melakukan pemrograman dengan teknologi lainnya.
Sehingga yang dibahas di sini adalah bagaimana melakukan
perulangan (looping), bukan konsep perulangan itu sendiri.
4. Konsep Object Oriented Programming dengan Java. Setelah
menguasai bahasa pemrograman Java, pada bagian ini
pembaca akan melihat bagaimana konsep Object Oriented
Programming diterapkan dalam Java.
HALAMAN 4 | JAVA FUNDAMENTAL
Latar belakang pembaca
Pembaca diasumsikan sudah mengenal pemrograman sebelumnya.
Istilah dan konsep umum pemrograman seperti misalnya:
● percabangan (if/else, switch)
● perulangan (for, while)
● function atau method
seharusnya sudah dipahami.
Aturan penulisan
Kode program ditulis dengan font Courier tebal seperti ini:
public class Shipment {
}
Perintah command prompt ditulis dengan latar belakang kelabu
seperti ini:
C:\> javac version
Sedangkan output dari hasil eksekusi perintah tersebut ditulis
tanpa latar belakang dengan font Courier biasa (tidak bold) seperti
ini:
javac 1.6.0
hal yang penting dan
perlu diperhatikan ditulis
di tepi seperti ini.
Kadang-kadang kotak ini
juga digunakan untuk
menjelaskan fitur yang
hanya ada di Java versi
tertentu
penting
PERSIAPAN | HALAMAN 5
2.Persiapan
Java dan berbagai variasinya
Kalau kita membuka website resmi Java http://java.sun.com, kita
akan mendapati banyak sekali link. Pemula Java biasanya akan
pusing melihat banyak sekali versi Java yang tidak mereka
mengerti.
Teknologi Java dikelompokkan menjadi tiga kategori utama:
● Java Standard Edition
● Java Mobile Edition
● Java Enterprise Edition
Java Standard Edition
Pada sebagian besar kasus, kita hanya membutuhkan Java
Standard Edition. Ini merupakan perlengkapan minimal untuk
mulai membuat aplikasi Java. Java Standard Edition Software
Development Kit (SDK) berisi beberapa peralatan penting. Berikut
adalah peralatan yang paling sering kita gunakan:
● Compiler (javac) : tool untuk mengubah source code
menjadi byte code yang siap dieksekusi.
● Runtime (java) : tool untuk menjalankan byte code
● JavaDoc Compiler (javadoc) : Generator untuk dokumentasi
source code (JavaDoc)
● Archiver (jar) : tool untuk membuat paket java (*.jar)
HALAMAN 6 | JAVA FUNDAMENTAL
Java Enterprise Edition
Ini adalah kumpulan paket untuk membuat aplikasi enterprise.
Tetapi kita tidak perlu mendownload paket ini. Biasanya paket yang
ada di sini telah disediakan oleh development tool kita ataupun
application server yang digunakan.
Paket ini ada di website Java sebagai pusat referensi.
Java Mobile Edition
Jelajahi bagian ini jika Anda ingin membuat aplikasi yang berjalan
di perangkat kecil seperti handphone atau PDA.
Instalasi Java
Download
Ada beberapa file yang perlu di download:
● SDK Installer. Gunakan saja versi terbaru (saat ini 6.0).
Java SDK ini sudah berisi Runtime Environment (RE).
● Dokumentasi Library, biasa dikenal dengan JavaDoc API
● Tutorial resmi.
SDK dan Dokumentasi dapat didownload pada alamat ini:
http://java.sun.com/javase/downloads/index.jsp
Ada banyak link download di sana, tapi jangan bingung. Ambil JDK
6 dan Java SE 6 Documentation. Jangan serakah dan
mendownload JDK 6 with Java EE atau JDK 6 with Netbeans 5.5.
Seperti sudah dijelaskan di atas, Java EE dapat didapatkan berikut
application server yang kita gunakan. Netbeans juga lebih mudah
diinstal secara terpisah.
Java Runtime Environment (JRE) 6 juga tidak perlu didownload
karena sudah ada di dalam SDK. JRE hanya dibutuhkan bila kita
PERSIAPAN | HALAMAN 7
hanya ingin menjalankan aplikasi Java dan tidak akan membuat
atau memodifikasi aplikasi Java.
Tutorial resmi dapat dilihat secara online di sini:
http://java.sun.com/docs/books/tutorial/index.html
Pada halaman muka tutorial, ada link untuk mendownload tutorial
tersebut berikut contoh kode yang dibahas di dalamnya.
Instalasi
Instalasi Java sangat mudah. Cukup jalankan file installernya.
Untuk Windows, klik dua kali installernya, kemudian klik Next
beberapa kali.
Untuk Linux, ganti permission filenya supaya menjadi executable
$ chmod +x jdk6linuxi586.
bin
Kemudian jalankan installernya. Saya biasanya menginstal di folder
/opt. Untuk itu, butuh akses root.
$ sudo ./ jdk6linuxi586.
bin
Setelah instalasi selesai dilakukan,tes dengan cara menjalankan
Java runtime :
C:\> java version
java version “1.5.0_06″
Java(TM) 2 Runtime Environment, Standard Edition (build
1.5.0_06b05)
Java HotSpot(TM) Client VM (build 1.5.0_06b05,
mixed
mode, sharing)
Konfigurasi variabel
Ada satu hal lagi yang perlu kita lakukan sebelum Java bisa
digunakan untuk memproses kode program, yaitu setting variabel
PATH.
HALAMAN 8 | JAVA FUNDAMENTAL
Sebelum disetting, kita tidak bisa memanggil perintah javac.
Perintah ini berguna untuk melakukan kompilasi.
C:\> javac version
‘javac’ is not recognized as an internal or external
command, operable program, or batch file
Perintah javac (javac.exe untuk Windows) berada di folder
[LOKASI_INSTALASI_JAVA_SDK]\bin. Kita harus mendaftarkan
folder ini ke dalam PATH.
Sambil mengedit variabel PATH, kita juga membuat variabel baru
JAVA_HOME. Variabel ini sering dibutuhkan oleh aplikasi Java.
Sudah menjadi kesepakatan umum bahwa variabel ini harus
menunjuk ke lokasi instalasi Java SDK atau Java RE.
Cara setting variabel di Windows adalah dengan membuka System
Properties.
Klik kanan icon My Computer
System Properties akan terbuka. Klik Advanced, dan klik
PERSIAPAN | HALAMAN 9
Environment Variables.
Pada layar Environment Variables, klik New untuk membuat
variabel baru.
HALAMAN 10 | JAVA FUNDAMENTAL
Isikan JAVA_HOME pada field Name, dan lokasi instalasi Java
(misalnya C:\Program Files\Java\jdk1.6.0) pada field Value.
Setelah itu, klik OK.
Kemudian buat User Variable sekali lagi, kali ini Variable Name
diisi dengan PATH, dan Variable Value diisi dengan
%PATH%;%JAVA_HOME%\bin
Sekarang coba buka Command Prompt, dan coba lagi jalankan
javac. Seharusnya sekarang javac sudah dikenali.
C:\> javac version
javac 1.6.0
Untuk Linux, variabel PATH untuk masing-masing user diatur
melalui file konfigurasi yang terletak di
/home/namauser/.bash_profile. Kita harus mengedit file ini agar
variabel JAVA_HOME terdaftar di sistem.
Agar perubahan di file ini tidak terlalu banyak, buat satu file lagi
yang berisi konfigurasi path, misalnya namanya javapath.sh.
JAVA_HOME=/opt/jdk1.6.0
export JAVA_HOME
export PATH=$PATH:$JAVA_HOME/bin
Kemudian panggil file javapath.sh ini dari dalam bash_profile.
Tambahkan satu baris berikut di ujung akhir bash_profile.
. ~/javapath.sh
Sekarang Java SDK siap digunakan.
PERSIAPAN | HALAMAN 11
Hello World
Untuk mengetes hasil instalasi kita, mari kita buat kode program
sederhana. Gunakan text editor yang tersedia, misalnya Notepad.
Source Code
Ketik kode program berikut.
public class Halo {
public static void main(String[] args){
System.out.println(“Halo”);
}
}
kemudian simpan dengan nama Halo.java. Perhatikan besar
kecilnya huruf. Kode program Java case sensitive, artinya
membedakan antara huruf besar dan huruf kecil.
Kompilasi
File Halo.java tersebut harus dikompilasi dulu sebelum bisa
dijalankan. Buka command prompt, dan masuk ke folder di mana
Halo.java berada.
Jalankan perintah javac.
C:\Latihan> javac Halo.java
Perintah di atas akan menghasilkan file hasil kompilasi, yaitu
Halo.class.
Eksekusi
Kalau tidak ada error pada saat kompilasi, kode program kita sudah
bisa dijalankan. Gunakan perintah java untuk menjalankannya.
HALAMAN 12 | JAVA FUNDAMENTAL
C:\Latihan> java Halo
Halo
Perhatikan bahwa perintah java menerima argumen berupa nama
kelas, bukan nama file.
Kalau perintah di atas berhasil dijalankan, berarti instalasi Java kia
sudah berhasil dengan baik.
Konsep penting
Dalam dunia Java, ada beberapa istilah penting yang harus
dipahami sebelum kita melangkah lebih jauh.
Bytecode
Kode program kita, file berekstensi *.java, harus dikompilasi
terlebih dulu sebelum bisa dijalankan. Ini berbeda dengan bahasa
pemrograman yang berbasis interpreter seperti PHP, Python, atau
Ruby yang dapat langsung dijalankan dari source code.
Source code Java dikompilasi menjadi bytecode, yaitu file yang
berekstensi *.class. JRE mengerti dan bisa menjalankan bytecode
ini.
Bytecode bersifat universal dan dapat berjalan di berbagai sistem
operasi. Ini berbeda dengan file kompilasi C atau C++ yang hanya
bisa berjalan di satu sistem operasi tertentu. Untuk bisa
menjalankan kode program C di sistem operasi yang lain, kita
harus melakukan kompilasi sesuai dengan sistem operasi yang kita
tuju. Di Java, kita hanya perlu mengkompilasi satu kali, bytecode
dapat dijalankan di semua sistem operasi.
Virtual Machine
Portabilitas bytecode dimungkinkan dengan adanya Virtual
Machine (VM). Java VM biasa disebut juga Java Runtime
PERSIAPAN | HALAMAN 13
Environment (JRE). Java VM ini berbeda antar sistem operasi.
Pastikan kita mendownload JRE yang sesuai dengan sistem operasi
yang kita gunakan.
Dengan arsitektur VM, bytecode tidak langsung dieksekusi oleh
sistem operasi, melainkan oleh VM. Ini tentu saja menghasilkan
overhead dibandingkan kode program yang langsung dieksekusi
sistem operasi seperti C. Kita tentu mengira Java lebih lambat
daripada aplikasi yang berjalan tanpa VM (native). Ini benar, tapi
perbedaannya tidak sebesar yang kita asumsikan. Java VM telah
berusia sangat tua, sehingga sudah banyak optimasi yang
dilakukan. Overhead yang ditimbulkan telah berhasil diminimasi
sehingga tidak terlalu terasa. Keuntungan portabilitas kode
menjadi lebih besar daripada overhead penggunaan VM.
Pada waktu pertama kali dijalankan, Java VM langsung
membooking memori sebesar nilai defaultnya, biasanya 32 MB.
Jumlah ini dipertahankan sampai aplikasi kita butuh memori lebih.
Bila itu terjadi, VM akan membesarkan memorinya. Kegiatan
memperbesar memori ini butuh waktu agak lama, sehingga aplikasi
yang kita jalankan terkesan berjalan tersendat-sendat. Untuk
mencegah hal ini, berikan memori awal yang cukup agar VM tidak
perlu memperbesar memori di tengah jalan.
Classpath
Misalnya kita membuat kode program sendiri. Pertanyaan yang
penting adalah, bagaimana Java VM bisa menemukan *.class yang
kita buat? Sebab, kita bisa saja meletakkannya di sembarang
tempat.
Jawabannya adalah, Java VM akan mencari di dalam classpath.
Konsep classpath sebenarnya tidak spesifik Java. Di PHP dikenal
istilah include_path, Python menyebutnya sys.path, dan dalam Ruby
dikenal istilah RUBYLIB. Intinya, ini adalah pemberitahuan kita
HALAMAN 14 | JAVA FUNDAMENTAL
kepada VM di mana harus mencari kode program yang dibutuhkan.
Kita dapat mengatur variabel classpath melalui Environment
Variables di System Properties. Tapi cara ini tidak
direkomendasikan, karena setting classpath untuk masing-masing
aplikasi biasanya berbeda. Kita tidak ingin setting classpath
bersifat permanen dan mengganggu aplikasi lainnya.
Cara yang lebih baik adalah melakukan setting classpath pada saat
dibutuhkan, melalui command prompt. Kekurangan cara ini adalah,
setting tersebut akan hilang begitu command prompt ditutup. Jika
kita membuka dua command prompt, kita harus melakukan setting
di kedua command prompt tersebut.
Cara melakukan setting melalui command prompt adalah sebagai
berikut:
C:\> set CLASSPATH=C:\Latihan;D:\belajarjava
Kita bisa memasukkan banyak folder ke dalam classpath, masingmasing
folder dipisahkan dengan titik koma (;) untuk Windows, dan
titik dua (:) untuk Linux.
Setelah classpath kita set ke folder berisi Halo.class, kita bisa
memanggil class tersebut dari mana saja, tidak harus di folder
tempat file tersebut berada.
Referensi
Sebenarnya untuk mempelajari Java secara mandiri (otodidak),
referensi yang disediakan oleh Sun Microsystem sudah memadai.
Ada dua referensi utama yang wajib dimiliki: Java API
Documentation dan Java Tutorial.
Java Tutorial
Java Tutorial dapat diakses di
PERSIAPAN | HALAMAN 15
http://java.sun.com/docs/books/tutorial/index.html
Isinya sangat lengkap dan komprehensif. Sayangnya ditulis dalam
bahasa Inggris, yang biasanya menyebabkan orang enggan
membacanya.
Java API
Java API Documentation berisi dokumentasi semua class yang
disertakan dalam distribusi Java SDK. Kalau kita menggunakan text
editor yang canggih (seperti Eclipse, Netbeans, atau Intellij IDEA),
dokumentasi ini sudah diikutkan secara built-in. Tetapi apabila kita
menggunakan editor biasa seperti Notepad++, dokumentasi ini
sangat bermanfaat.
Siklus pemrograman Java
Sebelum kita mulai menulis kode, kita lihat dulu secara garis besar
bagaimana cara membuat aplikasi dalam Java.
Desain
Aplikasi Java didesain dengan pola pikir berorientasi object (Object
Oriented). Biasanya desain aplikasi ini dituliskan dengan notasi
Unified Modelling Language (UML). Banyak UML editor yang
tersedia secara open source, misalnya:
● Poseidon CE
● Visual Paradigm
● Jude Bamboo
● Omondo (Eclipse Plugin)
Beberapa UML editor memiliki kemampuan untuk menghasilkan
kerangka kode Java. Beberapa diantaranya bahkan dapat bekerja
sebaliknya, menghasilkan diagram UML dari kode program Java
yang sudah ada.
HALAMAN 16 | JAVA FUNDAMENTAL
Tulis source code
Langkah berikutnya tentunya adalah menulis source code. Ada
banyak peralatan pembantu yang dapat mempercepat dan
mempermudah penulisan kode.
Editor yang cukup terkenal dan open source diantaranya adalah
Eclipse dan Netbeans. Eclipse memiliki kemampuan pengeditan
source code yang sangat baik. Sedangkan Netbeans memiliki UI
Designer untuk menggambar tampilan aplikasi desktop yang sangat
canggih.
Kita tidak harus memilih salah satu saja. Untuk hasil yang
maksimal, kita dapat menggunakan Eclipse untuk menulis kode
business logic, dan menggunakan Netbeans untuk membuat
tampilan User Interface.
Selain kedua editor yang open source itu, ada juga editor komersial
yang sangat terkenal, IntelliJ IDEA. Dengan semboyannya, “Enjoy
Development”, IDEA dikenal sangat nyaman digunakan dan mampu
meningkatkan produktivitas programmer.
Kompilasi
Source code yang sudah kita tulis harus dikompilasi sebelum bisa
dijalankan. Untuk source code yang berjumlah satu-dua file, kita
dapat menggunakan javac untuk mengkompilasinya.
Aplikasi Java umumnya memiliki source code yang terdiri dari
antara puluhan sampai ribuan file. Kemudian masih ada
ketergantungan dengan library tambahan. Dengan skala ini, tidak
praktis kalau kita melakukan kompilasi dengan javac. Untuk itu,
kita gunakan perangkat build yang disebut Ant.
Ant bisa didapatkan di http://ant.apache.org. Selain melakukan
kompilasi, Ant memiliki banyak fitur lainnya, seperti menjalankan
test, mempaket aplikasi, mengendalikan application server, dan
PERSIAPAN | HALAMAN 17
masih banyak yang lainnya.
Ant adalah perangkat yang wajib dikuasai oleh programmer Java.
Test
Platform Java menyediakan perangkat test yang lengkap. Berikut
adalah berbagai jenis test yang dapat dilakukan dalam
pembangunan aplikasi Java.
Jenis Lingkup Keterangan
Unit Test Method Unit test mengetes satu method
dalam class. Method yang kita tulis
diuji terhadap berbagai input dan
hasilnya diperiksa.
Integration Test Titik sambungan Pada test ini, hubungan aplikasi
dengan pihak eksternal diujicoba.
Misalnya koneksi ke database,
koneksi ke email server, atau
sambungan soket ke aplikasi lain.
In Container Test Dalam Server Kadangkala ada fungsi yang hanya
bisa dites ketika aplikasi sedang
berjalan di dalam server. Tes ini
bertujuan untuk mengotomasi
pelaksanaan tes tersebut.
Code Review Source Code Dalam ketergesaan, kadang kita
meninggalkan praktek
pemrograman yang baik dan
benar. Perangkat code review
mencari dan melaporkan kode
program yang ditulis secara
ceroboh dan berpotensi
menimbulkan bug.
Coverage Test Aplikasi Kita ingin mengetahui apakah
rangkaian test yang kita miliki
sudah mengetes seluruh bagian
dari kode program kita. Dengan
HALAMAN 18 | JAVA FUNDAMENTAL
Jenis Lingkup Keterangan
perangkat coverage test, kita
dapat mengetahui bagian mana
dari aplikasi kita yang belum
tersentuh tes sama sekali.
Cara kerja perlengkapan testing adalah sebagai berikut:
1. Tulis kode tes untuk mengetes kode program
2. Jalankan kode test
3. Periksa laporan hasil tes
4. Perbaiki kode program bila ditemukan kegagalan tes
5. Tambah lagi tes sehingga lebih lengkap
Penggunaan peralatan testing akan meningkatkan kualitas kode
kita. Perlengkapan testing yang baik akan terus menjalankan kode
tes secara otomatis.
Jadi, aplikasi kita akan selalu dites, bahkan kode yang sudah lama
tidak kita sentuh. Dengan demikian, apabila penambahan kode
baru menyebabkan error di kode lama, kita akan segera
mengetahuinya. Ini akan meningkatkan stabilitas kualitas kode
program yang kita hasilkan.
Paket
Aplikasi yang sudah selesai akan dipaket sehingga mudah dideploy
di application server. Atau kalau aplikasinya adalah aplikasi
desktop, kita perlu membuatkan installer supaya pengguna hanya
tinggal mengklik Next untuk menginstal aplikasi.
Biasanya langkah ini dilakukan di akhir siklus pembangunan
aplikasi.
Deploy
Pada saat pembangunan aplikasi, kita akan sering melakukan
PERSIAPAN | HALAMAN 19
deploy-undeploy aplikasi kita di server. Untuk mempercepat siklus
ini, kita dapat mengotomasi prosesnya dengan menggunakan Ant.
Distribusi
Aplikasi yang sudah selesai dibuat siap didistribusikan agar bisa
digunakan khalayak ramai. Selain metode download atau bagi-bagi
CD yang sudah umum dilakukan, Java juga menyediakan fasilitas
Java Web Start. Dengan fasilitas ini, pengguna cukup mengklik satu
link di website yang kita sediakan. Setelah itu, Java secara otomatis
akan mendownload, menginstal, dan menjalankan aplikasi. Setelah
itu, aplikasi akan disimpan di mesin lokal, sehingga ketika
dijalankan lagi, pengguna tidak perlu mendownload lagi.
Aplikasi yang diiinstal melalui Java Web Start juga akan memeriksa
website asalnya setiap kali dijalankan untuk mencari versi terbaru.
Apabila ada versi yang lebih baru, dia akan secara otomatis
mengupgrade dirinya sendiri.
Ini akan memudahkan kita untuk mendistribusikan dan memaintain
aplikasi.
Perangkat pembantu
Untuk meningkatkan produktivitas dan mempercepat development,
ada beberapa perangkat yang perlu kita ketahui.
Ant
Ant adalah build tool. Dapat diperoleh secara cuma-cuma di
http://ant.apache.org. Ant memiliki kemampuan untuk:
● melakukan kompilasi
● menjalankan aplikasi
● mengkompres folder
● menjalankan tes dan membuat laporannya
HALAMAN 20 | JAVA FUNDAMENTAL
● berinteraksi dengan aplikasi version control
● melakukan deploy/undeploy
● menyalakan/mematikan application server
● dan sebagainya
Dengan Ant, kita dapat mengotomasi pekerjaan yang sering kita
lakukan sehingga dapat dijalankan dengan satu perintah saja.
Eclipse
Eclipse adalah Integrated Development Editor (IDE) open source
yang disponsori IBM. Fiturnya sangat lengkap dan canggih. Eclipse
dibangun dengan arsitektur berbasis plugin, sehingga banyak
orang yang menyediakan pluginnya baik gratis maupun komersil.
Netbeans
Netbeans adalah IDE open source yang disponsori oleh Sun
Microsystem. Engine Matisse yang dimilikinya sangat legendaris.
Dengan Matisse, kita dapat membuat aplikasi desktop semudah
Visual Basic atau Borland Delphi.
Hypersonic SQL
Hypersonic SQL adalah aplikasi database yang mungil. Ukurannya
cuma 620 KB, tidak sampai satu megabyte. Hypersonic SQL dapat
dijalankan sebagai server, dan juga bisa dijalankan secara
embedded oleh aplikasi kita.
Dengan ukurannya yang ringan, kita dapat melakukan development
dengan lebih cepat.
Tomcat
Tomcat adalah servlet engine, web server yang mengerti
bagaimana menjalankan servet dan JSP. Tomcat tersedia secara
gratis di http://tomcat.apache.org.
PERSIAPAN | HALAMAN 21
Jetty
Sama seperti Tomcat, Jetty adalah servlet dan JSP engine.
Keistimewaan Jetty dibandingkan Tomcat adalah Jetty sangat kecil.
Ukurannya hanya 420 KB. Bandingkan dengan Tomcat yang
memakan harddisk sebesar 20 MB.
Sama seperti Hypersonic SQL, Jetty juga bisa dijalankan secara
embedded. Kita bisa menjalankan Jetty melalui Ant.
HALAMAN 22 | JAVA FUNDAMENTAL
3.Pemrograman Java
Setelah memahami secara umum tentang apa itu Java, sekarang
kita akan menyelam ke dunia yang lebih teknis, bahasa
pemrograman Java.
Bahasa pemrograman apapun yang kita pelajari, biasanya ada dua
hal yang harus kita pahami:
● bahasa pemrograman
● library yang disediakan
Pada bab ini, kita akan mempelajari bahasa pemrograman Java.
Yang dibahas di sini adalah bagaimana konsep umum
pemrograman diterapkan di Java. Di antara konsep umum tersebut
adalah:
● statement (instruksi)
● variabel dan tipe data
● percabangan (if-else, switch)
● perulangan (for, while)
Anatomi kode program
Untuk memahami bagaimana aplikasi Java tersusun, kita perlu
memahami class, package, dan class member.
Class
Secara umum, sebuah aplikasi Java terdiri banyak class. Aplikasi
skala kecil dapat memiliki puluhan class, sedangkan aplikasi
enterprise bisa terdiri dari ribuan class.
Satu file bisa menampung beberapa class, tetapi umumnya hal ini
PEMROGRAMAN JAVA | HALAMAN 23
tidak dianjurkan. Biasanya untuk kasus normal, satu file memuat
satu class saja.
Package
Class dikelompokkan dalam package. Adanya nama package
menyediakan namespace. Ini bermanfaat agar kita bisa
menggunakan nama class yang sama untuk kondisi yang berbeda.
Misalnya, untuk tampilan web, kita memiliki class Session yang
merepresentasikan kegiatan user yang sedang login. Di sisi lain,
kita juga memiliki class Session untuk merepresentasikan koneksi
yang kita lakukan ke database. Jadi ada Session untuk tampilan dan
ada Session koneksi database.
Dalam urusan Session ini, kita dapat menempatkan kedua Session
ke dalam dua package, package database dan package web.
Deklarasi class menjadi sebagai berikut:
package com.artivisi.latihan.web;
public class Session {
}
dan
package com.artivisi.latihan.database;
public class Session {
}
Dengan demikian, kita dapat memiliki dua class bernama sama
untuk keperluan yang berbeda.
Class Member
Sebuah class berisi banyak class member. Jenis-jenis class member
adalah:
● Constructor
● Method
HALAMAN 24 | JAVA FUNDAMENTAL
● Property
● Inner Class
Penjelasan lebih lanjut tentang masing-masing class member ini
akan diberikan di bab selanjutnya.
Berbeda dengan bahasa pemrograman PHP atau Ruby, di Java
semua kode program harus diletakkan pada tempatnya. Di PHP
misalnya, kita bisa mendeklarasikan variabel atau membuat
function di mana saja. Tetapi di Java, kita harus membuat method
di dalam class.
Sebagai ilustrasi, dalam satu file belajar.php, isinya bisa seperti
ini:
<?
class Person {
var $name;
}
function display_person(){
$p = new Person();
$p=>name = “Endy”;
echo($p=>name);
}
echo(“menjalankan function <br>”);
display_person();
?>
Pada kode di atas, kita lihat dalam satu file bisa berisi deklarasi
class, deklarasi function, dan statement yang memanggil function.
Di Java, kode seperti di atas akan menimbulkan error kompilasi.
Untuk melakukan hal yang sama (deklarasi class, deklarasi
function, dan mengeksekusi function tersebut) di Java, kita
menempatkan kode menurut aturan Java, seperti ini:
PEMROGRAMAN JAVA | HALAMAN 25
package belajar.java;
class Person {
public String name;
}
public class Belajar {
public static void displayPerson() {
Person p = new Person();
p.name = “Endy”;
System.out.println(p.name);
}
public static void main(String[] xx) {
displayPerson();
}
}
Seperti kita lihat di atas, tidak ada statement yang ada di luar
class. Semua deklarasi function (method) dan variabel dilakukan di
dalam class.
Statement, Expression, Block
Statement
Statement dalam bahasa Indonesia dapat diartikan menjadi
instruksi atau perintah. Setiap statement diakhiri dengan tanda
titik koma (;). Ini berbeda dengan VB, dimana statement diakhiri
dengan pergantian baris.
Contoh statement adalah sebagai berikut:
System.out.println(“Halo”);
Ekspresi
Ekspresi adalah rangkaian variabel atau pemanggilan method yang
menghasilkan satu nilai. Ekspresi biasanya digunakan dalam
HALAMAN 26 | JAVA FUNDAMENTAL
deklarasi variabel atau dalam percabangan.
Coba lihat contoh kode berikut:
int a = 5;
if (username.startsWith(“admin”)) {
// lakukan sesuatu
}
Pada contoh kode di atas, yang disebut ekspresi adalah:
a = 5
dan
username.startsWith(“admin”)
Ekspresi pertama menghasilkan nilai integer, yaitu 5. Sedangkan
ekspresi kedua menghasilkan nilai true atau false, tergantung apa
isi variabel username.
Komentar
Komentar adalah tulisan dalam kode program yang diabaikan oleh
compiler. Komentar digunakan untuk memperjelas kode program
kita. Misalnya ada algoritma rumit yang panjangnya beberapa belas
baris, kita menambahkan satu baris komentar di atasnya untuk
menjelaskan kegunaan algoritma tersebut.
Dengan demikian, orang tidak harus membaca keseluruhan baris
kode hanya untuk memahami bahwa kode tersebut (misalnya)
melakukan formatting untuk tampilan report.
Penulisan komentar di Java sama dengan komentar di C, C++, atau
PHP.
Komentar satu baris diawali dengan dua tanda garis miring seperti
ini:
PEMROGRAMAN JAVA | HALAMAN 27
// apabila user adalah admin, langsung buka halaman admin
if(username.startsWith(“admin”)) {
// redirect ke admin page
}
Komentar yang terdiri dari banyak baris diawali dengan /* dan
diakhiri dengan */. Contohnya sebagai berikut:
/*
Menjelajahi hasil query dari database.
Bila menemukan pesanan yang bernilai tinggi, catat.
*/
while(rs.next()) {
if(rs.getDouble(“price”) > 10000.0) {
// tulis ke log file
}
}
JavaDoc
Selain komentar biasa seperti di atas, di Java dikenal satu jenis
komentar khusus yang dinamakan komentar JavaDoc. Berbeda
dengan komentar biasa yang diabaikan kompiler, untuk komentar
JavaDoc kita dapat menggunakan kompiler khusus untuk
mengambil dan memformat isinya menjadi dokumentasi dalam
bentuk HTML.
JavaDoc ini biasanya dibuat untuk mendokumentasikan class dan
class member.
Berikut contoh komentar JavaDoc.
HALAMAN 28 | JAVA FUNDAMENTAL
/**
* menangani halaman login di website.
* Class ini dapat dipanggil melalui URL
* http://<namaserver>/
latihan/login
*/
public class LoginProcessor {
/**
* memeriksa username dan password.
* Method ini akan menerima username dan password
* dari parameter dan mencocokkannya
* dengan isi database.
* @param username nama user yang ingin diperiksa
* @param password kata kunci yang ingin diperiksa
* @return true kalau kombinasi username/password
ada di database, false kalau tidak ada
*/
public boolean isExist(String username,
String password) {
}
}
Kode di atas dapat dikompilasi dengan perintah sebagai berikut:
PEMROGRAMAN JAVA | HALAMAN 29
C:\> javadoc LoginProcessor.java
Loading source file LoginProcessor.java…
Constructing Javadoc information…
Standard Doclet version 1.6.0
Building tree for all the packages and classes…
Generating LoginProcessor.html…
Generating packageframe.
html…
Generating packagesummary.
html…
Generating packagetree.
html…
Generating constantvalues.
html…
Building index for all the packages and classes…
Generating overviewtree.
html…
Generating indexall.
html…
Generating deprecatedlist.
html…
Building index for all classes…
Generating allclassesframe.
html…
Generating allclassesnoframe.
html…
Generating index.html…
Generating helpdoc.
html…
Generating stylesheet.css…
Perintah javadoc ini akan menghasilkan banyak file di dalam target
folder, seperti dapat dilihat di screenshot berikut.
Kita bisa buka file index.html dengan menggunakan browser.
HALAMAN 30 | JAVA FUNDAMENTAL
Berikut adalah tampilan browser yang telah membuka index.html.
Seperti kita lihat, tampilan hasil JavaDoc terdiri dari dua frame.
Sebelah kiri berisi daftar class yang berhasil ditemukan javadoc,
dalam hal ini hanya ada satu class LoginProcessor. Di sebelah
kanan, disajikan informasi rinci tentang class tersebut. Pada
screenshot di atas kita bisa lihat ada bagian Constructor Summary
dan Method Summary.
Keterangan tentang method isExist dapat dilihat pada screenshot
berikut.
Penjelasan method yang kita tuliskan di atas telah disalin dengan
rapi ke dalam dokumentasi HTML.
Dengan demikian, kita bisa membuat dokumentasi source code
dengan mudah, karena perangkat pembantunya sudah tersedia.
PEMROGRAMAN JAVA | HALAMAN 31
Tipe data
Salah satu hal pertama yang kita perlu pahami dalam bahasa
pemrograman apapun adalah bagaimana bahasa tersebut
menyimpan data. Java mengenal dua jenis data: primitif dan
referensi. Mari kita lihat satu persatu.
Primitif
Tipe data primitif menyimpan tipe data sederhana. Berikut adalah
daftar tipe data primitif yang ada dalam Java.
● Bilangan bulat
● byte. Berukuran 8 bit.
● short. Berukuran 16 bit
● int. Berukuran 32 bit
● long. Berukuran 64 bit
● Bilangan pecahan
● float. Berukuran 32-bit IEEE 754
● double. Berukuran 64-bit IEEE 754
● Non bilangan
● char. Menyimpan satu huruf. Berukuran 16 bit
Unicode
● boolean. Menyimpan nilai true atau false.
Referensi
Tipe data referensi diklasifikasikan menjadi dua jenis: array dan
object. Tipe data array nantinya akan dibahas lebih lanjut dalam
bahasan tentang Collection Framework. Sedangkan tipe data object
akan dibahas dalam bagian tersendiri tentang Object.
HALAMAN 32 | JAVA FUNDAMENTAL
Passing Variabel
Hal penting lainnya dalam belajar bahasa pemrograman adalah
mengetahui bagaimana suatu variabel dikirim ke method atau
function lain (mekanisme passing). Ada dua mekanisme passing,
yaitu by value dan by reference.
Dalam Java, tipe data primitif dipassing by value, sedangkan tipe
data array dan object dipassing by reference. Untuk
mengilustrasikannya, mari kita buat dua buah method, yang satu
menerima masukan int, satu lagi menerima masukan array.
package tutorial.fundamental.variable;
public class PassingVariables {
public void cetakDanTampilkan(int x){
x = x + 1;
System.out.println(“Nilai dalam method: ”+x);
}
public void cetakDanTampilkan(int[] x){
x[0] = x[0] + 1;
System.out.println(“Nilai dalam method: ”+x[0]);
}
}
Seperti kita lihat, kedua method melakukan hal yang sama. Mereka
menambahkan nilai variabel yang dipassing dengan angka 1,
kemudian mencetaknya di konsol.
Walaupun sama, tetapi kedua method ini akan berperilaku berbeda
jika dijalankan. Mari kita tambahkan method main untuk
menjalankan contoh ini.
PEMROGRAMAN JAVA | HALAMAN 33
public static void main(String[] xx) {
PassingVariables pv = new PassingVariables();
int z = 5;
System.out.println(“Sebelum: ”+z);
pv.cetakDanTampilkan(z);
System.out.println(“Setelah: ”+z);
int[] y = {5};
System.out.println(“Sebelum: ”+y[0]);
pv.cetakDanTampilkan(y);
System.out.println(“Setelah: ”+y[0]);
}
Bila kode ini dijalankan, hasilnya adalah seperti ini.
Sebelum: 5
Nilai dalam method: 6
Setelah: 5
Sebelum: 5
Nilai dalam method: 6
Setelah: 6
Seperti kita lihat, ada perbedaan di akhir eksekusi method.
Variabel bertipe primitif nilainya tetap 5, sedangkan variabel
bertipe array nilainya menjadi 6.
Passing by value artinya yang dikirim (passing) adalah nilainya (by
value). Jadi, ketika variabel dimasukkan ke dalam method, Java
akan membuatkan satu variabel lain bernilai sama. Ketika kita
lakukan pertambahan dengan 1, yang ditambah adalah variabel
yang baru, bukan yang asli. Ini sebabnya ketika kita cetak nilai
variabel setelah method dijalankan, nilai variabel tidak berubah.
Passing by reference artinya yang dikirim (passing) adalah alamat
memorinya (by reference). Dengan demikian, variabel asli dan
HALAMAN 34 | JAVA FUNDAMENTAL
variabel yang dikirim menunjuk ke lokasi memori yang sama.
Ketika variabel di dalam method nilainya ditambah satu, variabel
yang asli ikut berubah nilainya. Ini sebabnya setelah eksekusi
method, variabel asli akan berubah nilainya.
Operator
Operator juga adalah hal yang umum dalam bahasa pemrograman.
Mari kita lihat contoh kode berikut.
int x = 3;
int y = 5;
int z = x + y;
Ada dua operator yang digunakan pada kode di atas, yaitu operator
= dan +.
Nilai yang berada di sisi kiri atau sisi kanan operator disebut
dengan operand. Berdasarkan jumlah operand-nya, kita dapat
mengklasifikasikan operator menjadi:
● Unary operator: jumlah operand cuma satu. Contoh:
y++.
● Binary operator: memiliki dua operand. Contoh:
x + y.
● Ternary operator: memiliki tiga operand. Contoh:
success ? “Ok” : “Not OK”
Berdasarkan penggunaannya, kita dapat klasifikasikan operator
menjadi:
● Aritmatika
● Relasional
● Logika
PEMROGRAMAN JAVA | HALAMAN 35
● Assignment
● Lain-lain
Mari kita lihat satu persatu.
Aritmatika
Operator ini digunakan untuk melakukan operasi matematika.
Berikut adalah daftar operator aritmatika.
Operator Kegunaan Contoh
+ Pertambahan x + y
- Pengurangan x – y
* Perkalian x * y
/ Pembagian x / y
% Nilai sisa dari pembagian (modulus) x % y
Pada saat ini mungkin ada pembaca yang berkomentar, bagaimana
dengan operasi perpangkatan? Pada bahasa pemrograman lain ada
yang menulis 2 pangkat 3 seperti ini:
2 ^ 3
Di Java, operasi perpangkatan dilakukan dengan menggunakan
method pow dari class Math. 2 pangkat 3 ditulis seperti ini dalam
Java.
Math.pow(2,3)
Modulus adalah perhitungan nilai sisa. Apabila kita memiliki kode
program seperti ini:
int x = 10;
int y = 6;
int z = 10 % 3;
Maka z akan bernilai 4, karena 10 dibagi 3 menghasilkan 1 dan
sisanya adalah 4.
Selain operator di atas, ada lagi operator aritmatika yang berguna
HALAMAN 36 | JAVA FUNDAMENTAL
untuk mempersingkat kode, yaitu operator ++ dan .
Pembaca
yang berasal dari latar belakang C, C++, dan PHP tentu sudah
tidak asing lagi dengan operator ini.
Operator ++ menambah satu ke operand-nya. Jadi kalau nilai awal
variabel z adalah 5, maka z++ sama dengan z = z + 1. Sehingga
nilai akhir z adalah 6.
Operator bekerja
sebaliknya, yaitu mengurangi satu.
Yang perlu diperhatikan adalah, operator ini dapat diletakkan di
belakang operand (z++), ataupun di depan operand (++z).
Penempatan yang berbeda akan menghasilkan hal yang berbeda
pula.
Mari kita ilustrasikan melalui contoh kode.
int x = 10;
System.out.println(x++);
System.out.println(x);
Bila kode di atas dijalankan, hasilnya adalah:
10
11
Operator ++ yang diletakkan di belakang operand, akan
menambah satu setelah operand dievaluasi (dalam hal ini dicetak
dengan perintah println). Sedangkan bila diletakkan di depan
operand, akan menambah satu sebelum operand dievaluasi.
Berikut contoh kodenya.
int x = 10;
System.out.println(++x);
System.out.println(x);
Dan hasilnya adalah sebagai berikut.
PEMROGRAMAN JAVA | HALAMAN 37
10
11
Relasional
Operator relasional membandingkan operand dan menentukan
hasil perbandingan tersebut. Operator relasional dalam Java adalah
sebagai berikut.
Operator Contoh
> 3 > 5 => false
< 3 < 5 => true
>= 3 >= 5 => false
<= 3 <= 5 => true
!= 3 != 5 => true
== 3 == 5 => false
Kondisional
Operator kondisional berhubungan erat dengan nilai true atau
false. Operator ini biasanya digunakan dalam blok if-else atau
while. Berikut adalah operator kondisional yang tersedia di Java.
Operator Nama Contoh
&& And true && false => false
|| Or true || false => false
! Not !true => false
Selain operator &&, kita juga dapat menggunakan operator &
untuk melakukan operasi And. Perbedaan antara && dan & adalah
dengan &&, operand kedua tidak diperiksa apabila hasil akhir
sudah dapat ditentukan. Perhatikan kode berikut sebagai ilustrasi.
if (username.isCorrect() && password.isCorrect()) {}
Pada kode di atas, bila username.isCorrect() menghasilkan nilai
false, sudah pasti hasil keseluruhannya adalah false, apapun hasil
dari password.isCorrect(). Bila kita menggunakan &&,
HALAMAN 38 | JAVA FUNDAMENTAL
password.isCorrect() tidak dieksekusi.
Demikian juga untuk operator Or. Kita bisa menggunakan || atau |
dengan perilaku yang sama dengan && dan &.
Assignment
Lainnya
Aliran kontrol
Aliran kontrol adalah teknik pemrograman untuk menentukan
jalannya program. Fitur ini ada di semua bahasa pemrograman,
hanya sintaksnya saja yang berbeda. Jadi, arti dari masingmasingnya
tidak dijelaskan lebih lanjut.
if
Contoh penggunaan if di Java adalah sebagai berikut.
if (year % 4 == 0) {
return 29;
} else {
return 28;
}
Apabila pilihannya lebih dari dua, kita gunakan else if.
PEMROGRAMAN JAVA | HALAMAN 39
if (username.equals(“administrator”)) {
// lakukan sesuatu
} else if (username.equals(“guest”)) {
// lakukan sesuatu
} else {
// lakukan sesuatu
}
switch
Berikut adalah contoh kode switch, diambil dari tutorial Java.
HALAMAN 40 | JAVA FUNDAMENTAL
switch (month) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
numDays = 31;
break;
case 4:
case 6:
case 9:
case 11:
numDays = 30;
break;
case 2:
if ( ((year % 4 == 0) && !(year % 100 == 0))
|| (year % 400 == 0) )
numDays = 29;
else
numDays = 28;
break;
}
for
For digunakan untuk perulangan. Berikut contoh kode for, diambil
dari Java Tutorial dari Sun.
PEMROGRAMAN JAVA | HALAMAN 41
int[] arrayOfInts = { 32, 87, 3, 589 };
for (int i = 0; i < arrayOfInts.length; i++) {
System.out.print(arrayOfInts[i] + ” “);
}
while
Bentuk while biasanya digunakan untuk perulangan yang belum
dapat ditentukan titik akhirnya, seperti misalnya membaca hasil
query database yang jumlahnya belum diketahui.
while(resultSet.next()) {
// lakukan sesuatu
}
break
Keyword break digunakan untuk segera keluar dari loop. Contoh
kodenya adalah sebagai berikut.
public void displayMembers()
String[] members = {“endy”, “oky”, “anton”};
for(int i = 0; i<members.length; i++) {
System.out.println(members[i]);
if(members[i].equals(“oky”) break;
}
System.out.println(“Looping selesai”);
}
akan menampilkan:
endy
oky
Looping selesai
Jadi begitu keyword break dijalankan, loop yang mengelilinginya
langsung disudahi.
HALAMAN 42 | JAVA FUNDAMENTAL
continue
Kalau keyword break menghentikan loop, keyword continue hanya
menghentikan iterasi yang sedang berjalan. Mari kita modifikasi
contoh kode di atas untuk mengilustrasikannya.
public void displayMembers()
String[] members = {“endy”, “oky”, “anton”};
for(int i = 0; i<members.length; i++) {
if(members[i].equals(“oky”) continue;
System.out.println(members[i]);
}
System.out.println(“Looping selesai”);
}
Kode di atas akan menampilkan:
endy
anton
Looping selesai
return
Keyword return akan langsung mengakhiri method yang
mengelilinginya.
Kita akan gunakan contoh kode yang sama, hanya keyword
continue yang kita ganti dengan return.
PEMROGRAMAN JAVA | HALAMAN 43
public void displayMembers()
String[] members = {“endy”, “oky”, “anton”};
for(int i = 0; i<members.length; i++) {
if(members[i].equals(“oky”) return;
System.out.println(members[i]);
}
System.out.println(“Looping selesai”);
}
Kode di atas akan menampilkan:
endy
Seperti kita lihat, baris Looping selesai tidak dijalankan, karena
method langsung berakhir.
RENUNGAN
= = = KUN FAYAKUN = = =
Teman-teman.., kalau kita sakit.., kemana kita melangkah…? Ke DOKTER. Sampai di dokter, dokternya malah bertanya pada kita. Apa pertanyaan dokter itu…? “ sakit apa..? “. berati kita datang pada yang tidak tau. buktinya dia masih nanya sama kita. terus kalau kita punya motor, mobil rusak.., kemana kita datang…? Pastinya ke BENGKEL. Sampai di bengkel, montirnya juga bertanya sama kita, ( APANYA YANG RUSAK..? ). Setelah kita cerita baru dia bekerja. Terus.., kalau kita lapar, apa yang kita cari…? MAKANAN..!! kalau kita haus.., MINUMAN…!! Terus kalau ban motor atau mobil kita kempes, kemana kita datang…? TUKANG TAMBAL BAN !!. begitu kenalnya kita dengan tukang tambal ban, begitu kita punya masalah yang ada kaitannya dengan dia, langsung connect ke dia. Apa tuh artinya buat kita…? Ini PERTANYAAN TAUHID.
Berarti kalau kita punya masalah…, kita punya keinginan.., kita tidak datang kepada Allah, kita tidak menghadap kepada Allah.., itu tandanya kita tidak mengenal Allah sebaik kita mengenal dokter ketika kita sakit, kita tidak mengenal Allah sebaik kita mengenal montir untuk mobil motor kita yang rusak, kita tidak mengenal Allah sebaik kita mengenal makanan ketika kita lapar, minuman ketika kita haus, dan bahkan konyolnya, kita tidak mengenal Allah sebaik kita mengenal tukang tambal ban buat ban kita yang kempes.
Padahal kalau kita datang kepada Allah, Allah tidak perlu bertanya sama kita. Kenapa…? Karena dia sudah MAHA TAHU. Kenapa dokter masih perlu bertanya, kenapa bengkel masih perlu bertanya, karena mereka menganggap kita yang punya badan, mereka menganggap kita yang punya kendaraan, sehingga kita yang lebih tau tentang penyakit badan kita, tentang masalah kendaraan kita. Tapi Allah tidak perlu bertanya. Karena dia sudah MAHA TAHU.
Siapa yang sedang punya kesulitan..? siapa yang sedang punya masalah..? ayo kita belajar dari kisah seoarang sahabat yang namanya SUJONO. Kita belajar dari dia. Betapa dia berusaha menyelesaikan masalahnya. 3 tahun dia berusaha menyelesaikan masalahnya, tapi tidak selesai-selesai. Tapi begitu dia datang kepada Allah, subhanallah….KUN FAYAKUN nya Allah berlaku.
“INNAMA AMRUHUUU IDZA ARAADA SYAIAN AN YAKULA LAHU KUN FAYAKUN”
Artinya : Sesungguhnya keadaan-Nya apabila Dia menghendaki sesuatu hanyalah berkata kepadanya: “Jadilah!” maka terjadilah ia. ( QS YAASIN : 82 )
Kalau Allah sudah berkehendak, maka kehendaknyalah yang akan terjadi. Kalau Allah sudah bilang KUN, FAYAKUN.
Ada seorang kawan, sebut saja begitu namanya SUJONO. SUJONO ini sudah 3 tahun masalahnya tidak selesai-selesai. Apa masalahnya…..?
1. Dia punya masalah hutang.
2. Dia punya masalah dengan istrinya.
3. Dia punya masalah dengan anaknya.
Di tahun ke-3 dia bermasalah, dia memutuskan untuk bunuh diri. Jadi, ketiak dia sudah tidak menemukan jalan penyelesaian, subhanallah…, dia kemudian memutuskan untuk bunuh diri. Dia bilang sama Allah “( sudahmi deh, penghabisanmi ini, soalnya tidak adami jalan belaa..)”. sebagian teman-teman pasti bertanya, “( apakah memang masalahnya itu LA SUJONO, na maui bunuh diri..?)”. ya itu di atas masalahnya 3 biji. Sebenarnya sederhana, tapi kalau kita tidak tau kemana kita mencari pertolongan, kalau kita tidak tau kemana kita menyandarkan diri, memang sudah begitu nasibnya. Masalah kecil bisa menjadi bahaya.
Jadi rupanya, di tahun ke 3, ketika SUJONO punya masalah, semuanya memuncak. Di tahun ke 3, di hari minggu, ada RENTENIR datang kerumahnya. Rentenir itu berkata “(oee Sujono, kalau ko tidak menyiapkan uang 15 juta, besok jam 10 pagi, dua ji pilihannya…satu, kosongkan ini rumah. Atau yang ke dua, saya yang kasi kosong ini rumah…)”. Sebenarnya sih ….ya…bukan masalah gampang sih. Tapi kalau urusan lagi lancar, uang 15 juta barangkali masih bisa di cari kanan kiri. Tapi SUJONO sudah buntu. Buntuuuuuuuu….. dia cari pinjaman mentok semua. Akhirnya dia putus asa.
Kedatangan tamu yang pertama sudah membuat SUJONO pusing. Habis si rentenir datang, kemudian datang tamu yang ke dua. Siapa tamu yang kedua…? Tamu yang kedua ini ISTRINYA. Rupanya istrinya sudah 2 tahun pisah ranjang sama Sujono. Istrinya datang….apa kata istrinya…? “ ( kak, kalau sampai besok kita belum juga tanda tangan surat cerai saya, kayaknya besok ada yang datang jemput kita. Mau di paksa. Jadi besok jam 12, saya tunggu ki di pengadilan Agama )”. Tambah pusing kepalanya SUJONO.
Memangnya kenapa istrinya nuntut cerai…? Owh, rupanya SUJONO sudah selingkuh. Jadi waktu dulu Sujono masih jaya, waktu Sujono banyak uangnya, Sujono punya 2 hobby. JUDI & MINUM. Ketika dia bermasalah, ketika usahanya bangkrut, hobby itu berubah jadi pelarian. Tahun ke 2 dia minum, dia mabuk, dia judi, kemudian terjadi peristiwa perselingkuhan. Padahal Sujono sudah bilang sama istrinya “( de’, kakak kan selingkuh tidak sengaja )”. Ada gak selingkuh tidak sengaja…? Hahahahaha….
Jadi begitu dia mabuk, dia pulang ke tempat perempuan yang bukan istrinya. Sama-sama mabuk. Lelaki perempuan sama2 mabuk, satu rumah, satu kamar, pasti kejadian. Hanya begitu besok paginya, si perempuan bilang begini, “( Sujono, sudah dewasa maki semua ini, tadi malam itu kita tidak sengaja, jadi pulang moko, saya juga pulang. Anggap saja tidak pernah terjadi apa2)”.
Ternyata empat bulan kemudian, diralat sama perempuan itu. Apa kata perempuan itu..? “ ( wah, tidak cocok mi ini, ternyata tidak sengaja, jadi ji juga)”. Terus istrinya Sujono tauuuu…..
Teman2 yang di rahmati Allah. Siapapun perempuan, siapapun seorang ibu, siapapun seorang istri, kalau urusan sama suami urusan ekonomi, banyak yang kuat. Tapi kalau sudah urusan perasaan, pasti game over. Jadi begitu ketahuan, apa kata istrinya …? “ ( langsung ceraikan saya)’.
Siang itu istrinya datang, hari minggu itu. Dia mengatakan, “( kak, besok jam 12, saya tunggu di pengadilan agama )”.
Ba’da asharnya, anaknya Sujono yang kecil yang datang Pulang dari main bola. Sujono ini punya dua orang anak. Yang pertama, namanya RIFKI, ikut sama dia. Yang kedua yang kecil ikut sama istrinya. Anaknya yang pertama, rifki pulang main bola ba’da Ashar. Apa kata anaknya…? “( pak, besok saya tidak sekolah mi..)’. kata Sujono, “( kenapa bisa…?)”. anaknya bilang, ( kita lupa bayar SPP ku bela, sudah maumi 7 bulan)”.
Seorang ayah, kalau tidak bisa memberi jajan anak, seorang bapak, kalau sudah tidak bisa mengongkosi anak, bukan main malunya. Melihat anak lain jajan, terus anak kita tidak, sungguh hati terasa pilu. Begitulah hati seorang ayah. Begitu juga dengan Sujono, begitu dia tau besok anaknya tidak bisa masuk sekolah, langsung sesak dadanya.
Sehingga ba’da isya, malam senin itu, dia memutuskan untuk SAY GOOD BYE DUNIA. Dia mau bunuh diri. Tapi subhanallah, rupanya Sujono masih agak sadar sedikit. Masih ingat SHALAT dia. Jadi begitu dia mau bunh diri, dia ingat kalau dia belum shalat. Dia bilang apa…? “ ( iya ya, sudah lama sekali mi saya tidak shalat, terakhir deh….sebelum bunuh diri, mauka dulu shalat )”.
Secara tidak sengaja nanti lewat kisah ini, ternyata Sujono melakukan 6 hal, Sujono melakukan 6 langkah, yang di perintahkan oleh RASULULLAH ketika kita memang bermasalah. Kalau 6 langkah ini kita jalani secara sempurna, Insya Allah, tidak ada masalah yang tidak selesai.
Yang pertama kata RASULULLAH, kalau hati sedang gundah gulana, sedang gelisah, sedang di rundung masalah, FAL YATAWDDHA’.., BERWUDHULAH KALIAN.
Jadi begitu mau bunh diri, Sujono ingat kalau dia belum shalat. “( iyo di, saya mau shlat isya dulu deh..)”. dia kemudian berwudhu’. Begitu wudhu’, kan yang di basuh muka, tapi kok hati yang dingin ya…? . kita sering salah menjadi manusia,. Mestinya kan ALLAH – IKHTIAR – ALLAH, DO’A – IKHTIAR –DO’A, SABAR – IKHTIAR – SABAR, TAWAKKAL – IKHTIAR – TAWAKKAL. Tapi kita kan tidak. Ikhtiar ciaaaaattttttt…, begitu terbentur baru ingat Allah. Salah nggak kalau kita mentok baru ke Allah…? Nggak salah sih, daripada kesasar..hehehehehe….tapi, dari mana saja, nanti mentok baru mencari Allah….? Coba kalau kita mencari Allah dari pertama, insya Allah tidak mentok.
Nah, Sujono berwudhu’. Begitu berwudhu’ hatinya menjadi sejuk. YASSALAM….Sujono berkata “( seumur hidup barusan ku rasa tenang sekali kayak begini perasaanku, Alhamdulillah…)”.
Kemudian habis FAL YATAWDDHA’ kata Rasulullah, FAL YUSHALLI RAKA’ATAINI. Dalam konteksnya itu adalah shalat hajat. Sedangkan Sujono shalat isya. Sebenarnya Sama saja prinsipnya. Jadi habis wudu’, shalat..
Sujono kemudian shalat. Habis shalat, dia lihat kanan kiri beri salam, dia lihat Al-Qur’an. Dia berfikir, “( ahh..takkalami deh, terakhir, saya mau mengaji juga)’. Kemudian dia buka Al-Qur’an itu. Begitu dia buka, rupanya Allah sedang berkehendak sama Sujono. Allah sedang ingin berkomunikasi dengan yang namanya SUJONO ini. Begitu di buka ayatnya, SURAH ALI-IMRAN AYAT 26-27.
QULILLAHUMMA MAALIKAL MULKI TU’TIL MULKA MAN TASYAUU, WA TANZI’UL MULKA MIMMAN TASYAU, WA TU’IZZU MAN TASYAU WA TUZILLU MAN TASYAU, BI YADIKAL KAHAIRU. INNAKA ‘ALA KULLI SYAIIN QADIIRR. ( QS ALI-IMRAN AYAT 26 ).
Artinya : Katakanlah: “Wahai Tuhan Yang mempunyai kerajaan, Engkau berikan kerajaan kepada orang yang Engkau kehendaki dan Engkau cabut kerajaan dari orang yang Engkau kehendaki. Engkau muliakan orang yang Engkau kehendaki dan Engkau hinakan orang yang Engkau kehendaki. Di tangan Engkaulah segala kebajikan. Sesungguhnya Engkau Maha Kuasa atas segala sesuatu. ( QS ALI-IMRAN AYAT 26 ).
Hitam kata Allah, hitam yang terjadi. Putih kata Allah, putih yang terjadi. Seolah-olah Allah bilang lewat ayat ini,
“( Sujono, kata siapa rumah kamu akan disita, kalau Aku yang maha mengamanahkan rumah kepada orang-orang yang berumah, masih mengamanahkan rumah ini kepadamu, maka rumah ini akan tetap menjadi milikmu. Sujono, kata siapa istrimu akan menceraikanmu besok, kalau Aku maha mempersatukan dua hati, masih tetap dalam satu keluarga yang sakinah, mawaddah wa rahmah, maka itulah yang akan terjadi. Sujono, masalah itu bukan kata orang, tapi kata diriku ( kata Allah ), kalau aku bilang kalian bermasalah, maka itulah yang akan terjadi, kalian akan bermasalah. Kata siapa juga anakmu tidak akan sekolah besok, urusan sekolah bukan urusan uang, tapi urusan apakah aku mengijinkan mereka sekolah atau tidak. BUKAN….., bukan di tangan manusia semua keputusan ( kata Allah ), tapi di tanganku)”
Tapi Sujono tidak percaya..sebab apa dia fikir, waktu sudah mepet, besok jam 10 dia harus punya uang 15 juta, dapat dari mana…..? terus istri sudah 2 tahun di gantung, tidak di ceraikan. Kira2 Sujono mau bilang NGGAK MUNGKIN. Memang kalau kita tanya sama otak kita, pasti nggak mungkin. Tapi kalau kita tanya sama Allah, apa yang tidak mungkin bagi dia…kalau Allah sudah bilang KUN..FAYAKUN…
Karena Sujono masih ragu, Allah membuat mata Sujono terus melihat ayat yang lain ayat 27.
TULIJUL LAILA FIN NAHARI, WA TULIJUN NAHARA FIL LAIL, WA TUHRIJUL HAYYA MINAL MAYYITI, WA TUHRIJUL MAYYITA MINAL HAYYI, WA TARZUKU MAN TASYAU BI GHAIRI HISABB. ( QS ALI-IMRAN AYAT 27 ).
Artinya : Engkau masukkan malam ke dalam siang dan Engkau masukkan siang ke dalam malam. Engkau keluarkan yang hidup dari yang mati, dan Engkau keluarkan yang mati dari yang hidup . Dan Engkau beri rezki siapa yang Engkau kehendaki tanpa hisab (batas)”. ( QS ALI-IMRAN AYAT 27 ).
Kira-kira kata Allah untuk Sujono melalui ayat tersebut, “(TULIJUL LAILA FIN NAHARI, WA TULIJUN NAHARA FIL LAIL… Sujono, jangankan cuma mengubah nasib kamu, malam bisa aku rubah jadi siang, siang bisa aku rubah jadi malam., apalah lagi cuma urusan nasib manusia. WA TUHRIJUL HAYYA MINAL MAYYITI, WA TUHRIJUL MAYYITA MINAL HAYYI…. Yang lebih sulit dari itu Allah bisa, membangkitkan orang yang sudah mati. WA TARZUKU MAN TASYAU BI GHAIRI HISABB.. Allah kalau sudah mau memberi rezeki kepada kita, bukan dengan jalan apa yang kita duga. Bukan dengan jalan apa yang kita fikirkan)”.
Tapi Sujono masih tetap nggak percaya.. kata Sujono, “( sudahmi deh, tidak mungkin mi, menyerah ma saja deh )”. Karena Sujono masih tetap tidak percaya, Allah menggerakkkan tangannya Sujono. Malam itu rupanya Allah berkenan berdialog sama Sujono. Kita semua berdo’a, mudah2an kita juga di beri kesempatan yang sama begitu…., kita ibadah enaaakk….,
Sujono kemudian membuka lagi Al-Qur’an. Begitu terbuka, ada surat FAATHIR, SURAH KE 35, AYAT 2 & 3. Ini yang di baca oleh Sujono setelah surah Ali-Imran tadi. Subhanallah…
MAA YAFTAHIL LAHU LINNASI MIN RAHMATIN FALA MUMSIKA LAHAA, WA MAA YUMSIK FALAA MURSILA LAHU MIN BA’DIHI, WA HUWAL ‘AZIZUL HAKIM. ( QS FAATHIR AYAT 2 ).
Artinya : Apa saja yang Allah anugerahkan kepada manusia berupa rahmat, maka tidak ada seorangpun yang dapat menahannya; dan apa saja yang ditahan oleh Allah maka tidak seorangpun yang sanggup melepaskannya sesudah itu. Dan Dialah Yang Maha Perkasa lagi Maha Bijaksana. ( QS FAATHIR AYAT 2 ).
“( Sujono, (kata Allah). Belum tentu keburukan itu terjadi, sebagaimana belum tentu kebaikan terjadi, kalau aku tidak menghendaki, WA HUWAL ‘AZIZUL HAKIM.., Allah maha Perkasa, Lagi Maha Bijaksana ).
YAA AYYUHAN NASUZ KURUU, NI’MATAL LAHI ALAIKUM, HAL MIN KHAALIQINN, GHAIRUL LAHI YARZUKUKUM MINAS SAMA’I WAL ARDHI. LAA ILAHA ILLA HUWA, FA ANNAA TU’FAKUN. ( QS FAATHIR AYAT 3 ).
Artinya : Hai manusia, ingatlah akan ni`mat Allah kepadamu. Adakah pencipta selain Allah yang dapat memberikan rezki kepada kamu dari langit dan bumi ? Tidak ada Tuhan selain Dia; maka mengapakah kamu berpaling (dari ketauhidan) ? ( QS FAATHIR AYAT 3 ).
“(YAA AYYUHAN NASUZ KURUU, NI’MATAL LAHI ALAIKUM.., eh manusia..(kata Allah), ingat dong rizki yang aku berikan kepada kalian)’. Nah sebagai contoh, pernah nggak kita minta Telinga yang bisa mendengar,…? TIDAK. Kenapa…? Karena telinga kita di beri memang sudah bisa mendengar. Apa kata Allah di atas..? YAA AYYUHAN NASUZ KURUU, NI’MATAL LAHI ALAIKUM.. kalau terhadap yang kalian tidak minta aku bisa memberi, kenapa lagi terhadap yang kalian minta, aku tidak bisa memberi…..
HAL MIN KHAALIQINN, GHAIRUL LAHI YARZUKUKUM MINAS SAMA’I WAL ARDHI…Lagipula, adakah yang bisa memberi rezki dari langit & bumi kecuali Aku (kata Allah). Allah menjawab sendiri, LAA ILAHA ILLA HUWA …. Tidak ada…!!!. Kecuali Allah……!! FA ANNAA TU’FAKUN….ayoo..(kata Allah), balik, balik, balik, balik,…IRJI’ ILAYYAA.. balik kepadaku ( kata Allah ). Mohonlah apa yang kalian butuhkan, mohonlah apa yang kalian perlukan.
Sujono kemudian insyaf. Tadi ada Asmaul Husna di ayat 2 tadi, WA HUWAL AZIZUL HAKIM… Sujono kemudian berucap “( iya deh, kalau memang semua adalah kehendak Allah, kalau memang semua urasan di tangan Allah, baik.., saya ndak jadimi bunuh diri). Kemudian Sujono tutup Al-Qur’an itu. Setelah itu dia bangun, terus keluar dari kamarnya, di jalan menuju pintu rumahnya. Begitu sampai di pintu, di kemudian mengunci pintu tersebut dari dalam. Kemudian dia matikan semua lampu, kecuali dua kamar, yaitu kamarnya & kamar anaknya.
Langkah pertama Sujono telah lakukan yaitu BERWUDHU’. Kenapa kita penting berwudhu’..? karena kita mau datang kepada Allah. Kita datang sama camat, bupati, gubernur saja kita harus siap. Kita mau minta kepada Allah, langkah pertama yaitu BERWUDHU’, AGAR SUPAYA KITA BERSIH.
Yang kedua Sujono lakukan yaitu SHALAT. Dalam kasus Sujono dia memang shalat isya. Nanti kita, kalau punya masalah paling tidak shalat hajat. Lebih mantaf lagi kalau kita bisa bangun malam untuk shalat malam.
Yang ke tiga yang dilakukan Sujono adalah BACA QUR’AN. WAL YAQRAIL QUR’ANA WA LAW AYATAN..bacalah qur’an walaupun se ayat. Ternyata Sujono baca, dan qur’an inilah yang kemudian menyelamatkan dirinya.
Nah yang ke empat yang Sujono akan lakukan, adalah BERDO’A. Kita kan cuma mengaku saja punya masalah, kita cuma mengaku saja punya keinginan, tapi siap yang berdo’a belum tentu tuh. Kita berdo’a sambil lari biasanya. Begitu melipat sajadah baca ALHAMDULILLAH langsung kabur…begitu Assalamu Alaikum melipat sajadah, berdoanya sambil jalan. Wakakakakaka….. kita tidak pernah berdo’a, YA ALLAH…., sampai khusuk. Nah, Sujono mau melakukan itu. Kenapa dia matikan semua lampu…? Kenapa dia kunci semua pintu…? Karena dia mau berduaan dengan Allah SWT.
Jadi dia kembali lagi ke kamarnya, dia duduk, dia TAWAJJUHKAN wajahnya, dia tawajjuhkan hatinya ke Allah. Dia mau menghadap kepada Allah, “( YA RABB…, SAYA DATANG KEPADAMU MEMBAWA MASALAH SAYA, ENGKAU YANG MAHA MENDENGAR, ENGKAU YANG MAHA MELIHAT, ENGKAU YANG MAHA KUASA, TOLONGMI SAYA KASIAN MALAM INI…supaya besok, rumah saya jangan di sita, istri saya jangan cerai, anak saya jangan sampai di keluarkan)”. Kemudian dia baca tuh Asmaul Husna ( YA AZIZU YA HAKIM.. YA GHAFURU YA RAHIIM…) sambil dia dinginkan hatinya. “( Ya Aziz, wahai yang Maha Perkasa…, boleh jadi menurut saya punya akal ndak akan bisa menahan ini rumah, tapi kalau engkau yang Maha Perkasa bilang rumah ini tetap punya saya, pastilah rumah ini jadi milik saya. Ya Rabb.., sepertinya istri saya ndak mungkin saya tahan untuk tidak cerai, tapi kalau engkau yang Maha Berkehendak bilang itu istri tetap milik saya, Insya Allah itu istri masih di sampung saya. Rabb.., engkau Yang Maha Perkasa bisa menyekolahkan anak2 yang lain, kenapa anak saya tidak..?)”. terus Sujono juga membaca YA HAKIM..”( Wahai yang Maha Bijaksana, boleh jadi saya susah lantaran diri saya sendiri yang membuat saya susah, boleh jadi saya sulit lantaran saya punya dosa & keburukan, tapi engkau YA HAKIM…., yang Maha Bijaksana. Rabb.., ampuni dosa saya, YA GAFURU YA RAHIIM ).
Kurang lebih sampai jam 1 malam Sujono membaca Asmaul Husna Tersebut. Kita sebut namanya Allah, insya Allah kalu kita sebut namanya Allah, Allah akan ingat sama kita. Sujono menyebutnya sampai jam 1 malam. Permintaan dia, RUMAH JANGAN JANGAN DI SITA, ISTRI JANGAN CERAI, ANAK TETAP SEKOLAH. Begitu jam 1, mata Sujono terasa perih. Begitu terasa perih, dia wudhu’ lagi. Begitu selesai wudhu’ dia baca qur’an lagi. Begitu baca qur’an, kali ini yang dia baca ayat tentang PASRAH. Kalau sudah berdo’a, maka FAL YATAWAKKAL ALALLAH.., maka berserah diri lah pada Allah. Yang Sujono baca kali ini, surah AT-THALAQ ayat 2-3. Ujung ayat ke dua…
…MAA YATTAKILLLAHA YAJ’AL LAHU MAKHRAJANN@@ WA YARZUKKHU MIN HAISU LAA YAHTASIBU, WA MAN YA TAWAKKAL ‘ALALLAHI FA HUWA HASBUHU, INNALLAHA BAALIGU AMRIHI, QAD JAALALALAAHU LI KULLI SYAIIN QADRAA ( QS AT-THALAQ AYAT 2-3 )
artinya : …..barangsiapa bertakwa kepada Allah niscaya dia akan mengadakan baginya jalan keluar.@@
Dan memberinya rezki dari arah yang tiada disangka-sangkanya. dan barangsiapa yang bertawakkal kepada Allah niscaya Allah akan mencukupkan (keperluan)nya. Sesungguhnya Allah melaksanakan urusan yang (dikehendaki)Nya. Sesungguhnya Allah Telah mengadakan ketentuan bagi tiap-tiap sesuatu.@@. ( QS AT-THALAQ AYAT 2-3 ).
“(…MAA YATTAKILLLAHA YAJ’AL LAHUMAKHRAJANN.., tenang Sujono ( kata Allah )” yang penting manusia itu bertaqwa kepada Allah, pelihara diri sesudah berdoa ini, YAJ’AL LAHU MAKHRAJANN.. Allah akan memberi jalan keluar. WA YARZUKKHU MIN HAISU LAA YAHTASIBU..Allah akan memberi rezeki dari jalan yang tidak pernah dia duga. WA MAN YA TAWAKKAL `ALALLAHI.., barang siapa yang berserah diri kepada Allah, FA HUWA HASBUHU.., Allah yang akan mengurus. INNALLAHA BAALIGU AMRIHI.., QAD JAALALALAAHU LI KULLI SYAIIN QADRAA..,.
Permintaan Sujono akhirnya berubah. Yang Sujono lakukan tadi kan WUDHU`, SHALAT, BACA QUR`AN, BERDO`A, PASRAH. Begitu ketemu ayat di atas, do`anya berubah. Kalau di Episode awal, ba`da isya, sampai jam 1, dia minta supaya RUMAH JANGAN JANGAN DI SITA, ISTRI JANGAN CERAI, ANAK TETAP SEKOLAH,. Kali ini berubah, do`anya adalah do`a orang pasrah. Apa kata Sujono..? “( iyo dii.., saya tobat baru ini malam, saya sadar baru ini malam, masa saya minta besok semua masalah selesai. Iya deh, yang penting saya butuh ampunan Allah dulu saja..)”. dia mau pasrahkan semuanya. Masalah Sujono yang pertama kan masalah RUMAH. Maka rumah ini yang kemudian Sujono pasrahkan. Sujono kemudian bangun dari sajadahnya, dia keluar dari kamar, dia ambil kunci rumahnya, yang tergantung di pintu. Dia ambil kunci itu kemudian dia taruh di atas sajadah. Dia bilang sama Allah, tuhannya & tuhan kita semua, “( ya Rabb.., iya deh.., besok kalau itu rentenir datang, saya kasikan saja ini rumah. Kalau memang engkau tidak mengamanahkan lagi ini rumah buat saya, nggak apa2…yang penting engkau Ridho ya Allah..engkau mengampuni dosa saya kasian, dengan wasilah rumah ini kau ambil)”. Jadi rencananya besok dia mau pasarahkan rumah itu. Habis memasrahkan rumah, dia kemudian memasrahkan istrinya. Sujono bangun, jalan menuju lemari. Di lemari, ada kotak cincin yang didalamnya ada cincin satu biji. Tinggal satu, karena yang satunya di bawa istrinya. Kemudian cincin itu di ambil & di taruh diatas sajadah. Apa dia bilang sama cincin itu,…? “( bos, percuma kamu ada, istri saya tidak ada. Besok kalau memang istriku ndak bisa lagi ditahan, baiklah.., besok saya akan pasrahkan pada Allah, saya akan tanda tangan saja deh)”. Jadi dia berencana menyerahkan cincin itu sama istrinya, hitung2 buat biaya cerai.
Selesai memasrahkan istri, dia kemudian memasrahkan anak. Jam sudah mau setengah 3 subuh. Sujono kemudian bangun lagi, dia ke kamar anaknya si RIFKI. Anaknya lagi tidur. Di cium sama Sujono tuh anak. Apa kata si Sujono..? “( Ki,…, maafkan ayah nah.., ayah sudah jadi ayah yang ndak benar.., ayah kasi berpisah ko sama adikmu.., kasi berpisahko sama mama`mu…,. Ki,…misalnya besok bapak tidak dapat uang buat sekolahmu, bapak antar mako saja sekalian ke pengadilan, ko ikut mi sama mama’mu saja nah.., ayah do’akan supaya kamu dapat AYAH YANG LEBIH BAIK)”. Dia pasrah kan semua, rumah, istri, anak. Dia mau keluar dari rumahnya dalam kondisi kosong. Kalau memang itu semua bisa menjadi penebus dosa oleh Allah, biarlah di ambil semua Oleh Allah, fikir Sujono.
Setelah pasrah dia duduk lagi, dia merenung…, kali ini ringan dia punya perasaan & badan.
Yang ke enam, 6 langkah yang terakhir adalah FAL YATASADDAQ.., dan BERSEDEKAHLAH. Rupanya begitu Sujono bilang semua sudah aku pasrah kepada Allah, ingat dia kalau yang mau disita kan cuma rumah. Isinya tidak. “( besok saya akan bagi2kan isi rumah ini kepada tetangga,..ada yang mau ambil kasur silahkan, lemari silahkan..pokoknya semuanya )”. Pokoknya Sujono mau keluar dari rumah bawa pakaian yang di badan saja. Tidak lama kemudian waktu subuh tiba. Terdengar suara shalawat dari mesjid. Nah, Sujono kan hatinya lagi hidup. Biasanya shalat subuh tidak kedengaran. Memang sih kalau uang lagi banyak, jauh itu mesjid..wakakkakkaka….begitu uang sudah tidak ada, masalah banyak, mulai deh bermalam di mesjid….hahahahahhaa…..tapi ndak apa2, daripada tidak sama sekali. Kata Rasulullah SAW, “INGATLAH ALLAH KETIKA KALIAN SENANG, MAKA ALLAH AKAN MENGINGAT KALIAN DI KALA SUSAH, INGAT ALLAH KETIKA SUSAH, MAKA ALLAH AKAN MENGINGAT KALIAN KETIKA SENANG”.
Begitu adzan subuh terdengar, Sujono jalan. Dia ke mesjid shalat subuh. Shalat subuh itu luar biasa lhoo.., sangat nikmat kalau kita di mesjid. WA MAN YA TAWAKKAL `ALALLAHI FA HUWA HASBUHU, ini janji Allah. Kalau kita sudah datang kepada Allah, Allah pasti layani, Allah pasti urus,. Jadi begitu Sujono ke mesjid, shalat subuh, dia ndak langsung pulang. Selesai shalat dia baca surah AL-WAQIAH, kan kata rasulullah SAW, kalau kita rajin baca surah waqiah habis shubuh, Insya Allah tidak bakalan fakir hidup kita. Memang bagus sih, daripada habis shubuh tidur lagi, penyakit juga banyak.
Jam 6, Sujono turun dari mesjid. Begitu dia turun melangkah, ada bayangan. Ada bayangan di depan rumah dia ada oarang menunggu. Itu jantung langsung copot, yang tadinya di dada langsung turun ke perut… wakakakakka…kenapa bisa begitu..? Sujono berfikir, itu rentenir yang lagi menunggu. “( subhanallah., tallewa2na kodong.., janjinya jam 10, kenapa na datangmi jam segini beh…)”. tapi hatinya Sujono sudah hidup, kalau hati hiduP, BERANI. Hatinya Sujono memerintahkan kakinya untuk MAJU. Apa bedanya jam 10 sama jam 6…? maju terusss…dengan mengucap bismillah, Sujono maju sambil berkeyakinan lebih cepat lebih baik.
Teman2 ingat nggak ayat di atas yang pertama kali di baca Sujono. TULIJUL LAILA FIN NAHARI, WA TULIJUN NAHARA FIL LAIL, WA TUHRIJUL HAYYA MINAL MAYYITI, WA TUHRIJUL MAYYITA MINAL HAYYI, WA TARZUKU MAN TASYAU BI GHAIRI HISABB.., ehh.., rupanya Sujono dapat rezeki yang tidak di duga. Begitu dia ketemu sama tamu tersebut, ternyata tamu tersebut bukan rentenir, melainkan teman lamanya. Begitu dia lihat tamu itu adalah teman lamanya, jantung yang tadi copot sampai di perut naik lagi ke dada..wakakakakkaa…
Sujono kemudian mempersilahkan tamunya masuk. Begitu masuk kedalam, ditawari sama Sujono, “( mau minum apa..? teh, kopi, atau susu..? tapi air putih mo saja deh…tidak adai istriku bela..)”. tamunya bertanya, “( kemanakah istrimu..?)”. Sujono menjawab, “( lagi jalan2 kerumah ibunya)”. Dia tidak bilang kalau lagi proses perceraian. Itu kan AIB, tidak boleh di ceritakan sama orang lain. Kemudian tamu tadi pesan teh manis. Kata tamu itu, “( sekalianmi kau masak juga mi, saya belum sarapan ini). Yang namanya request dari tamu, harus di penuhi. Sujono kemudian ke dapur. Dia bikin tehh manis sambil menangis. Apa dia bilang..? “( kalau ada istriku, tidak begini ceritanya kasian )”.
Terus dia bawakan tamunya. Dia berikan sama tamunya. Ngobrol mereka berdua akhirnya.
Kata Sujono, “( barusannya kau datang pagi2, ada apakah..?)”.
kata tamunya, “( lik, ada proyekku ini, kau kan jago menaksir alat2 berat yang bekas, nah ada yang mau di jual ini).
Ternyata Sujono ini bisnisnya me rekondisi alat2 berat. Namanya “beli second, dia perbaharui”.
Jadi kata tamu itu, “( ikut mako sama saya ke papua, ko bantu saya taksir harganya itu barang..)”.
Sujono berkata “( jangan mi deh..).
tamunya heran, “( kenapa janganmi..?)”.
Sujono berkata, “(malaska ku rasa)”.
Tamunya berkata, “( wee kodong.., bantupi saya kasian, sayang kalau lewat ini proyek ).
Sujono kemudian berkata sambil bercanda, “( begini paeng, kalau mauko saya ikut, ko siapkan uang 50 juta ini hari sebelum jam 10 di mejaku..)”
Perkiraan Sujono, temannya ini tidak akan mengiyakan. Mana ada orang kerja uangnya duluan. Tapi di luar dugaan Sujono, memang WA TARZUKU MAN TASYAU BI GHAIRI HISABB, apa kata tamu itu..?
“( begini saja Sujono, kalau 50 juta memang tidak ada. Tapi kalau 25 juta ji, insya Allah ini hari cash akan saya siapkan)”.
Kaget Sujono bukan kepalang. Dia juga sementara makan mi Instant. Sampai dia tersedak.
Kata Sujono kemudian, “( tunggu dulu, coba pi kau ulangi tadi, apa kau bilang tadi itu kah..?)”.
Pasti Sujono kaget, soalnya dia kan butuh uang 15 juta. Sedangkan pagi itu ada yang datang, menawarkan uang 25 juta.
Kata temannya, “( kalau 50 tidak ada, tapi kalau 25 ji ada. Kalau bukami bank, sinimi kita sama2 pergi ambil)”.
Sujono lantas berkata, “( okemi kalau begitu, jadimi kita ke papua)”.
Lihat, masalah pertama telah selesai. Masalah rumah beres. Kenapa..? Sujono sudah dapat uang 25 juta, sedangkan rumah cuma 15 juta. Tinggal 2 masalah lagi. Inilah kehebatan Allah. ALLAHU AKBAR..ALLAHU AKBAR..kalau Allah sudah ingin menyelesaikan masalah kita, tidak pake satu-satu, tapi sekaligus. KUN FAYAKU Allah terjadi pada Sujono di malam itu. Sebab malamnya Sujono datang kepada Allah dengan sempurna. Tinggal dua masalah. Okelah, kalau masalah rumah sudah selesai, tapi masalah istri bagaimana menyelesaikannya. Ternyata Ilmu kita bukan Ilmu Allah. Kalau Ilmu Allah sih tidak terbatas. SUBHANAKA MA ILMA LANA ILLA MA ALLAM TANA, INNAKA ANTAL `ALIMUL HAKIM. Rupanya Allah juga menyelesaikan masalah istrinya. Ingat cerita di awal tadi. Sujono kan punya dua anak. Anak yang pertama ikut sama Sujono. Anak yang bungsu ikut sama istrinya. Nah anak yang ke dua ini, ketika Sujono menghadap kepada Allah, Allah membuat anak itu menangis sepanjang malam. Menangis tiada henti.
Sehingga mertuanya Sujono alias ibunya si istri, berkata begini,
“( mungkin kangen ki ini anak sama bapaknya, mungkin kangen ki juga sama kakaknya, coba2 sai bawa besok ketemu sama bapaknya. Yang penting tidak sakit ki ini anak)”.
Subhanallah…, ternyata ini kelak menjadi jalan yang bisa menyatukan rumah tangganya Sujono & istrinya. Cara yang tidak pernah di duga oleh Sujono & juga oleh istrinya, bahkan oleh kita semua. Istrinya Sujono lantas berkata,
“( boleh.., tapi bagaimanami dii, kan sudah mi saya bialang sama dia, saya tunggu di pengadilan, kan saya malu bu..)”.
Mertuanya Sujono lantas bilang,
“( ko bilang saja sama Sujono, kalau kau datang bukan karena dia, tapi karena anak)”.
Jadi istrinya berencana datang ke rumah Sujono sambil ngancam,
“( kak, saya datang ini bukan karena kita, saya datang karena anak kita, dia kangen sama kakaknya, selesai ini tetap saya tungguki di pengadilan)”.
Akhirnya, istrinya Sujono datang pagi2. Jadi begitu Sujono keluar menuju ke bank, istrinya juga berangkat menuju rumahnya Sujono. begitu selesai ambil uang, dia pulang. Duduk sebentar, istrinya mengetuk pintu. ASSALAMU ALAIKUM…istrinya sudah siap2 bilang,
“( awas memangko, pokoknya saya mau bilang, ini bukan karena kita )”.
Tapi begitu pintunya di buka sama si Sujono, istrinya melihat Sujono tersenyum. Senyumnya lebar sekali. Istrinya jadi bingung. ADA APA YA..?. belum hilang rasa penasarannya, langsung dipeluk dia sama Sujono. Apa kata si Sujono…?
“( Alhamdulillah de’, selamat maki’…)”
Makin bingung si istri.
“(selamat apa kak..?)”
Sujono menjawab,
“( kakak dapat uang ini, 25 juta pagi2. Kita kan tau de’, rumah ini mau di sita sama rentenir gara2 uang 15 juta. Sekarang selamat maki, ini uang 15 juta, kita pegangmi de’, nanti kita bayar itu rentenir. Ini masih adaji sisanya 10 juta. Kita bagi dua mi nah de’, 5 juta buat ongkos kakak ke papua, 5 jutanya lagi kita simpanmi de’ untuk ongkosnya anak2. Selama kakak di papua, jagaki ini rumah nah de’, jagaki anak2 nah de’,…)”.
Apa kata istrinya…?
“( iye’ kak )”.
Hahahahahaahhaa…istrinya bilang iyaaa. Dia lupa tuh ancamannya tadi yang sudah di persiapkan. YAA MUQALLIBAL QULUUB,. Allah yang maha memiliki hati,. Nah masalah ke dua selesai. Bererti tinggal masalah terakhir. Itu sih masalah kecil. Cuma 7 bulan kali 50 ribu jadi 350 ribu saja.
Tentu teman2 ada yang bertanya, APAKAH SEMUDAH ITU…? jawabannya, BUKTIKAN SAJA..,. lama atau sebentarnya selesai itu masalah bukan urusan kita. Kita wudhu’, kita jaga wudhu’ kita. Habis wudhu’ shalat, habis shalat baca qur’an, habis baca qur’an kita berdo`a, habis do`a kemudian kita pasrah, habis pasrah kemudian kita bersedekah dengan sedekah yang terbaik. Insya Allah…, kemelut apapun yang sedang kita hadapi, Allah akan mengeluarkan kita dari kemelut tersebut.
LA HAWLA WA LAQUWWATA ILLA BILLAH…….

