BLOGGER TEMPLATES AND TWITTER BACKGROUNDS

Rabu, 30 Desember 2009

Perkembangan prosesor atau hardware komputer lainnya

Hardware, Perkembangan CPU, Pengembangan Komputer, Pengelompokan Komputer

Perangkat Keras (Hardware)

Perangkat keras komputer (hardware) adalah semua bagian fisik komputer, dan dibedakan dengan data yang berada di dalamnya atau yang beroperasi di dalamnya, dan dibedakan dengan perangkat lunak (software) yang menyediakan instruksi untuk perangkat keras dalam menyelesaikan tugasnya. Dalam Perangkat Keras (Hardware) Komputer, terdapat 3 konsep perangkat keras,, yakni:
* Perangkat Masukan (Input Device)

Perangkat masukan berfungsi untuk memasukkan data, baik berupa teks, foto, maupun gambar ke dalam komputer, contohnya yakni:

*
1. Mouse, merupakan alat bantu untuk memberikan perintah dalam memproses data atau mengedit data.
2. Scanner, merupakan alat bantu untuk memasukkan data berupa gambar atau grafik dan mengubahnya ke dalam bentuk digital sehingga dapat diproses dan digabungkan dengan bentuk data yang berupa teks.
3. Joystick
4. Camera digital
5. Microphone
6. Digitizer
7. Touch Screen
8. Touch pad
9. Track ball
10. Light pen
11. Handycam
12. Keyboard

* Perangkat pengolah data dipergunakan untuk mengolah data. Pengolah data meliputi unit pengolah pusat (CPU/Central Processing Unit) dan juga mikroprosesor.

* Perangkat Keluaran (Output Device)

Perangkat keluaran dipergunakan untuk menampung dan menghasilkan data yang dikeluarkan, misalnya:

*
1. Monitor, merupakan alat yang mampu menampilkan teks maupun gambar dari data yang sedang diproses dalam CPU.
2. Printer,merupakan alat yang memproduksi keluaran data (output) berbentuk cetak, berupa teks maupun gambar/grafik.
3. Speaker, merupakan alat yang memproduksi keluaran data (output) berbentuk suara.
4. Proyektor

Perkembangan CPU

Processor merupakan bagian sangat penting dari sebuah komputer, yang berfungsi sebagai otak dari komputer dan tanpa processor komputer hanyalah sebuah mesin dungu yang tak dapat apa-apa. Untuk mencapai kecepatan sampai saat ini,processor tersebut mengalami perkembangan. Perkembangan processor mulai dari generasi 4004 microprocessor yang di pakai pada mesin penghitung Busicom sampai dengan intel Quad-core Xeon.

Perkembangan processor diawali oleh processor intel pada saat itu yang hanya satu-satunya microprocessor yang ada,tetapi pada saat ini sudah banyak beredar processor dari produsen yang lain, sehingga user sudah bisa mendapatkan processor yang beragam.

1. Microprocessor 4004 (1971)
Processor di awali pada tahun 1971 dimana intel mengeluarkan processor pertamanya yang di pakai pada mesin penghitung buscom. Ini adalah penemuan yang memulai memasukan sistem cerdas kedalam mesin. Processor ini dinamakan microprocessor 4004. Chip intel 4004 ini mengawali perkembangan CPU dengan mempelopori peletakan seluruh komponen mesin hitung dalam satu IC. Pada saat ini IC mengerjakan satu tugas saja.

2. Microprocessor 8008 (1972)
Pada tahun 1972 intel mengeluarkan microprocessor 8008 yang berkecepatan hitung 2 kali lipat dari MP sebelumnya. MP ini adalah mp 8 bit pertama. Mp ini juga di desain untuk mengerjakan satu pekerjaan saja.

3. Microprocessor 8080 (1974)
Pada tahun 1974 intel kembali mengeluarkan mp terbaru dengan seri 8080. Pada seri ini intel melakukan perubahan dari mp multivoltage menjadi triple voltage, teknologi yang di pakai NMOS, lebih cepat dari seri sebelumnya yang memakai teknologi PMOS. Mp ini adalah otak pertama bagi komputer yang bernama altair.Pada saat ini pengalamatan memory sudah sampai 64 kilobyte. Kecepatanya sampai 10X mp sebelumnya.
Tahun ini juga muncul mp dari produsen lain seperti MC6800 dari Motorola -1974, Z80 dari Zilog -1976 (merupakan dua rival berat), dan prosessor2 lain seri 6500 buatan MOST, Rockwell, Hyundai, WDC, NCR dan seterusnya.

4. Microprocessor 8086 (1978)
Processor 8086 adalah cpu pertama 16 bit, tetapi pada saat ini masih banyak di gunakan mainboard sandard 8 bit, karena motherboard 16bit merupakan hal yang mahal. Akhirnya pada tahun 1979 intel merancang ulang processor ini sehingga compatible dengan mainboard 8 bit yang di beri nama 8088 tetapi secara logika bisa di namakan 8086sx. Perusahan komputer IBM menggunakan processor 8086sx ini untuk komputernya karena lebih murah dari harga 8086, dan juga dapat menggunakan mainboard bekas dari processor 8080. Teknologi yang di gunakan pada processor ini juga berbeda dari seri 8080, dimana pada seri 8086 dan 8086sx intel menggunakan teknologi HMOS.

5. Microprocessor 286 (1982)
Intel 286 atau yang lebih dikenal dengan nama 80286 adalah sebuah processor yang pertama kali dapat mengenali dan menggunakan software yang digunakan untuk processor sebelumnya. 286 (1982) juga merupakan prosessor 16 bit.Prosessor ini mempunyai kemajuan yang relatif besar dibanding chip-chip generasi pertama.Frekuensi clock ditingkatkan, tetapi perbaikan yang utama ialah optimasi penanganan perintah.286 menghasilkan kerja lebih banyak tiap tik clock daripada 8088/8086.

Pada kecepatan awal (6 MHz) berunjuk kerja empat kali lebih baik dari 8086 pada 4.77 MHz. Belakangan diperkenalkan dengan kecepatan clock 8,10,dan 12 MHz yang digunakan pada IBM PC-AT (1984).

Pembaharuan yang lain ialah kemampuan untuk bekerja pada protected mode/mode perlindungan – mode kerja baru dengan “24 bit virtual address mode”/mode pengalamatan virtual 24 bit, yang menegaskan arah perpindahan dari DOS ke Windows dan multitasking. Tetapi anda tidak dapat berganti dari protected kembali ke real mode / mode riil tanpa mere-boot PC, dan sistem operasi yang menggunakan hal ini hanyalah OS/2 saat itu.

* Transistor berbentuk seperti tabung yang sangat kecil, terdapat pada Chip.
* Micron adalah ukuran dalam Micron (10 pangkat -6), merupakan kabel terkecil dalam Chip
* Clock Speed = kecepatan maksimal sebuah prosesor

Data width = lebar dari Arithmatic Logic Unit (ALU) / Unit pengelola aritmatika, untuk proses pengurangan, pembagian, perkalian dan sebagainya.

Perkembangan Komputer

Generasi Pertama

Dengan terjadinya Perang Dunia Kedua, negara-negara yang terlibat dalam perang tersebut berusaha mengembangkan komputer untuk mengeksploit potensi strategis yang dimiliki komputer. Hal ini meningkatkan pendanaan pengembangan komputer serta mempercepat kemajuan teknik komputer. Pada tahun 1941, Konrad Zuse, seorang insinyur Jerman membangun sebuah komputer, Z3, untuk mendesain pesawat terbang dan peluru kendali.

Pihak sekutu juga membuat kemajuan lain dalam pengembangan kekuatan komputer. Tahun 1943, pihak Inggris menyelesaikan komputer pemecah kode rahasia yang dinamakan Colossus untuk memecahkan kode-rahasia yang digunakan Jerman. Dampak pembuatan Colossus tidak terlalu mempengaruhi perkembangan industri komputer dikarenakan dua alasan. Pertama, colossus bukan merupakan komputer serbaguna (general-purpose computer), ia hanya didesain untuk memecahkan kode rahasia. Kedua, keberadaan mesin ini dijaga kerahasiaannya hingga satu dekade setelah perang berakhir.

Usaha yang dilakukan oleh pihak Amerika pada saat itu menghasilkan suatu kemajuan lain. Howard H. Aiken (1900-1973), seorang insinyur Harvard yang bekerja dengan IBM, berhasil memproduksi kalkulator elektronik untuk US Navy. Kalkulator tersebut berukuran panjang setengah lapangan bola kaki dan memiliki rentang kabel sepanjang 500 mil. The Harvd-IBM Automatic Sequence Controlled Calculator, atau Mark I, merupakan komputer relai elektronik. Ia menggunakan sinyal elektromagnetik untuk menggerakkan komponen mekanik. Mesin tersebut beropreasi dengan lambat (ia membutuhkan 3-5 detik untuk setiap perhitungan) dan tidak fleksibel (urutan kalkulasi tidak dapat diubah). Kalkulator tersebut dapat melakukan perhitungan aritmatik dasar dan persamaan yang lebih kompleks.

Perkembangan komputer lain pada masa kini adalah Electronic Numerical Integrator and Computer (ENIAC), yang dibuat oleh kerjasama antara pemerintah Amerika Serikat dan University of Pennsylvania . Terdiri dari 18.000 tabung vakum, 70.000 resistor, dan 5 juta titik solder, komputer tersebut merupakan mesin yang sangat besar yang mengkonsumsi daya sebesar 160kW.

Komputer ini dirancang oleh John Presper Eckert (1919-1995) dn John W. Mauchly (1907-1980), ENIAC merupakan komputer serbaguna (general purpose computer) yang bekerja 1000 kali lebih cepat dibandingkan Mark I.

Pada pertengahan 1940-an, John von Neumann (1903-1957) bergabung dengan tim University of Pennsylvania dalam usha membangun konsep desin komputer yang hingga 40 tahun mendatang masih dipakai dalam teknik komputer. Von Neumann mendesain Electronic Discrete Variable Automatic Computer(EDVAC) pada tahun 1945 dengan sebuh memori untuk menampung baik program ataupun data. Teknik ini memungkinkan komputer untuk berhenti pada suatu saat dan kemudian melanjutkan pekerjaannya kembali. Kunci utama arsitektur von Neumann adalah unit pemrosesan sentral (CPU), yang memungkinkan seluruh fungsi komputer untuk dikoordinasikan melalui satu sumber tunggal. Tahun 1951, UNIVAC I (Universal Automatic Computer I) yang dibuat oleh Remington Rand, menjadi komputer komersial pertama yang memanfaatkan model arsitektur von Neumann tersebut. Baik Badan Sensus Amerika Serikat dan General Electric memiliki UNIVAC. Salah satu hasil mengesankan yang dicapai oleh UNIVAC dalah keberhasilannya dalam memprediksi kemenangan Dwilight D. Eisenhower dalam pemilihan presiden tahun 1952.

Komputer Generasi pertama dikarakteristik dengan fakta bahwa instruksi operasi dibuat secara spesifik untuk suatu tugas tertentu. Setiap komputer memiliki program kode-biner yang berbeda yang disebut “bahasa mesin” (machine language). Hal ini menyebabkan komputer sulit untuk diprogram dan membatasi kecepatannya. Ciri lain komputer generasi pertama adalah penggunaan tube vakum (yang membuat komputer pada masa tersebut berukuran sangat besar) dn silinder magnetik untuk penyimpanan data.

Generasi Kedua

Pada tahun 1948, penemuan transistor sangat mempengaruhi perkembangan komputer. Transistor menggantikan tube vakum di televisi, radio, dan komputer. Akibatnya, ukuran mesin-mesin elektrik berkurang drastis.

Transistor mulai digunakan di dalam komputer mulai pada tahun 1956. Penemuan lain yang berupa pengembangan memori inti-magnetik membantu pengembangan komputer generasi kedua yang lebih kecil, lebih cepat, lebih dapat diandalkan, dan lebih hemat energi dibanding para pendahulunya. Mesin pertama yang memanfaatkan teknologi baru ini adalah superkomputer. IBM membuat superkomputer bernama Stretch, dan Sprery-Rand membuat komputer bernama LARC. Komputerkomputer ini, yang dikembangkan untuk laboratorium energi atom, dapat menangani sejumlah besar data, sebuah kemampuan yang sangat dibutuhkan oleh peneliti atom. Mesin tersebut sangat mahal dan cenderung terlalu kompleks untuk kebutuhan komputasi bisnis, sehingga membatasi kepopulerannya. Hanya ada dua LARC yang pernah dipasang dan digunakan: satu di Lawrence Radiation Labs di Livermore, California, dan yang lainnya di US Navy Research and Development Center di Washington D.C. Komputer generasi kedua menggantikan bahasa mesin dengan bahasa assembly. Bahasa assembly adalah bahasa yang menggunakan singkatan-singakatan untuk menggantikan kode biner.

Pada awal 1960-an, mulai bermunculan komputer generasi kedua yang sukses di bidang bisnis, di universitas, dan di pemerintahan. Komputer-komputer generasi kedua ini merupakan komputer yang sepenuhnya menggunakan transistor. Mereka juga memiliki komponen-komponen yang dapat diasosiasikan dengan komputer pada saat ini: printer, penyimpanan dalam disket, memory, sistem operasi, dan program. Salah satu contoh penting komputer pada masa ini adalah IBM 1401 yang diterima secara luas di kalangan industri. Pada tahun 1965, hampir seluruh bisnis-bisnis besar menggunakan komputer generasi kedua untuk memproses informasi keuangan.

Program yang tersimpan di dalam komputer dan bahasa pemrograman yang ada di dalamnya memberikan fleksibilitas kepada komputer. Fleksibilitas ini meningkatkan kinerja dengan harga yang pantas bagi penggunaan bisnis. Dengan konsep ini, komputer dapat mencetak faktur pembelian konsumen dan kemudian menjalankan desain produk atau menghitung daftar gaji. Beberapa bahasa pemrograman mulai bermunculan pada saat itu. Bahasa pemrograman Common Business-Oriented Language (COBOL) dan Formula Translator (FORTRAN) mulai umum digunakan. Bahasa pemrograman ini menggantikan kode mesin yang rumit dengan kata-kata, kalimat, dan formula matematika yang lebih mudah dipahami oleh manusia. Hal ini memudahkan seseorang untuk memprogram dan mengatur komputer. Berbagai macam karir baru bermunculan (programmer, analyst, dan ahli sistem komputer). Industri piranti lunak juga mulai bermunculan dan berkembang pada masa komputer generasi kedua ini.

Generasi Ketiga

Walaupun transistor dalam banyak hal mengungguli tube vakum, namun transistor menghasilkan panas yang cukup besar, yang dapat berpotensi merusak bagian-bagian internal komputer. Batu kuarsa (quartz rock) menghilangkan masalah ini. Jack Kilby, seorang insinyur di Texas Instrument, mengembangkan sirkuit terintegrasi (IC : integrated circuit) di tahun 1958. IC mengkombinasikan tiga komponen elektronik dalam sebuah piringan silikon kecil yang terbuat dari pasir kuarsa. Pada ilmuwan kemudian berhasil memasukkan lebih banyak komponen-komponen ke dalam suatu chip tunggal yang disebut semikonduktor. Hasilnya, komputer menjadi semakin kecil karena komponenkomponen dapat dipadatkan dalam chip. Kemajuan komputer generasi ketiga lainnya adalah penggunaan sistem operasi (operating system) yang memungkinkan mesin untuk menjalankan berbagai program yang berbeda secara serentak dengan sebuah program utama yang memonitor dan mengkoordinasi memori komputer….

Generasi Keempat

Setelah IC, tujuan pengembangan menjadi lebih jelas: mengecilkan ukuran sirkuit dan komponenkomponen elektrik. Large Scale Integration (LSI) dapat memuat ratusan komponen dalam sebuah chip. Pada tahun 1980-an, Very Large Scale Integration (VLSI) memuat ribuan komponen dalam sebuah chip tunggal.

Ultra-Large Scale Integration (ULSI) meningkatkan jumlah tersebut menjadi jutaan. Kemampuan untuk memasang sedemikian banyak komponen dalam suatu keping yang berukurang setengah keping uang logam mendorong turunnya harga dan ukuran komputer. Hal tersebut juga meningkatkan daya kerja, efisiensi dan keterandalan komputer. Chip Intel 4004 yang dibuat pada tahun 1971 membawa kemajuan pada IC dengan meletakkan seluruh komponen dari sebuah komputer (central processing unit, memori, dan kendali input/output) dalam sebuah chip yang sangat kecil. Sebelumnya, IC dibuat untuk mengerjakan suatu tugas tertentu yang spesifik. Sekarang, sebuah mikroprosesor dapat diproduksi dan kemudian diprogram untuk memenuhi seluruh kebutuhan yang diinginkan. Tidak lama kemudian, setiap perangkat rumah tangga seperti microwave oven, televisi, dn mobil dengan electronic fuel injection dilengkapi dengan mikroprosesor.

Perkembangan yang demikian memungkinkan orang-orang biasa untuk menggunakan komputer biasa. Komputer tidak lagi menjadi dominasi perusahaan-perusahaan besar atau lembaga pemerintah. Pada pertengahan tahun 1970-an, perakit komputer menawarkan produk komputer mereka ke masyarakat umum. Komputer-komputer ini, yang disebut minikomputer, dijual dengan paket piranti lunak yang mudah digunakan oleh kalangan awam. Piranti lunak yang paling populer pada saat itu adalah program word processing dan spreadsheet. Pada awal 1980-an, video game seperti Atari 2600 menarik perhatian konsumen pada komputer rumahan yang lebih canggih dan dapat diprogram.

Pada tahun 1981, IBM memperkenalkan penggunaan Personal Computer (PC) untuk penggunaan di rumah, kantor, dan sekolah. Jumlah PC yang digunakan melonjak dari 2 juta unit di tahun 1981 menjadi 5,5 juta unit di tahun 1982. Sepuluh tahun kemudian, 65 juta PC digunakan. Komputer melanjutkan evolusinya menuju ukuran yang lebih kecil, dari komputer yang berada di atas meja (desktop computer) menjadi komputer yang dapat dimasukkan ke dalam tas (laptop), atau bahkan komputer yang dapat digenggam (palmtop).

IBM PC bersaing dengan Apple Macintosh dalam memperebutkan pasar komputer. Apple Macintosh menjadi terkenal karena mempopulerkan sistem grafis pada komputernya, sementara saingannya masih menggunakan komputer yang berbasis teks. Macintosh juga mempopulerkan penggunaan piranti mouse. Pada masa sekarang, kita mengenal perjalanan IBM compatible dengan pemakaian CPU: IBM PC/486, Pentium, Pentium II, Pentium III, Pentium IV (Serial dari CPU buatan Intel). Juga kita kenal AMD k6, Athlon, dsb. Ini semua masuk dalam golongan komputer generasi keempat.

Seiring dengan menjamurnya penggunaan komputer di tempat kerja, cara-cara baru untuk menggali potensial terus dikembangkan. Seiring dengan bertambah kuatnya suatu komputer kecil, komputerkomputer tersebut dapat dihubungkan secara bersamaan dalam suatu jaringan untuk saling berbagi memori, piranti lunak, informasi, dan juga untuk dapat saling berkomunikasi satu dengan yang lainnya. Komputer jaringan memungkinkan komputer tunggal untuk membentuk kerjasama elektronik untuk menyelesaikan suatu proses tugas. Dengan menggunakan perkabelan langsung (disebut juga local area network, LAN), atau kabel telepon, jaringan ini dapat berkembang menjadi sangat besar.

Generasi Kelima

Mendefinisikan komputer generasi kelima menjadi cukup sulit karena tahap ini masih sangat muda. Contoh imajinatif komputer generasi kelima adalah komputer fiksi HAL9000 dari novel karya Arthur C. Clarke berjudul 2001:Space Odyssey. HAL menampilkan seluruh fungsi yang diinginkan dari sebuah komputer generasi kelima. Dengan kecerdasan buatan (artificial intelligence), HAL dapat cukup memiliki nalar untuk melakukan percapakan dengan manusia, menggunakan masukan visual, dan belajar dari pengalamannya sendiri.

Walaupun mungkin realisasi HAL9000 masih jauh dari kenyataan, banyak fungsi-fungsi yang dimilikinya sudah terwujud. Beberapa komputer dapat menerima instruksi secara lisan dan mampu meniru nalar manusia. Kemampuan untuk menterjemahkan bahasa asing juga menjadi mungkin. Fasilitas ini tampak sederhana. Namun fasilitas tersebut menjadi jauh lebih rumit dari yang diduga ketika programmer menyadari bahwa pengertia manusia sangat bergantung pada konteks dan pengertian ketimbang sekedar menterjemahkan kata-kata secara langsung.

Banyak kemajuan di bidang desain komputer dan teknologi semkain memungkinkan pembuatan komputer generasi kelima. Dua kemajuan rekayasa yang terutama adalah kemampuan pemrosesan paralel, yang akan menggantikan model non Neumann. Model non Neumann akan digantikan dengan sistem yang mampu mengkoordinasikan banyak CPU untuk bekerja secara serempak. Kemajuan lain adalah teknologi superkonduktor yang memungkinkan aliran elektrik tanpa ada hambatan apapun, yang nantinya dapat mempercepat kecepatan informasi.

Jepang adalah negara yang terkenal dalam sosialisasi jargon dan proyek komputer generasi kelima. Lembaga ICOT (Institute for new Computer Technology) juga dibentuk untuk merealisasikannya. Banyak kabar yang menyatakan bahwa proyek ini telah gagal, namun beberapa informasi lain bahwa keberhasilan proyek komputer generasi kelima ini akan membawa perubahan baru paradigma komputerisasi di dunia. Kita tunggu informasi mana yang lebih valid dan membuahkan hasil.

Isi CPU

Central Processing Unit jika diterjemahkan dalam bahasa Indonesia berarti Unit Pengolah Pusat. Di dalam CPU terdapat berbagai macam perangkat keras yang diperlukan untuk menjalankan komputer. Nah untuk mengetahui perangkat keras apa saja yang biasanya terdapat pada CPU, silahkan baca artikel ini selanjutnya.

Harddisk

Harddisk drive (HDD) merupakan tempat menyimpan data pada CPU. Jika hardisk dibuka, maka di dalamnya terlihat piringan logam sebagai tempat menulis data. Kecepatan putarannya bervariasi. Ada yang 5400 putaran per menit bahkan ada yang sampai 7200 putaran per menit. Kemampuan sebuah hardisk biasanya ditentukan oleh banyaknya data yang bisa disimpan. Besarnya bervariasi, ada yang 1,2 Gigabyte (GB) hingga 80 GB. Satu GB sama dengan 1000 Megabyte, sedangkan 1 Megabyte sama dengan 1000 Kilobyte. Sangat besar kan ? Kita bisa menyimpan semua data kita pada hardisk ini.

A.Definisi Hardisk

Hardisk merupakan Hardware tempat penyimpanan sekunder dimana data disimpan sebagai pulsa magnetik pada piringan metal yang berputar yang terintegrasi.Hardisk juga dapat disebut memory Permanen karena dapat tetap menyimpan data walaupun aliran listrik pada computer telah mati,berbeda dengan RAM yang tidak dapat menyimpan data secara permanent karena jika aliran listrik mati,data-data nya pun tidak dapat disimpan.Hardisk dapat bersifat Input maupun Output. Hardisk Bersifat Input apabila hardisk mentransfer data ke Hardisk lainya atau ke flashdisk. Hardisk juga dapat bersifat Output apabila ada data yang dikirimkan ke hardisk ini.

B.Sejarah Hardisk

Harddisk pada awal perkembangannya didominasi oleh perusahaan raksasa yang menjadi standard komputer yaitu IBM. Ditahun-tahun berikutnya muncul perusahaan-perusahaan lain antara lain Seagate, Quantum, Conner sampai dengan Hewlet Packard’s di tahun 1992. Pada awalnya teknologi yang digunakan untuk baca/tulis, antara head baca/tulisnya dan piringan metal penyimpannya saling menyentuh. Tetapi pada saat ini hal ini dihindari, dikarenakan kecepatan putar harddisk saat ini yang tinggi, sentuhan pada piringan metal penyimpan justru akan merusak fisik dari piringan tersebut. Berikut ini Sejarah Singkatnya:

*
1. Punched Card
Data storage tertua yang diketahui adalah punch card, diciptakan pada tahun 1725 oleh Basile Bouchon. Pada saat itu penggunaannya adalah untuk menyimpan data pola tenun kain dengan cara melubangi gulungan kertas.

2. Selectron Tube Pada tahun 1946 RCA mulai membuat Selectron Tube yang merupakan bentukmemori pertama berbasis komputer dengan ukuran panjang sekitar 30 cmdengan kapasitas 4 Kb, memori ini tidak berumur panjang dipasaran karena harganya terlalu mahal.
3.

Magnetic tape merupakan media penyimpanan data yang biasanya digunakan untuk komputer jenis mini ataupun mainframe.
4.

Floppy Disk Pada tahun 1969 disket pertama kali diperkenalkan dengan ukuran 20 cmmampu menampung data 80 Kb tetapi hanya untuk sekali pakai, 4 tahunkemudian dengan ukuran yang sama, ditingkatkan lagi kemampuannya menjadi 256 Kb dan bisa dipakai berulang-ulang. Tahun demi tahun ukurandisket semakin kecil dan kemampuan menyimpan datanya semakin besar pula.Namun Pada saat sekarang,diskete sudah mulai jarang digunakan karena MuncuLnya “Hardisk”
5.

Hardisk Pada 13 September 1956 IBM memperkenalkan Komputer model terbarunya IBM 305 RAMAC,pada saat itu merupakan revolusi karena IBM 305 RAMAC disertai dengan Hardisk pertama di dunia dengan kapasitas yang luar iasa yaitu 4,4 MB.Hardisknya sendiri terdiri dari 50 keping piringan berukuran 60 cm. IBM menyewakan komputer ini seharga Rp. 30 jutaan perbulan. Hardisk masih terus dipakai sampai sekarang dengan ukuran yang lebihkecil dan dengan kapasitas yang tentu saja jauh lebih besar.

C. Kapasitas

Kapasitas harddisk pada saat ini sudah mencapai orde ratusan GB bahkan TB(Terra Byte). Hal ini dikarenakan teknologi bahan yang semakin baik, kerapatan data yang semakin tinggi. Teknologi dari Western Digital saat ini telah mampu membuat harddisk 200GB dengan kecepatan 7200RPM. Sedangkan Maxtor dengan Maxtor MaxLine II-nya yaitu harddisk berukuran 300GB dengan kecepatan 5400RPM. Beriringan dengan transisi ke ukuran harddisk yang lebih kecil dan kapasitas yang semakin besar terjadi penurunan dramatik dalam harga per megabyte penyimpanan, membuat hardisk kapasitas besar tercapai harganya oleh para pemakai komputer biasa.

Floppy Disk Drive

Floppy disk drive adalah alat untuk membaca atau menulis pada sebuah disket. Beberapa tahun lalu, masih banyak orang yang menggunakan floppy disk berukuran 5 1/4 inchi (disket besar), yang menyimpan data sebanyak 700 Kilobyte. Saat ini disket besar sudah digantikan dengan disket kecil yang berukuran (3 1/2 inchi) dengan kapasitas menyimpan data sebesar 1,4 Megabyte.

Cara kerja floppy disk hampir sama dengan harddisk. Plat bundar berisi data dalam disket akan diputar oleh motor dalam floopy disk drive. Sebuah magnet akan membaca atau menulis data pada disket itu.

CD-ROM drive

Fungsinya adalah untuk membaca data dari sebuah Compact Disc (CD). ROM adalah singkatan dari Read Only Memory yang artinya penyimpan data yang hanya bisa dibaca. Jadi CD-ROM hanya bisa digunakan untuk membaca data, tidak dapat digunakan untuk menyimpan data. Namun saat ini, ada alat serupa yang dapat digunakan untuk menulis / menyimpan data ke sebuah CD. Namanya CD-RW (CD Read and Write atau CD baca dan tulis). Cara kerja CD-ROM maupun CD-RW sama dengan cara kerja harddisk atau floppy disk drive. Bedanya, bagian yang diputar adalah kepingan CD. Alat pembacanya juga bukan head magnet tetapi sinar laser yang berkekuatan kecil.

Prosesor

Prosesor berfungsi untuk memproses semua perhitungan yang harus dilakukan oleh komputer. Kekuatan prosesor diukur dari frekuensinya, seperti 550 MHz (Mega Hertz) sampai saat ini sudah ada yang mencapai 1,4 GHz (Giga Hertz).

Jika komputer dihidupkan, maka prosesor akan langsung bekerja dan cepat naik suhunya. Oleh karena itu setiap prosesor saat ini sudah dilengkapi dengan besi penyalur panas (heat sink) dan kipas pendingin. Saat ini prosesor yang banyak digunakan adalah Intel, AMD dan IBM.

Memori

Memori dikenal juga dengan sebutan RAM (Random Acces Memory). Gunanya adalah untuk penyimpanan data sementara sewaktu digunakan oleh prosesor. Jika komputer di matikan, maka data di RAM akan hilang. Kecepatan membaca data RAM ini lebih cepat jika dibandingkan dengan Harddisk.

Kartu Grafis (VGA Card)

Kartu VGA (Video Graphic Adapter) berguna untuk menerjemahkan output (keluaran) komputer ke monitor. Untuk menggambar / design graphic ataupun untuk bermain game, kita perlu VGA yang tinggi kekuatannya. Saat ini ada VGA dengan memori 16, 32 hingga 128 Megabyte. Jenisnya yang terkenal adalah GeForce buatan perusahaan Nvidia.

Kartu Suara (Soundcard)

Perangkat ini berguna untuk mengeluarkan suara. Kalau kita sedang mendengar musik ataupun bermain game, perangkat ini sangat bermanfaat. Suaranya bisa stereo, surround (berputar) bahkan suara 3 dimensi, sehingga kita seolah-olah berada ditempat kejadian. Tetapi perangkat ini kurang lengkap jika tidak ada speaker. Karena itu kita perlu menghubungkan speaker dengan soundcard yang telah terpasang dengan sebuah kabel yang disambung langsung ke soundcard. game

Motherboard

Motherboard atau disebut juga dengan Papan Induk berfungsi untuk tempat semua alat utama CPU yang telah disebutkan di atas. Bentuk motherboard seperti sebuah papan sirkuit elektronik.

Motherboard merupakan tempat berlalu lalangnya data. Motherboard menghubungkan semua peralatan komputer dan membuatnya bekerja sama sehingga komputer berjalan dengan lancar.

Pengelompokkan Komputer

1. Berikut ini beberapa pengertian komputer

1. Komputer adalah serangkaian ataupun sekelompok mesin elektronik yang terdiri dari ribuan bahkan jutaan komponen yang dapat saling bekerja sama, serta membentuk sebuah sistem kerja yang rapi dan teliti. Sistem ini kemudian dapat digunakan untuk melaksanakan serangkaian pekerjaan secara otomatis, berdasar urutan instruksi ataupun program yang diberikan kepadanya. sumber : http://medicalzone.org/fuldfk/viewtopic.php?t=2744

1. Komputer adalah hasil dari kemajuan teknologi elektronika dan informatika yang berfungsi sebagai alat bantu untuk menulis, menggambar, menyunting gambar atau foto, membuat animasi, mengoperasikan program analisis ilmiah, simulasi dan untuk kontrol peralatan. sumber : http://www.total.or.id/info.php?kk=computer

1. Komputer adalah alat pendukung untuk meringankan pekerjaan manusia dalam proses pemecahan berbagai masalah, karena alat tersebut mempunyai kecepatan operasional, kemampuan menyimpan memori, dapat dipercaya, dan menghemat biaya. sumber : Buku TIK Kelas XI terbitan Widya Utama

2. Penggolongan Komputer

Komputer dapat diklasifikasikan berdasarkan data yang diolah, kemampuan komputer, kapasitas dan ukurannya, dan bidang masalahnya.

2.1. Berdasarkan data yang diolah, komputer diklasifikasikan menjadi tiga, yaitu :

1. Komputer analog

Merupakan suatu jenis komputer yang bisa digunakan untuk mengolah data kualitatif. Data yang ada bukan merupakan simbol, tetapi masih merupakan suatu keadaan. Seperti misalnya: keadaan suhu ataupun kelembaban udara, ketinggian ataupun kecepatan adalah merupakan suatu keadaan yang oleh komputer kemudian ditetapkan sehingga menjadi suatu ukuran.
Analog banyak dipakai dipabrik-pabrik yang tujuannnya untuk mengontrol ataupun menghasilkan suatu produk. Pengertian komputer analog lebih mendekati dengan robotic ataupun mesin otomatis.

2. Komputer digital

Merupakan suatu jenis komputer yang bisa digunakan untuk mengolah data yang bersifat kwantitatif (sangat banyak jumlahnya). Data dari digital komputer biasanya berupa simbol yang memiliki arti tertentu, misalnya: simbol aphabetis yang digambarkan dengan huruf A s/d Z ataupun a s/d z, simbol numerik yang digambarkan dengan angka 0 s/d 9 ataupun simbol-simbol khusus, seperti halnya: ? / + * & !.

3. Komputer hibrid

Merupakan jenis komputer yang bisa digunakan untuk mengolah data yang bersifat kuantitatif ataupun kualitatif. Hibrid komputer juga bisa dikatakan sebagai gabungan dari analog dan digital komputer. Komputer jenis ini banyak digunakan oleh pelbagai rumah sakit yang digunakan untuk memeriksa keadaan tubuh dari pasien, yang pada akhirnya, komputer bisa mengeluarkan pelbagai analisa yang disajikan dalam bentuk gambar, grafik ataupun tulisan.

2.2. Berdasarkan kemampuannya, komputer diklasifikasikan menjadi tiga, yaitu :

1. Small scale computer

Komputer jenis ini mempunyai kapasitas antara 64 Kb sampai 8 Mb dan dapat menangani puluhan terminal komputer yang terpisah dari pusat komputer.

2. Medium scale computer

Komputer jenis ini mempunyai kapasitas antara 512 Kb sampai 8 Mb dan dapat menangani ratusan terminal komputer yang terpisah dari pusat komputer.

3. Large scale computer

Komputer jenis ini mempunyai kapasitas antara 512 Kb sampai 8 Mb, namun komputer ini mempunyai kecepatan yang lebih tinggi.

2.3. Berdasarkan kapasitas dan ukurannya, komputer diklasifikasikan menjadi tiga, yaitu :

1. Microcomputer (Personal Computer/ PC)

Pada awalnya, komputer jenis ini diciptakan untuk memenuhi kebutuhan per-orangan (personal). Kebutuhan per-orangan dalam hal menyimpan ataupun memproses data, tentunya tidak sebanyak kebutuhan sebuah perusahaan. Dikarenakan hal tersebut, kemampuan dan teknologi yang dimiliki oleh Personal Komputer pada awalnya memang sangat terbatas.

Dengan keunggulan harganya relatif murah, bentuknya kecil dan teknologi yang dimiliki diangap sudah memadai, maka personal komputer menjadi begitu cepat populer. Personal komputer kini tidak hanya digunakan oleh perorangan tetapi pada akhirnya banyak digunakan oleh perusahaan untuk menyelesaikan pelbagai masalah yang ada diperusahaan.

a. Notebook/ Laptop

Merupakan jenis PC yang dapat dijinjing dan bisa digunakan di mana pun karena dilengkapi dengan portable battery-power, sehingga tanpa adanya listrik-pun note-book masih bisa dioperasikan

b. PDA/ Pocket Computer

Merupakan jenis PC yang seukuran saku yang dapat dibawa ke mana pun.

2. Midrange computer atau komputer mini

Komputer mini mempunyai kemampuan berapa kali lebih besar jika dibanding dengan personal komputer. Hal ini disebabkan karena micro-pocessor yang digunakan untuk memproses data memang mempunyai kemampuan jauh lebih unggul jika dibanding dengan micropocessor yang digunakan pada personal komputer. Ukuran pisiknya dapat sebesar almari kecil.
Komputer mini pada umumnya dapat digunakan untuk melayani lebih dari satu pemakai (multi user). Dalam sistem multi user ini, pada akhirnya personal komputer banyak digunakan sebagai terminal yang berfungsi untuk memasukkan data. Contoh Komputer mini: IBM AS-400

3. Mainframe computer atau komputer mini

Ciri utama yang membedakan pengertian antara mini komputer dengan mainframe adalah, mainframe memiliki processor lebih dari satu. Dengan demikian, dari segi kecepatan proses mainframe jauh lebih cepat jika dibanding dengan mini komputer.

Mainframe secara umum membutuhkan ruangan khusus dimana faktor lingkungan yang terdiri dari temperatur, kelembaban udara ataupun gangguan asap dapatlah dimonitor. Hal ini disebabkan karena nilai komputer serta nilai dari informasi yang tersimpan didalamnya sangatlah mahal. Ruangan yang ada biasanya juga dilengkapi dengan pelbagai sistem pengamanan elektronik.

4. Super Computer

Sesuai dengan namanya, super komputer memiliki ciri khas, yaitu kecepatan proses yang tinggi serta memiliki kemampuan menyimpan data yang jauh lebih besar apabila dibanding dengan main-frame. Harga super komputer sangatlah besar dan mahal. Salah satau contoh super komputer adalah Cray-2. Pengguna super komputer biasanya negara-negara yang sudah maju ataupun perusahaan-perusahaan yang sangat besar, seperti misalnya industri pesawat terbang Nurtanio.
Dikarenakan kemampuannya yang sangat luar biasa dan diantaranya memiliki kemampuan untuk membaca/menyadap pelbagai data dari satelit, maka untuk pembelian sebuah super komputer harus mendapat persetujuan secara langsung dari presiden. Permintaan Indonesia pernah ditolak oleh presiden Amerika ketika Nurtantio menginginkan untuk membeli sebuah super komputer dari Amerika

2.4. Berdasarkan bidang masalahnya, komputer diklasifikasikan menjadi dua, yaitu :

1. Special purpose computer

Komputer jenis ini hanya dapat menyelesaikan satu masalah saja, sehingga hanya program tertentu saja yang dimaksudkan dalam komputer ini. Sebagai contoh, komputer yang digunakan pada kilang minyak.

2. General purpose computer

Komputer jenis ini dapat menyelesaikan berbagai macam masalah. Komputer yang termasuk dalam jenis ini, yaitu komputer digital dan analog, tetapi yang umum digunakan yaitu komputer digital. Sebagai contoh, komputer untuk pendidikan dan komputer untuk bisnis.

Cara Mengatasi Troubleshooting PC Lambat

Para user komputer sering menemukan keluhan yang cukup membosankan, yaitu komputernya menjadi lambat. Terkadang saking stressnya
mungkin langsung mengambil solusi untuk menginstall ulang saja, daripada repot mencari permasalahannya, dan itu justru akan memakan waktu lebih banyak.
Beberapa hal yang harus diperhatikan untuk menanggapi masalah “komputer yang lambat!”
1. Spyware dan Virus merupakan salah satu penyebab pc yang lambat, karena yang paling mudah menyusupi dan banyak user yang berinteraksi dengannya (secara tidak langsung), spyware berasal dari banner-banner dan iklan-iklan di suatu halaman web yang mulai beraksi saat kita mengakses halaman / banner tersebut melalui sebuah browser yang memiliki celah keamanan yang tidak bagus, sehingga spyware ini sangat dekat dengan IE.
Beberapa cara untuk menghapus spyware:
1. Indentifikasi dan analisa process yang sedang berjalan dengan windows task manager.
2. Identifikasi dan non aktifkan service yang bersangkutan melalui management console.
3. Identifikasi dan non aktifkan service yang ada di startup item dengan sistem configuration utilty.
4. Cari dan hapus entry di registry yang ada pada startup.
5. Identifikasi dan hapus file yang mencurigakan.
6. Install dan gunakan spyware detection dan removal.
2. Processor Overheating. Kebanyakan prosesor mudah menghasilkan panas, sehingga membutuhkan pendingin khusus dan jenis fan khusus, sehingga pada saat temperatur prosesor meningkat melampaui batas, sistem akan melambat dan proses akan berjalan lambat. Kipas prosesor yang gagal disebabkan karena :
1. Debu yang menghambat perputaran kipas secara smooth.
2. Fan motor rusak.
3. Bearing fan ada yang doll sehingga fan “jiggling”.
Jiggling adalah jika fan yang sedang berputar ada bunyi krek-krek secara cepat disebabkan bearing fan sudah mulai doll.
3. Ram yang buruk. Beberapa situasi dapat juga karena pengaruh ram yang buruk, hal ini
dikarenakan oleh:
1. RAM timing lebih lambat dari spesifikasi mesin yang optimal.
2. RAM yang memiliki nilai minor hanya bisa dilihat setelah melalui beberapa test.
3. RAM terlalu panas.
4. Harddisk yang fail. Jika harddisk sering mengalami failure, ini juga akan memperburuk performa komputer, dan jenis fail ini banyak penyebabnya, bisa sifatnya mekanis, elektronik, bahkan firmwarenya yang tidak update, harddisk ini akan menyebabkan:
1. Akses time yang lambat.
2. Jumlah bad sector yang terus meningkat saat di scandisk.
3. Ada bluescreen yang tidak terjelaskan.
4. Gagal Boot.
5. Bios Settings. Biasanya bios yang belum dicustom settingnya akan mengalami proses perlambatan beberapa detik, khususnya pada saat booting, untuk itu kita harus mengcustom bios setting agar performa kerja proses boot bisa dipercepat, secara umum settingan bios yang harus diperhatikan adalah:
1. Boot langsung ke harddisk.
2. Disable IDE drive yang tidak terpakai.
3. Set speed latency RAM.
4. Matikan IO / IRQ perangkat onboard yang tidak dipakai.
5. Gunakan Fast POST.
6. Disk type/controller compatibility. Biasanya motherboard sekarang sudah memiliki kontroler yang baik untuk paralel ATA disk, namun kita harus memperhatikan kabel IDE nya, karena kabel ini memiliki beberapa spesifikasi tertentu, ada yang udma 33, 66, dan 100, kalau kita lihat secara fisik, bentuk kabelnya memiliki serabut yang halus halus dan banyak, sedangkan yang udma 33 serabutnya sedikit, jadi gunakanlah kabel yang memiliki spesifikasi yang tinggi untuk disk kita.
7. Windows Services, beberapa service yang harus diperhatikan dan dimatikan jika kita tidak membutuhkanya adalah:
1. FTP 2. Indexing Service
2. Remote Registry
3. Telnet
4. Remote Access
5. Remote Desktop
6. Automatic Update
8. Process yang invisible. Terkadang, tanpa kita ketahui ada saja program yang berjalan
di memory, padahal kita sudah tidak menggunakannya lagi atau bahkan kita sudah menguninstallnya namun programnya masih ada yang berjalan, untuk itu kita harus memperhatikan process apa saja yang sedang berlangsung di komputer kita dengan melihat task manager, dan kita bisa end taskkan atau kill, lalu kita bisa hapus .exe nya.
9. Disk Fragmentation Sebagaimana karakteristik file dalam sebuah komputer pasti mengalami proses file tersebut di add, di edit, atau di hapus, hal tersebut dapat menyebabkan fragmentasi di beberapa areal sektor harddisk, untuk itu kita perlu merapikan data di komputer kita, yaitu dengan mendefragnya. jika kita menggunakan windows xp, kita bisa menggunakan defrag.exe dan meletakannya di schedule agar dapat berjalan pada waktu yang kita tentukan.
10. Background applications. Kalau kita perhatikan di systray saat kita klik arrow kirinya akan berderetlah icon yang banyak, semakin banyak icon yang terpasang di systray itu menyebabkan komputer semakin lambat merespons proses, karena memory banyak yang terpakai untuk proses itu, sehingga untuk itu kita perlu mematikannya atau menonaktifkan yang tidak diperlukan yaitu dengan mengakses registry:
HKEY_ LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run dan
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce
Hapuslah key yang tidak diperlukan.




@_@"~

Jumat, 13 November 2009

SUSAH NYA MENCARI ILMU

SEBELUM NYA SAYA UCAPKAN ASSALAMUALAIKUM WR.WB
BISMILLAH
SEBELUM NYA SAYA UCAPKAN TERIMA KASIH ATAS SEMUA NYA,PENGALAMAN SAYA INI SAYA TULIS D BLOG KARENA SAYA GAK PUNYA TEMAN CURHAT
hal ini berawal dari tugas sekolah yang mengharuskan setiap siswa (i) nya untuk melakukan praktek instalasi windows XP (dual booting) di lab komputer kami,,,,,
waktu itu kalo gak salah sih minggu pagi,nah di mulai lah praktek itu d lab depan,
awal yang menyakitkan memang pagi2 saya udah salah kostum datang ke skul nya,semua nya pada pake baju praktek saya nggak,soal nya saya khan dari RUMAH skul saya ada di LUAR KOTA dan perlu kalian tahu perjalanan dari RUMAH ke SKUL itu membutuhkan waktu sekitar SATU JAM (lumayan jauh khan) dan memang kesalahan saya saat itu kenapa saya gak memperhatikan papan pengumuman kalo praktikum nya di harus kan memakai baju praktek dan saya langsung di suruh pulang ganti baju (saya mikir nya sih kalo hari minggu itu bebas2 aja mau pakai baju apa,karena saya kan gak liat pengumuman)!!!!
kebetulan yang mengawasi kegiatan praktek pagi itu adalah guru kami sendiri,,,nama nya "SI FULLAN",dia itu terkenal suka berkata-kata kasar kepada murid nya,mungkin ada tujuan tertentu mengapa dia menjadi seperti itu,tapi jujur saja ya ,dengan sifat beliau yang seperti itu, menimbulkan kesan takut bertanya kepada beliau bagi kalangan kami (siswa-siswinya),,,langsung aja saya di usir
FULLAN : heh kamu,kenapa kamu gak pakai baju praktek,orang semua nya pakai baju praktek???
ME : (dengan wajah yang bingung dan sangat takut aku beranikan diri untuk menjawab
prtanyaan guru saya itu)" wah saya gak tau pak"
FULLAN : emang kemaren kamu gak liat papan pengumuman ya ???? (dengan nada tinggi)
ME : "gak pak", ya sudah kalo gitu saya pulang ganti baju (dengan perasaan jengkel)
FULLAN : gak usah pulang kamu,nanti malah lama nunggu kamu,gak mulai-mulai kegiatan nya , maka nya jangaan kamu pikir sekolah itu kayak milik kamu,jadi makai baju sesuka hatu kamu aja (masih dengan nada tinggi )
Me : (langsung berbalik badan dan mengambil motor dan berkata )"saya pulang saja lah pak )
perdebatan pun selesai,lalu saya datang lagi ke skul dengan memakai baju praktikum,lalu duduk dan langsung mengerjakan tugas instalasi tersebut,nah satu lagi kejadian mengerikan yang aku alami,awal nya kan kata SI FULLAN itu boleh membawa dan membuka buku catatan,nah berhubung saya tidak terlalu hapal langkah-langkah nya,saya buka aja buku catatan saya,eh ternyata BUKU SAYA MALAH DI LEMPAR SAMA SI FULLAN dan dia pun berkata begini :
FULLAN :enak aja kamu buka-buka buku,kalau begini terus otak kamu itu gak nyampe-nyampe,yang bolehin kamu buka buku itu siapa ? (dan kata-kata kasar lain nya saya lupa dia ngomong apa aja )
DAN PERLU KALIAN KETAHUI SAAT ITU MEMANG YANG BUKA BUKU BUKAN SAYA AJA,TAPI SEMUA SISWA,
(dalam hati kami berkata,kata nya boleh buka buku saat praktek,koq sekarang malah ndak bole,bingung)

NOTE :
( dan bisa saya ambil kesimpulan bahwa dari cerita di atas kita itu harus disiplin dan tepat waktu,,,,,,selain itu kita harus tetap sabar menghadapi karakter guru kita )



hmmmmm ada lagi pengalaman saya tentang susah nya mencari ilmu DENGAN GURU YANG BERBEDA:


berawal ketika saya mulai bekerja di sebuah warnet dekat rumah saya,,,,, saya bekerja disitu bukan untuk mencari uang atau apa tapi saya mencari tambahan ilmu untuk bekal saya magang nanti
nah pemilik warnet nya sangat baik hati sama saya
pemilik warnet itu berpesan kepada saya kalau "KITA ITU HARUS JUJUR DALAM MENGERJAKAN SESUATU,KARENA KEPERCAYAAN ITU SUSAH DI DAPAT,KALAU KITA TIDAK JUJUR MAKA KEPERCAYAAN SESEORANG ITU AKAN HILANG,DAN APABILA KEPERCAYAAN ITU SUDAH HILANG KEPADA KITA,KITA AKAN SUSAH MENDAPATKAN NYA LAGI"

nah hari pertama sampai hari ke 10 saya bekerja memang tidak ada kendala apa2,
LALU DENGAN BANGGA NYA SAYA CERITAKAN KEPADA TEMAN2 DI SKUL KALO SAYA SUDAH KERJA DI NET,YHA SAMBIL CARI2 PENGALAMAN KERJA BUAT MAGANG NANTI,DAN SETELAH SAYA CERITA MERKA BANYAK COMMENT KEPADA SAYA ADA YANG ENAK DI DENGAR DAN ADA YANG GAK ENAK DI DENGAR,:

INI COMMENT YANG ENAK DI DENGAR :

TMN CO 1 : WAH BAGUS YU,JADILAH CE YANG MANDIRI
TMN CE 1: WAH ENAK DONK YU,UDA NET GRATIS,DAPATT GAJIH

INI COMMEMT YANG GAK ENAK DI DENGAR :

TMN CO 2 : HALAH YANG DI JAGA NET ORANG JUGA,COBA KAYA DIA,DIA JAGA NET,TAPI YANG DI JAGA NET DIA SENDIRI !!!
TMN CE 2 : IAH COBA KAYAK SAYA. . . . .

MENDENGAR SEPERTI ITU SAYA DIAM SAJA,EMANG SAYA BELOM MAMPU UNTUK BIKIN USAHA NET SENDIRI,NANTI KALAU SAYA UDAH MAMPU PASTI SAYA BUKTIKAN KALAU SAYA JUGA BISA SEPERTI MEREKA,,,
TAPI INI KAN BARU AWAL SAJA,SEDIH SIH EMANG DENGAR COMMENT SEPERTI ITU
TAPI APA LAH DAYA KU,SAYA GAK PUNYA APA2 UNTUK DI BANGGAKAN BUKAN SEPERTI PAPAH SAYA SUDAH PUNYA PERUSAHAAN SENDIRI,KALO SAYA MAH GAK PUNYA APA2,ITU SEMUA KAN MASIH HARTA PAPAH,BUKAN PUNYA SAYA


HARI SELANJUT NYA semua berjalan seperti biasa,namun ketika hari ke 11 saya bekerja mulai lah terjadi kerusakan-kerusakan fatal yang mengharuskan semua komputer yang ada di warnet itu harus di instal ULANG semua,,,,
nah ibu pemilik warnet itu bingung harus di apakan semua ini,,
lalu dia bertanya kepada saya
ibu pemilik warnet : gimana nih pada rusak semua , katanya sih harus instal ulang ,KAMU bisa gak bantu ibu?
ME : bisa aja sih bu,tapi ayu kan belum ahli dalam bidang tersebut,jadi SAYA gak bisa mengerjakan nya sendiri,lalu SAYA butuh bantuan TMN2 SAYA bu,gimana ?
ibu pemilik warnet : hmmm boleh aja ,sekalian KM belajar,hmmm berhubung di warnet sini tekhnisi nya jauh,(susah di panggil bila di perlukan)gimana kalo guru KAMU aja yang jadi tekhnisi di net sini mau gak dia nya ? minta nope nya boleh gak ?
Me : boleh banget bu,(langsung aku beri)nanti aKU tanya dulu ya bu ama DIA nya,mau pa gak nya dia, , , ,
ibu pemilik warnet : iah

malam nya
aku hubungi TMN KU untuk instal ulang SO yang ada d server,TMN KU pun datang,langsung saja d kerjakan ,nah ternyata billing nya juga harus di instal ulang,bahkan di ganti dengan billing manual untuk sementara,samA2 GURU SAYA juga ngerjakan nya,merka ngerjakan nya ampe larut malam aku sih gak,aku jam 11 malem udah pulang duluan karena aku capek,

besok hari nya langsung ku temui GURU KU dan langsung aku ke pokok permasalahan
me : mau gak jadi tekhnisi net di tempat aku kerja ????
GURU : boleh aja ,tapi tar kalo masalah kecil2 aja KMU aja yang tanganin nanti kalo uda fatal baru panggil aku,ok ?
me : ok ,o ia,malam ini bisa gak bantu instal ulang semua pc di net ?
GURU : hu uh , bisa aja nanti TMN2 MU YG DATANG DULUAN,aku dateng nya agak malem dikit karena masih banyak urusan,ok ?
me : ok kak,nanti bilangin ama MEREKA kalo uda mau ke net,sms aku dolo,soal nya kunci net nya aku yang pegang,gak bisa masuk kalo gak ambil kuncii ama aku,
GURU : ok , sip


malam nya



jam 20.30an 2 ORANG TMN CO KU dateng ke net dan ambil kunci ke aku,dan langsung kami menuju ke net,dan langsung mengerjakan tugas masing2

TMN CO 1 : km beli dvd dolo dah 2 yah nh duit nya??
me : oke deh,aku beli ke moneta yha,ni aku mau jemput TMN CE KU dolo buat temenin aku beli nya
TMN 1 : oke deh,jangan lama2

aku pun pergi beli dvd nya ama TMN KU YG CE SATU,,,,,,
gak beberapa lama aku balik lagi ke net,buat ngasih dvd nya,
udah dan setelah itu kami mengerjakan tugas masing2 lagi,gak beberapa lama TMN KU YG NEMENIN BELI DVD ITU pulang,lalu GURU KU datang,dan OP satu nya juga datang,semakin malam semakin giat kami bekerjaaa karena takut kemalaman,lalu si TMN KU YG KU ANTAR PULANG TD dateng lagi,ikut bantu2,nah saat itu berarti ada 4 laki2 dan 2 cewek nya dalam net itu yang bekerjA,
lalu sekitar jam 11 lewat TMN KU YG CE ITU minta anter pulang sama saya,dan langsung saya anter pulang,lalu saya balik lagi ke net,rencana nya sih mau ambil helm aja,tapi ternyata asik liat mereka kerja,jadi saya teruskan aja kerjaan saya,nahhhh ternyata lagi asik2 kerja,saya di tegur ama tetangga sebelah di suruh pulang udah jam setengah satu malem kata nya,(berhubung kami kerja nya sambil belajar,jadi proses kerja nya agak lambatdan gak kerasa udah jam setengah satu)
lalu saya langsung pulang saat itu,dengan hati yang agak tersinggung dan malu sama yang negur,ama teman2,+ mama +ma ibu pemilik net nya, walaupn saya benar2 niat nya ingin belajar sekaligus memperbaiki net nya,


note :
(dari kejadian di atas ,banyak pelajaran yang bisa saya ambil,yaitu,kalau ce itu gak baek keluar malem2,walaupun niat nya baik,inti nya ya tetap sabar aja lah,PENGALAMAN ITU MEMANG GURU TERBAIK DALAM HIDUP)
bisa saya simpulkan dari 2 kejadian traggis di atas BAHWA CARI ILMU ITU SUSAH,,,,BUKTI NYA SAYA MAU CARI ILMU AJA AMPE DI LEMPAR2 BUKU+DI TEGUR AMA TETANGGA SEBELAH WARNET,DI POJOK KAN TEMAN2 SAYA,YAH HARUS KUAT2 MENTAL SAJALAH,)


PISSS YA ALL !!! GAK MAKSUD MACEM2 LOH SAYA !
TAPI ITU PENGALAMAN SAYA YANG BARUSAN TERJADIIIIII

Sabtu, 07 November 2009

DATA : D ku hilang ,gimana nih ?

Trik ini berlaku apabila anda hobi utak-atik partisi, install sistem Windows, Linux..tapi tiba-tiba kecelakaan terjadi, partisi di hardisk anda hilang!! mungkin anda terlalu ceroboh, tidak hati-hati menggunakan program fdisk atau cfdisk.

Kalau ini memang terjadi, tidak perlu panik, tarik nafas yang dalam. INGAT!!Apabila partisi anda hilang, dan didalamnya berisi data-data penting, jangan terburu-buru melakukan aksi format ulang!apalagi ‘deep format’!sama sekali tidak saya sarankan. Partisi memang baru, tapi yang jelas data-data penting hilang tidak berbekas.

Kalau datanya hanya lagu-lagu atau pilem doang gak papa, tapi gimana kalau data skripsi, tugas akhir, paper yang harus dikumpulin besok, foto pacar, foto selingkuhan, foto pacarnya temen (hehe..becanda..) yang hilang, pasti bikin pusing bin stress..

Sebelum melakukan aksi brutal Format ulang, saya sangat menyarankan melakukan recovery partisi atau recovery data.

Banyak software-software recovery gratis yang dapat digunakan. Salah satunya Test Disk 4.5 (http://www.cgsecurity.org), buatan mas Cristopher Grenier.
Cara menggunakan Test Disk 4.5;

1. Download softwarenya di situs http://www.cgsecurity.org
2. Kalau malas download, silahkan hubungi penulis
3. Software tersebut bersifat bootable, simpan di Floppy, hari geneee pake Floppy?!! kalau ngga’ silahkan di bakar dalam bentuk CD-bootable, atau simpan di USB-stick agar bisa booting melalui USB-stick anda
4. Tampilan program adalah text-based, jadi jangan pernah berharap menggunakan mouse!
5. Setelah booting, pada layar ada pilihan harddisk yang akan kita recover (partisinya di balikin)
6. Pilih dan tekan enter [Analyse]
8. Selanjutnya pilih menu [Search], lalu enter
9. Program akan mencari partisi yang hilang
10.Whulaa! partisi yang hilang pasti akan muncul kembali
11.Tekan enter
12.Selanjutnya pilih opsi [Write]
13.Muncul konfirmasi [Y/N]
14.Ketik Y
15.Quit
16.Berdoa

Selesai berdoa, silahkan booting ulang komputer anda, silahkan masuk ke sistem (Linux or Windows). Kalau anda beruntung, saya yakin partisi yang hilang, beserta data-datanya akan muncul kembali. Kalau belum muncul juga, lakukan [deep searh] pada langkah ke-8.
atau pake cara yang seperti ini :

Partition Find and Mount merupakan software utiliti yang memungkinkan kita dapat me-recovery partisi yant telah terhapus. Yang special dari software ini adalah kemampuannya yang dapat mounting partisi yang hilang pada sistem, dan sistem menerima partisi tersebuat dengan baik.

Software ini dapat membuat dan mount imange dari harddisk atau

File Sistem yang didukung software ini antara lain : seluruh versi NTFS, FAT12 (disket), FAT16, FAT32

License: Freeware
Author: Atola Technology
Sistem Operasi : MS Windows 2000/2003/XP


atau seperti ini :
Setelah beberapa minggu tidak membicarakan Komputer, kali ini saya menulis lagi posting tentang komputerisasi. Disini saya ingin memberikan tips tentang bagaimana mengembalikan data dalam harddisk yang hilang karena virus menyerang partisi hardisk. Saya sempet mengalami masalah ini saat membetulkan komputer temen saya. Mau dibalikin gimana? Partisi harddisknya saja hilang. Tetep tenang, stay cool, berfikir. Dapat dah..hehehe, begini:

Pada dasarnya data yang tersimpan dalam harddisk memang sangatlah rentan. Kita tidak bisa memprediksi atau selalu menyimpulkan seaman apa data kita disana, apalagi saat ini akses internet sudah menjadi suatu kebutuhan, dan akhirnya, penyebaran virus komputerpun menjadi lebih mudah. Nah beginilah yang terjadi jika komputer tidak dilengkapi antivirus yang up to date, yang selalu up to date saja masih bisa kena, apalagi yang tidak. Bila virus yang nyasar ke komputer anda terlanjur menghapus partisi harddisk bisa dipastikan semua data yang ada dalam harddisk akan menghilang.

Bagaimana cara mengembalikan data-data penting tersebut?

* Sebelumnya kita siapkan dulu beberapa tool, seperti partition magic untuk membuat partisi serta utility recovery, saya ambil contoh Easyrocovery Profesional dari Ontrack atau Phoenix stellar.

* Pastikan keberadaan harddisk yang hilang partisinya lewat BIOS. Bila telah terdeteksi, jalankan komputer seperti biasa.

* Install dulu software partition magic kemudian jalankan. Software ini digunakan untuk membuat partisi baru karena pada dasarnya harddisk yang hilang partisinya akibat virus harus dibuatkan partisi baru agar windows bisa mengenali.

* Setelah menjalankan partition magic, buat partisi, format harddisk tadi dengan sesuai sistem yang sebelumnya (misal NTFS atau FAT32). Perlu diketahui juga harddisk yang partisinya hilang, maka sistem biasanya mendeteksi harddisk belum terformat, jadi saat anda membuat satu partisi, secara otomatis hardisk tadi akan terformat juga.

* Buka explore pastikan keberadaan harddisk atau partisi yang baru tadi. Pasti kosong, hehe namanya juga baru diformat.

* Selanjutnya instal dan jalankan aplikasi recovery, contoh disini menggunakan easyrecovery pro dari ontrack.

* Klik data recovery terus pilih format recovery, dan klik harddisk yang baru di format tadi.

* Sabar menunggu sampai proses selesai, lama atau tidaknya tergantung besar kapasitas harddisk tadi, semakin besar semakin lama.

* Setelah proses scaning selesai, anda bisa langsung merecovery semuanya atau memilih beberapa data saja. Kalau ingin merecovery beberapa data saja, pilih data tadi kemudian klik next.

* Pilih tempat baru untuk meletakkan data tadi dan klik next.

Saya doakan dari sini semoga datanya bisa kembali semuanya. Jika ada salah-salah kata saya mohon maaf syukur-syukur ada yang ngelurusin. Semoga sedikit atau banyak bisa bermanfaat bagi anda.

download link easyrecovery Profesional : http://w15.easy-share.com/1700176835.html

(tapi filenya gede, kalo ada yang koneksinya tidak begitu bagus, lebih enak sewa di rental)




atau bisA JUGA seperti ini :


Apakah Anda pernah secara tidak sengaja menghapus file Anda, kemudian sudah meng-empty recycle bin? Atau Anda telah mem-format hard disk tapi ingin data Anda kembali? Atau data hilang / rusak karena virus? Atau karena komputer mati atau restart tiba-tiba? Ada cara untuk mengembalikan data yang hilang, yaitu dengan satu software yang sangat lengkap, yaitu Ontrack EasyRecovery Professional. Inilah cara-cara mengembalikan data Anda yang hilang .
Pertama Anda harus download dulu software tersebut, silakan klik di sini untuk download software Ontrack Easy Recovery Professional. Software ini menyediakan sebuah solusi yang sangat komplit sehubungan dengan data yang hilang atau urusan recovery data yang hilang karena:

1. Virus.
2. Sektor yang tidak terbaca
3. Kesalahan aplikasi, system, atau shut down yang tidak normal.
4. Kerusakan pada critical area.
5. Ter-format
6. Penyebab lain yang memungkinkan hilangnya data.

Software ini di-install pada Windows 98 SE, Me, 2000, or XP, dan dapat me-recover data untuk pada semua sistem windows. Software ini memiliki empat feature utama, yaitu:

1. Disk Diagnostics, yaitu tool untuk mengecek kondisi hardisk Anda apakah masih bagus atau tidak.
2. Data Recovery, yaitu tool untuk mengembalikan data / file karena terhapus, terformat, dan sebagainya.
3. Email Repair, yaitu tool untuk mengembalikan data email Outlook Express yang terhapus atau rusak.
4. File Repair, yaitu tool untuk memperbaiki data / file Microsoft Word, Excel, Access, PowerPoint, dan ZIP (winzip) file yang rusak karena virus atau sebab lain.

Tool yang ada dalam Disk Diagnostics ini adalah:

* Data Advisor, untuk membuat disket recovery.
* Drive Tests, untuk mengetes kondisi fisik dari hard disk (disk drive).
* Jumper Viewer, untuk melihat posisi jumper pada hard disk.
* Partition Tests, untuk mengecek kondisi partisi hardisk.
* Size Manager, untuk melihat kapasitas hard disk
* SMART Tests, digunakan untuk mengetes kondisi Self-Monitoring, Analysis and Reporting Technology pada suatu hardisk.


Data atau file yang hilang lebih sulit di-recover jika:

Tool-tool yang ada dalam Data Recovery ini adalah:

* Advanced Recovery, untuk mencari data yang sudah tidak dapat di-recover dengan tool lain, yaitu karena ter-format, ter-partisi, virus, atau hal lain.
* Deleted Recovery, untuk mencari data yang sudah dihapus. Ini adalah tool yang paling sering dipakai penulis.
* Format Recovery, untuk mencari data pada hard disk yang sudah di-format.
* Raw Recovery, untuk mencari file yang hilang berdasarkan signature.
* Resume Recovery, semua proses recovery dapat dihentikan sementara dan dilanjutkan pada lain waktu.
* Emergency Media, untuk membuat disket atau CD yang digunakan untuk me-recover data / file hilang.

3. Email Repair, digunakan untuk mengembalikan data email Outlook dan Outlook Express yang hilang.

1. Anda menambahkan file baru setelah Anda menghapus atau memformat hard disk.
2. Anda menggunakan FAT32 dalam Windows XP.

Demikian cara mengembalikan data yang hilang dengan software EasyRecovery Professional. Semoga data Anda bisa diselamatkan.

Rabu, 28 Oktober 2009

pengertian dan macam-macam shell pada linux

1. Pendahuluan

Apa itu shell ? shell adalah program (penterjemah perintah) yang menjembatani user dengan sistem operasi dalam hal ini kernel (inti sistem operasi), umumnya shell menyediakan prompt sebagai user interface, tempat dimana user mengetikkan perintah-perintah yang diinginkan baik berupa perintah internal shell (internal command), ataupun perintah eksekusi suatu file progam (eksternal command), selain itu shell memungkinkan user menyusun sekumpulan perintah pada sebuah atau beberapa file untuk dieksekusi sebagai program.
Macam - macam shell?

Tidak seperti sistem operasi lain yang hanya menyediakan satu atau 2 shell, sistem operasi dari keluarga unix misalnya linux sampai saat ini dilengkapi oleh banyak shell dengan kumpulan perintah yang sangat banyak, sehingga memungkinkan pemakai memilih shell mana yang paling baik untuk membantu menyelesaikan pekerjaannya, atau dapat pula berpindah-pindah dari shell yang satu ke shell yang lain dengan mudah, beberapa shell yang ada di linux antara lain:

* Bourne shell(sh),
* C shell(csh),
* Korn shell(ksh),
* Bourne again shell(bash),
* dsb.

Masing - masing shell mempunyai kelebihan dan kekurangan yang mungkin lebih didasarkan pada kebutuhan pemakai yang makin hari makin meningkat, untuk dokumentasi ini shell yang digunakan adalah bash shell dari GNU, yang merupakan pengembangan dari Bourne shell dan mengambil beberapa feature (keistimewaan) dari C shell serta Korn shell, Bash shell merupakan shell yang cukup banyak digunakan pemakai linux karena kemudahan serta banyaknya fasilitas perintah yang disediakan.versi bash shell yang saya gunakan adalah 2.04

[fajar@linux$]echo $BASH_VERSION
bash 2.04.12(1)-release

Mungkin saat anda membaca dokumentasi ini versi terbaru dari bash sudah dirilis dengan penambahan feature yang lain.
2. Pemrograman Shell ?

Yaitu menyusun atau mengelompokkan beberapa perintah shell (internal atupun eksternal command) menjadi kumpulan perintah yang melakukan tugas tertentu sesuai tujuan penyusunnya. Kelebihan shell di linux dibanding sistem operasi lain adalah bahwa shell di linux memungkinkan kita untuk menyusun serangkaian perintah seperti halnya bahasa pemrograman (interpreter language), melakukan proses I/O, menyeleksi kondisi, looping, membuat fungsi, dsb. adalah proses - proses yang umumnya dilakukan oleh suatu bahasa pemrograman, jadi dengan shell di linux kita dapat membuat program seperti halnya bahasa pemrograman, untuk pemrograman shell pemakai unix atau linux menyebutnya sebagai script shell.
3. Kebutuhan Dasar

Sebelum mempelajari pemrograman Bash shell di linux sebaiknya anda telah mengetahui dan menggunakan perintah - perintah dasar shell baik itu internal command yang telah disediakan shell maupun eksternal command atau utility, seperti

* cd, pwd, times, alias, umask, exit, logout, fg, bg, ls, mkdir, rmdir, mv, cp, rm, clear, ...
* utilitas seperti cat, cut, paste, chmod, lpr,...
* redirection (cara mengirim output ke file atau menerima input dari file), menggunakan operator redirect >, >>, <, <<, contohnya:

ls > data
hasil ls dikirim ke file data, jika file belum ada akan dibuat tetapi jika sudah ada isinya akan ditimpa.

ls >> data
hampir sama, bedanya jika file sudah ada maka isinya akan ditambah di akhir file.

cat < data
file data dijadikan input oleh perintah cat
* pipa (output suatu perintah menjadi input perintah lain), operatornya : | , contoh:

ls -l | sort -s
ouput perintah ls -l (long) menjadi input perintah sort -s (urutkan secara descending), mending pake ls -l -r saja :-)

ls -l | sort -s | more

cat databaru
* Wildcard dengan karakter *, ?, [ ], contohnya:

ls i*
tampilkan semua file yang dimulai dengan i

ls i?i
tampilkan file yang dimulai dengan i, kemudian sembarang karakter tunggal, dan diakhiri dengan i

ls [ab]*
tampilkan file yang dimulai dengan salah satu karakter a atau b

4. Simple Bash Script

Langkah awal sebaiknya periksa dulu shell aktif anda, gunakan perintah ps (report process status)

[fajar@linux$]ps
PID TTY TIME CMD
219 tty1 00:00:00 bash
301 tty1 00:00:00 ps

bash adalah shell aktif di system saya, jika disystem anda berbeda misalnya csh atau ksh ubahlah dengan perintah change shell

[fajar@linux$]chsh
Password:
New shell [/bin/csh]:/bin/bash
Shell changed

atau dengan mengetikkan bash

[fajar@linux$]bash

sekarang coba anda ketikkan perintah dibawah ini pada prompt shell

echo "Script shell pertamaku di linux"

[fajar@linux$]echo "Script shell pertamaku di linux"
Script shell pertamaku di linux

string yang diapit tanda kutip ganda (double quoted) akan ditampilkan pada layar anda, echo adalah statement (perintah) built-in bash yang berfungsi menampilkan informasi ke standard output yang defaultnya adalah layar. jika diinginkan mengulangi proses tersebut, anda akan mengetikkan kembali perintah tadi, tapi dengan fasilitas history cukup menggunakan tombol panah kita sudah dapat mengulangi perintah tersebut, bagaimana jika berupa kumpulan perintah yang cukup banyak, tentunya dengan fasilitas hirtory kita akan kerepotan juga mengulangi perintah yang diinginkan apalagi jika selang beberapa waktu mungkin perintah-perintah tadi sudah tertimpa oleh perintah lain karena history mempunyai kapasitas penyimpanan yang ditentukan. untuk itulah sebaiknya perintah-perintah tsb disimpan ke sebuah file yang dapat kita panggil kapanpun diinginkan.

coba ikuti langkah - langkah berikut:

1. Masuk ke editor anda, apakah memakai vi,pico,emacs,dsb...
2. ketikkan perintah berikut

#!/bin/bash
echo "Hello, apa khabar"

3. simpan dengan nama file tes
4. ubah permission file tes menggunakan chmod

[fajar@linux$]chmod 755 tes

5. jalankan

[fajar@linux$]./tes

kapan saja anda mau mengeksekusinya tinggal memanggil file tes tersebut, jika diinginkan mengeset direktory kerja anda sehingga terdaftar pada search path ketikkan perintah berikut

PATH=$PATH:.

setelah itu script diatas dapat dijalankan dengan cara

[fajar@linux$]tes
Hello, apa khabar

tanda #! pada /bin/bash dalam script tes adalah perintah yang diterjemahkan ke kernel linux untuk mengeksekusi path yang disertakan dalam hal ini program bash pada direktory /bin, sebenarnya tanpa mengikutkan baris tersebut anda tetap dapat mengeksekusi script bash, dengan catatan bash adalah shell aktif. atau dengan mengetikkan bash pada prompt shell.

[fajar@linux$]bash tes

tentunya cara ini kurang efisien, menyertakan path program bash diawal script kemudian merubah permission file sehingga dapat anda execusi merupakan cara yang paling efisien.

Sekarang coba kita membuat script shell yang menampilkan informasi berikut:

1. Waktu system
2. Info tentang anda
3. jumlah pemakai yang sedang login di system

contoh scriptnya:

#!/bin/bash
#myinfo

#membersihkan tampilan layar
clear

#menampilkan informasi
echo -n "Waktu system :"; date
echo -n "Anda :"; whoami
echo -n "Banyak pemakai :"; who | wc -l

sebelum dijalankan jangan lupa untuk merubah permission file myinfo sehingga dapat dieksekusi oleh anda

[fajar@linux$]chmod 755 myinfo
[fajar@linux$]./myinfo
Waktu system : Sat Nov 25 22:57:15 BORT 2001
Anda : fajar
Banyak pemakai : 2

tentunya layout diatas akan disesuaikan dengan system yang anda gunakan statement echo dengan opsi -n akan membuat posisi kursor untuk tidak berpindah ke baris baru karena secara default statement echo akan mengakhiri proses pencetakan ke standar output dengan karakter baris baru (newline), anda boleh mencoba tanpa menggunakan opsi -n, dan lihat perbedaannya. opsi lain yang dapat digunakan adalah -e (enable), memungkinkan penggunaan backslash karakter atau karakter sekuen seperti pada bahasa C atau perl, misalkan :

echo -e "\abunyikan bell"

jika dijalankan akan mengeluarkan bunyi bell, informasi opsi pada statement echo dan backslash karakter selengkapnya dapat dilihat via man di prompt shell.

[fajar@linux$]man echo

5. Pemakaian Variabel

Secara sederhana variabel adalah pengenal (identifier) berupa satuan dasar penyimpanan yang isi atau nilainya sewaktu-waktu dapat berubah baik oleh eksekusi program (runtime program) ataupun proses lain yang dilakukan sistem operasi. dalam dokumentasi ini saya membagi variabel menjadi 3 kategori:

1. Environment Variable
2. Positional Parameter
3. User Defined Variable

5.1. Environment Variable

atau variabel lingkungan yang digunakan khusus oleh shell atau system linux kita untuk proses kerja system seperti variabel PS1, PS2, HOME, PATH, USER, SHELL,dsb...jika digunakan akan berdampak pada system, misalkan variabel PS1 yang digunakan untuk mengeset prompt shell pertama yaitu prompt tempat anda mengetikkan perintah - perintah shell (defaultnya "\s-\v\$"), PS2 untuk prompt pelengkap perintah, prompt ini akan ditampilkan jika perintah yang dimasukkan dianggap belum lengkap oleh shell (defaultnya ">"). anda dapat mengeset PS1 dan PS2 seperti berikut.

simpan dahulu isi PS1 asli system anda, sehingga nanti dapat dengan mudah dikembalikan

[fajar@linux$]PS1LAMA=$PS1

sekarang masukkan string yang diinginkan pada variabel PS1

[fajar@linux$]PS1="Hi ini Promptku!"
Hi ini Promptku!PS2="Lengkapi dong ? "

maka prompt pertama dan kedua akan berubah, untuk mengembalikan PS1 anda ke prompt semula ketikkan perintah

[fajar@linux$]PS1=$PS1LAMA

Jika anda ingin mengkonfigurasi prompt shell, bash telah menyediakan beberapa backslash karakter diantaranya adalah:
\a ASCII bell character (07)
\d date dengan format "Weekday Month Date" (misalnya "Tue May 26")
\e ASCII escape character (033)
\H hostname (namahost)
\n newline (karakter baru)
\w Direktory aktif
\t time dalam 24 jam dengan format HH:MM:SS
dll man bash:-)

contoh pemakaiannya:

[fajar@linux$]PS1="[\t][\u@\h:\w]\$"

agar prompt shell hasil konfigurasi anda dapat tetap berlaku (permanen) sisipkan pada file .bashrc atau .profile
5.2. Positional Parameter

atau parameter posisi yaitu variabel yang digunakan shell untuk menampung argumen yang diberikan terhadap shell baik berupa argumen waktu sebuah file dijalankan atau argumen yang dikirim ke subrutin. variabel yang dimaksud adalah 1,2,3,dst..lebih jelasnya lihat contoh script berikut :

#!/bin/bash
#argumen1

echo $1 adalah salah satu $2 populer di $3

Hasilnya

[fajar@linux$]./argumen1 bash shell linux
bash adalah salah satu shell populer di linux

ada 3 argumen yang disertakan pada script argumen1 yaitu bash, shell, linux, masing2 argumen akan disimpan pada variabel 1,2,3 sesuai posisinya. variabel spesial lain yang dapat digunakan diperlihatkan pada script berikut:

#!/bin/bash
#argumen2

clear
echo "Nama script anda : $0";
echo "Banyak argumen : $#";
echo "Argumennya adalah: $*";

Hasilnya:

[fajar@linux$]./argumen 1 2 3 empat
Nama script anda : ./argumen
Banyak argumen : 4
Argumennya adalah : 1 2 3 empat

5.3. User Defined Variable

atau variabel yang didefinisikan sendiri oleh pembuat script sesuai dengan kebutuhannya, beberapa hal yang perlu diperhatikan dalam mendefenisikan variabel adalah:

* dimulai dengan huruf atau underscore
* hindari pemakaian spesial karakter seperti *,$,#,dll...
* bash bersifat case sensitive, maksudnya membedakan huruf besar dan kecil, a berbeda dengan A, nama berbeda dengan Nama,NaMa,dsb..

untuk mengeset nilai variabel gunakan operator assignment (pemberi nilai)"=", contohnya :

myos="linux" #double-quoted
nama='pinguin' #single-quoted
hasil=`ls -l`; #back-quoted
angka=12

kalau anda perhatikan ada 3 tanda kutip yang kita gunakan untuk memberikan nilai string ke suatu variabel, adapun perbedaannya adalah:

* dengan kutip ganda (double-quoted), bash mengizinkan kita untuk menyisipkan variabel di dalamnya. contohnya:

#!/bin/bash

nama="pinguin"
kata="Hi $nama, apa khabarmu" #menyisipkan variabel nama
echo $kata;

Hasilnya:

Hi pinguin, apa khabarmu

* dengan kutip tunggal (single-quoted), akan ditampilkan apa adanya. contohnya:

#!/bin/bash

nama="pinguin"
kata='Hi $nama, apa khabarmu' #menyisipkan variabel nama
echo $kata;

Hasilnya:

Hi $nama, apa khabarmu

* dengan kutip terbalik (double-quoted), bash menerjemahkan sebagai perintah yang akan dieksekusi, contohnya:

#!/bin/bash

hapus=`clear`;
isi=`ls -l`; #hasil dari perintah ls -l disimpan di variabel isi

#hapus layar
echo $hapus

#ls -l
echo $isi;

Hasilnya: silahkan dicoba sendiri

Untuk lebih jelasnya lihat contoh berikut:

#!/bin/bash
#varuse

nama="fajar"
OS='linux'
distro="macam-macam, bisa slackware,redhat,mandrake,debian,suse,dll"
pc=1
hasil=`ls -l $0`

clear
echo -e "Hi $nama,\npake $OS\nDistribusi, $distro\nkomputernya, $pc buah"
echo "Hasil ls -l $0 adalah =$hasil"

Hasilnya:

[fajar@linux$]./varuse
Hi fajar,
pake linux Distribusi, macam-macam, bisa slackware,redhat,mandrake,debian,suse,dll
komputernya, 1 buah
Hasil ls -l ./varuse adalah -rwxr-xr-x 1 fajar users 299 Nov 21 06:24 ./varuse

untuk operasi matematika ada 3 cara yang dapat anda gunakan, dengan statement builtin let atau expr atau perintah subtitusi seperti contoh berikut:

#!/bin/bash
#mat1

a=10
b=5
#memakai let
let jumlah=$a+$b
let kurang=$a-$b
let kali=$a*$b

#memakai expr
bagi=`expr $a / $b`

#memakai perintah subtitusi $((ekspresi))
modul =$(($a%$b)) #sisa pembagian

echo "$a+$b=$jumlah"
echo "$a-$b=$kurang"
echo "$a*$b=$kali"
echo "$a/$b=$bagi"
echo "$a%$b=$mod"

Hasilnya:

[fajar@linux$]./mat1
10+5=15
10-5=5
10*5=50
10/5=2
10%5=0

fungsi expr begitu berdaya guna baik untuk operasi matematika ataupun string contohnya:

[fajar@linux$]mystr="linux"
[fajar@linux$]expr length $mystr
5

Mungkin anda bertanya - tanya, apakah bisa variabel yang akan digunakan dideklarasikan secara eksplisit dengan tipe data tertentu?, mungkin seperti C atau pascal, untuk hal ini oleh Bash disediakan statement declare dengan opsi -i hanya untuk data integer (bilangan bulat). Contohnya:

#!/bin/bash

declare -i angka
angka=100;
echo $angka;

apabila variabel yang dideklarasikan menggunakan declare -iternyata anda beri nilai string (karakter), maka Bash akan mengubahnya ke nilai 0, tetapi jika anda tidak menggunakannya maka dianggap sebagai string.
6. Simple I/O

I/O merupakan hal yang mendasar dari kerja komputer karena kapasitas inilah yang membuat komputer begitu berdayaguna. I/O yang dimaksud adalah device yang menangani masukan dan keluaran, baik itu berupa keyboard, floppy, layar monitor,dsb. sebenarnya kita telah menggunakan proses I/O ini pada contoh -contoh diatas seperti statement echo yang menampilkan teks atau informasi ke layar, atau operasi redirect ke ke file. selain echo, bash menyediakan perintah builtin printf untuk mengalihkan keluaran ke output standard, baik ke layar ataupun ke file dengan format tertentu, mirip statement printf kepunyaan bahasa C atau perl. berikut contohnya:
6.1 Output dengan printf

#!/bin/bash
#pr1

url="pemula.linux.or.id";
angka=32;

printf "Hi, Pake printf ala C\n\t\a di bash\n";
printf "My url %s\n %d decimal = %o octal\n" $url $angka $angka;
printf "%d decimal dalam float = %.2f\n" $angka $angka

Hasilnya:

[fajar@linux$]./pr1
Hi, Pake printf ala C
di bash
My url pemula.linux.or.id
32 decimal = 40 octal
32 decimal dalam float = 32.00

untuk menggunakan format kontrol sertakan simbol %, bash akan mensubtitusikan format tsb dengan isi variabel yang berada di posisi kanan sesuai dengan urutannya jika lebih dari satu variabel, \n \t \a adalah karakter sekuen lepas newline,tab, dan bell,
Format control keterangan
%d untuk format data integer
%o octal
%f float atau decimal
%x Hexadecimal

pada script diatas %.2f akan mencetak 2 angka dibelakang koma, defaultnya 6 angka, informasi lebih lanjut dapat dilihat via man printf
6.2 Input dengan read

Setelah echo dan printf untuk proses output telah anda ketahui, sekarang kita menggunakan statement read yang cukup ampuh untuk membaca atau menerima masukan dari input standar

syntax :

read -opsi [nama_variabel...]

berikut contoh scriptnya:

#!/bin/bash
#rd1

echo -n "Nama anda :"
read nama;

echo "Hi $nama, apa khabarmu";
echo "Pesan dan kesan :";
read
echo "kata $nama, $REPLY";

Hasilnya:

[fajar@linux$]./rd1
Nama anda : pinguin
Hi pinguin, apa khabarmu
Pesan & kesan :
pake linux pasti asyk - asyk aja
kata pinguin, pake linux pasti asyk - asyk aja

jika nama_variabel tidak disertakan, maka data yang diinput akan disimpan di variabel REPLY contoh lain read menggunakan opsi
-t(TIMEOUT), -p (PROMPT), -s(SILENT), -n (NCHAR) dan -d(DELIM)

#!/bin/bash

read -p "User Name : " user
echo -e "Password 10 karakter,\njika dalam 6 second tidak dimasukkan pengisian password diakhiri"
read -s -n 10 -t 6 pass
echo "kesan anda selama pake linux, _underscore=>selesai"
read -d _ kesan

echo "User = $user"
echo "Password = $pass"
echo "Kesan selama pake linux = $kesan"

Hasilnya: silahkan dicoba sendiri :-)
Opsi Keterangan
-p memungkinkan kita membuat prompt sebagai informasi pengisian
-s membuat input yang dimasukkan tidak di echo ke layar (seperti layaknya password di linux)
-n menentukan banyak karakter yang diinput
-d menentukan karakter pembatas masukan

informasi secara lengkap lihat man bash
6.3. Output dengan konstanta ANSI
6.3.1. Pengaturan Warna

Untuk pewarnaan tampilan dilayar anda dapat menggunakan konstanta ANSI (salah satu badan nasional amerika yang mengurus standarisasi).

syntaxnya:

\033[warnam

Dimana:
m menandakan setting color

contohnya:

[fajar@linux$]echo -e "\033[31m HELLO\033[0m"
HELLO

konstanta 31m adalah warna merah dan 0m untuk mengembalikan ke warna normal (none), tentunya konstanta warna ansi ini dapat dimasukkan ke variabel PS1 untuk mengatur tampilan prompt shell anda, contohnya:

[fajar@linux$]PS1="\033[34m"
[fajar@linux$]

berikut daftar warna yang dapat anda gunakan:

foreground
None 0m
Black 0;30 Dark Gray 1;30
Red 0;31 Light Red 1;31
Green 0;32 Light Green 1;32
Brown 0;33 Yellow 1;33
Blue 0;34 Light Blue 1;34
Purple 0;35 Light Purple 1;35
Cyan 0;36 Light Cyan 1;36
Light Gray 0;37 White 1;37
background
dimulai dengan 40 untuk BLACK,41 RED,dst
lain-lain
4 underscore,5 blink, 7 inverse

tentunya untuk mendapatkan tampilan yang menarik anda dapat menggabungkannya antara foreground dan background

[fajar@linux$]echo -e "\033[31;1;33m Bash and ansi color\033[0m"

Bash and ansi color
6.3.2 Pengaturan posisi kursor

sedangkan untuk penempatan posisi kursor, dapat digunakan salah satu cara dibawah.

* Menentukan posisi baris dan kolom kursor:

\033[baris;kolomH

* Pindahkan kursor keatas N baris:

\033[NA

* Pindahkan kursor kebawah N baris:

\033[NB

* Pindahkan kursor kedepan N kolom:

\033[NC

* Pindahkan kursor kebelakang N kolom:

\033[ND

Contohnya:

#!/bin/bash

SETMYCOLOR="\033[42;1;37m"
GOTOYX="\033[6;35H"
clear
echo -e "\033[3;20H INI DIBARIS 3, KOLOM 20"
echo -e "\033[44;1;33;5m\033[5;35H HELLO\033[0m";
echo -e "$SETMYCOLOR$GOTOYX ANDA LIHAT INI\033[0m"

Hasilnya: Silahkan dicoba sendiri
Menggunakan utulity tput untuk penempatan posisi kursor

kita dapat pula mengatur penempatan posisi kursor di layar dengan memanfaatkan utility tput,

syntaxnya:

tput cup baris kolom

contohnya:

#!/bin/bash

clear
tput cup 5 10
echo "HELLO"
tput cup 6 10
echo "PAKE TPUT"

jika dijalankan anda akan mendapatkan string HELLO di koordinat baris 5 kolom 10, dan string PAKE TPUT dibaris 6 kolom 10. informasi selengkapnya tentang tput gunakan man tput, atau info tput
7. Seleksi dan Perulangan

Bagian ini merupakan ciri yang paling khas dari suatu bahasa pemrograman dimana kita dapat mengeksekusi suatu pernyataan dengan kondisi terntentu dan mengulang beberapa pernyataan dengan kode script yang cukup singkat.
7.1 test dan operator

test adalah utility sh shell yang berguna untuk memeriksa informasi tentang suatu file dan berguna untuk melakukan perbandingan suatu nilai baik string ataupun numerik

syntaxnya: test ekspresi

proses kerja test yaitu dengan mengembalikan sebuah informasi status yang dapat bernilai 0 (benar) atau 1 (salah) dimana nilai status ini dapat dibaca pada variabel spesial $?.

[fajar@linux$]test 5 -gt 3
[fajar@linux$]echo $?
0

pernyataan 5 -gt (lebih besar dari) 3 yang dievaluasi test menghasilkan 0 pada variabel status $? itu artinya pernyataan tersebut benar tetapi coba anda evaluasi dengan expresi berikut

[fajar@linux$]test 3 -lt 1
[fajar@linux$]echo $?
1

status bernilai 1, berarti pernyataan salah.

anda lihat simbol -gt dan -lt, itulah yang disebut sebagai operator, secara sederhana operator adalah karakter khusus (spesial) yang melakukan operasi terhadap sejumlah operand, misalkan 2+3, "+" adalah operator sedangkan 2 dan 3 adalah operandnya, pada contoh test tadi yang bertindak sebagai oparatornya adalah -lt dan -gt, sedangkan bilangan disebelah kiri dan kanannya adalah operand. cukup banyak operator yang disediakan bash antara lain:
7.1.1. Operator untuk integer
Operator Keterangan
bil1 -eq bil2 Mengembalikan Benar jika bil1 sama dengan bil2
bil1 -ne bil2 -||- Benar jika bil1 tidak sama dengan bil2
bil1 -lt bil2 -||- Benar jika bil1 lebih kecil dari bil2
bil1 -le bil2 -||- Benar jika bil1 lebih kecil atau sama dengan bil2
bil1 -gt bil2 -||- Benar jika bil1 lebih besar dari bil2
bil1 -ge bil2 -||- Benar jika bil1 lebih besar atau sama dengan bil2
7.1.2. Operasi string
Operator Keterangan
-z STRING Mengembalikan Benar jika panjang STRING adalah zero
STRING1 == STRING2 -||- Benar jika STRING1 sama dengan STRING2
7.1.3 Operator file
Operator Keterangan
-f FILE Mengembalikan Benar jika FILE ada dan merupakan file biasa
-d FILE -||- Benar jika FILE ada dan meruapakan direktory
7.1.3 Operator logika
ekspr1 -o ekspr2 Benar jika jika salah satu ekspresi benar (or,||)
ekspr1 -a ekspr2 Benar jika ekspresi1 dan ekspresi2 benar (and,&&)
! ekspresi Mengembalikan Benar jika ekspresi tidak benar (not!)

untuk informasi lebih lengkap man bash atau info bash di prompt shell anda.
7.2. Seleksi
7.2.1 if

Statement builtin if berfungsi untuk melakukan seleksi berdasarkan suatu kondisi tertentu

syntax:

if test-command1;
then
perintah1;
elif test-command2;
then
perintah2;
else
alternatif_perintah;
fi

contoh script if1:

#!/bin/bash
#if1

clear;
if [ $# -lt 1 ];
then
echo "Usage : $0 [arg1 arg2 ...]"
exit 1;
fi

echo "Nama script anda : $0";
echo "Banyak argumen : $#";
echo "Argumennya adalah: $*";

Hasilnya:

[fajar@linux$]./if1

Usage : ./if1 [arg1 arg2 ...]

statement dalam blok if...fi akan dieksekusi apabila kondisi if terpenuhi, dalam hal ini jika script if1 dijalankan tanpa argumen. kita tinggal membaca apakah variabel $# lebih kecil (less than) dari 1, jika ya maka eksekusi perintah di dalam blok if ..fi tsb. perintah exit 1 akan mengakhiri jalannya script, angka 1 pada exit adalah status yang menandakan terdapat kesalahan, status 0 berarti sukses, anda dapat melihat isi variabel $? yang menyimpan nilai status exit, tetapi jika anda memasukkan satu atau lebih argumen maka blok if...fi tidak akan dieksekusi, statement diluar blok if..filah yang akan dieksekusi.

contoh script if2:

#!/bin/bash

kunci="bash";
read -s -p "Password anda : " pass
if [ $pass==$kunci ]; then
echo "Sukses, anda layak dapat linux"
else
echo "Wah sorry, gagal nih";
fi

Hasilnya

[fajar@linux$]./if2
Password anda : bash
Sukses, anda layak dapat linux
[fajar@linux$]./if2
Password anda : Bash
Wah sorry, gagal nih

klausa else akan dieksekusi jika if tidak terpenuhi, sebaliknya jika if terpenuhi maka else tidak akan dieksekusi

contoh script if3: penyeleksian dengan kondisi majemuk

#!/bin/bash

clear
echo "MENU HARI INI";
echo "-------------";
echo "1. Bakso ";
echo "2. Gado-Gado ";
echo "3. Exit ";
read -p "Pilihan anda [1-3] :" pil;

if [ $pil -eq 1 ];
then
echo "Banyak mangkuk =";
read jum
let bayar=jum*1500;
elif [ $angka -eq 2 ];
then
echo "Banyak porsi =";
read jum
let bayar=jum*2000;
elif [ $angka -eq 3 ];
then
exit 0
else
echo "Sorry, tidak tersedia"
exit 1
fi

echo "Harga bayar = Rp. $bayar"
echo "THX"

Hasilnya:

[fajar@linux$]./if3
MENU HARI INI
-------------
1. Bakso
2. Gado-Gado
3. Exit
Pilihan anda :2

Banyak porsi = 2

Harga bayar = Rp. 4000
THX

7.2.2. statement builtin case

seperti halnya if statement case digunakan untuk menyeleksi kondisi majemuk, dibanding if, pemakaian case terasa lebih efisien

syntax:

case WORD in [ [(] PATTERN [| PATTERN]...) COMMAND-LIST ;;]...
esac

contoh script cs1

#!/bin/bash

clear
echo -n "Masukkan nama binatang :";
read binatang;

case $binatang in
pinguin | ayam | burung ) echo "$binatang berkaki 2"
break
;;
onta | kuda | anjing ) echo "$binatang berkaki 4"
break
;;
*) echo "$binatang blom didaftarkan"
break
;;
esac

Hasilnya:

[fajar@linux$]./cs1
Masukkan nama binatang : pinguin
pinguin berkaki 2

7.3. Perulangan
7.3.1. statement for

syntax:
for NAME [in WORDS ...]; do perintah; done
contoh script for1

#!/bin/bash

for angka in 1 2 3 4 5;
do
echo "angka=$angka";
done

Hasilnya:

[fajar@linux$]./for1
angka=1
angka=2
angka=3
angka=4
angka=5

contoh script for2 berikut akan membaca argumen yang disertakan waktu script dijalankan

#!/bin/bash

for var
do
echo $var
done

Hasilnya:

[fajar@linux$]./for2 satu 2 tiga
satu
2
tiga

atau variasi seperti berikut

#!/bin/bash

for var in `cat /etc/passwd`
do
echo $var
done

Hasilnya: hasil dari perintah cat terhadap file /etc/passwd disimpan ke var dan ditampilkan menggunakan echo $var ke layar, mendingan gunakan cat /etc/passwd saja biar efisien. :-)
7.3.2. statement while

selama kondisi bernilai benar atau zero perintah dalam blok while akan diulang terus

syntax:

while KONDISI; do perintah; done;

contoh script wh1 mencetak bilangan ganjil antara 1-10

#!/bin/bash

i=1;
while [ $i -le 10 ];
do
echo "$i,";
let i=$i+2;
done

Hasilnya:

[fajar@linux$]./wh1
1,3,5,7,9,

kondisi tidak terpenuhi pada saat nilai i=11 (9+2), sehingga perintah dalam blokwhile tidak dieksekusi lagi
contoh script wh2 akan menghitung banyak bilangan genap dan ganjil yang ada.

#!/bin/bash

i=0;
bil_genap=0;
bil_ganjil=0;

echo -n "Batas loop :";
read batas

if [ -z $batas ] || [ $batas -lt 0 ]; then
echo "Ops, tidak boleh kosong atau Batas loop harus >= 0";
exit 0;
fi

while [ $i -le $batas ];
do
echo -n "$i,";
if [ `expr $i % 2` -eq 0 ]; then
let bil_genap=$bil_genap+1;
else
let bil_ganjil=$bil_ganjil+1;
fi
let i=$i+1; #counter untuk mencapai batas
done

echo
echo "banyak bilangan genap = $bil_genap";
echo "banyak bilangan ganjil = $bil_ganjil";

Hasilnya:

[fajar@linux$]./wh2
Batas loop : 10
0,1,2,3,4,5,6,7,8,9,10,
banyak bilangan genap = 6
banyak bilangan ganjil = 5

untuk mengetahui apakah nilai i berupa bilangan genap kita cukup menggunakan operasi matematika % (mod), jika nilai i dibagi 2 menghasilkan sisa 0 berarti i adalah bilangan genap (semua bilangan genap yang dibagi dengan 2 mempunyai sisa 0) maka pencacah (bil_genap) dinaikkan 1, selain itu i bilangan ganjil yang dicatat oleh pencacah bil_ganjilproses ini dilakukan terus selama nilai i lebih kecil atau samadengan nilai batas yang dimasukkan. script juga akan memeriksa dahulu nilai batas yang dimasukkan apabila kosong atau lebih kecil dari 0 maka proses segera berakhir.tentunya dengan statement while kita sudah dapat membuat perulangan pada script kedai diatas agar dapat digunakan terus-menerus selama operator masih ingin melakukan proses perhitungan. lihat contoh berikut:

#!/bin/bash
#kedai

lagi='y'
while [ $lagi == 'y' ] || [ $lagi == 'Y' ];
do
clear
echo "MENU HARI INI";
echo "-------------";
echo "1. Bakso ";
echo "2. Gado-Gado ";
echo "3. Exit ";
read -p "Pilihan anda [1-3] :" pil;

if [ $pil -eq 1 ];
then
echo -n "Banyak mangkuk =";
read jum
let bayar=jum*1500;
elif [ $pil -eq 2 ];
then
echo -n "Banyak porsi =";
read jum
let bayar=jum*2000;
elif [ $pil -eq 3 ];
then
exit 0
else
echo "Sorry, tidak tersedia"
exit 1
fi

echo "Harga bayar = Rp. $bayar"
echo "THX"
echo
echo -n "Hitung lagi (y/t) :";
read lagi;

#untuk validasi input
while [ $lagi != 'y' ] && [ $lagi != 'Y' ] && [ $lagi != 't' ] && [ $lagi != 'T' ];
do
echo "Ops, isi lagi dengan (y/Y/t/Y)";
echo -n "Hitung lagi (y/t) :";
read lagi;
done

done

proses pemilihan menu dan perhitungan biaya akan diulang terus selama anda memasukkan y/Y dan t/T untuk berhenti. dalam script terdapat validasi input menggunakan while, sehingga hanya y/Y/t/T saja yang dapat diterima soalnya saya belum mendapatkan fungsi yang lebih efisien :-)
7.3.3. statement until

jika while akan mengulang selama kondisi benar, lain halnya dengan statement until yang akan mengulang selama kondisi salah.
berikut contoh script ut menggunakan until

#!/bin/bash

i=1;
until [ $i -gt 10 ];
do
echo $i;
let i=$i+1
done

Hasilnya:

[fajar@linux$]./ut
1,2,3,4,5,6,7,8,9,10,

perhatikan kodisi until yang salah [ $i -gt 10], dimana nilai awal i=1 dan akan berhenti apabila nilai i = 11 (bernilai benar) 11 -gt 10.
7.3.4. statement select

selectberguna untuk pembuatan layout berbentuk menu pilihan, anda lihat contoh script pembuatan menu diatas kita hanya melakukannya dengan echo secara satu persatu, dengan select akan terlihat lebih efisien.

syntax:

select varname in (<item list>); do perintah; done

sewaktu dijalankan bash akan menampilkan daftar menu yang diambil dari item list, serta akan menampilkan prompt yang menunggu masukan dari keyboard, masukan tersebut oleh bash disimpan di variabel builtin REPLY, apabila daftar item list tidak dituliskan maka bash akan mengambil item list dari parameter posisi sewaktu script dijalankan. lebih jelasnya lihat contoh berikut:

#!/bin/bash
#menu1

clear
select menu
do
echo "Anda memilih $REPLY yaitu $menu"
done

Hasilnya:

layout:
[fajar@linux$]./menu1 Slackware Redhat Mandrake
1) Slackware
2) Redhat
3) Mandrake
#? 1
Anda memilih 1 yaitu Slackware

karena item list tidak disertakan dalam script, maka sewaktu script dijalankan kita menyertakan item list sebagai parameter posisi, coba gunakan statement select pada program kedai diatas.

#!/bin/bash
#kedai

lagi='y'
while [ $lagi == 'y' ] || [ $lagi == 'Y' ];
do
clear
select menu in "Bakso" "Gado-Gado" "Exit";
case $REPLY in
1) echo -n "Banyak mangkuk =";
read jum
let bayar=jum*1500;
;;
2) echo -n "Banyak porsi =";
read jum
let bayar=jum*2000;
;;
3) exit 0
;;
*) echo "Sorry, tidak tersedia"
;;
esac
do

echo "Harga bayar = Rp. $bayar"
echo "THX"
echo
echo -n "Hitung lagi (y/t) :";
read lagi;

#untuk validasi input
while [ $lagi != 'y' ] && [ $lagi != 'Y' ] && [ $lagi != 't' ] && [ $lagi != 'T' ];
do
echo "Ops, isi lagi dengan (y/Y/t/Y)";
echo -n "Hitung lagi (y/t) :";
read lagi;
done
done

8. Array

adalah kumpulan variabel dengan tipe sejenis, dimana array ini merupakan feature Bash yang cukup indah :-) dan salah satu hal yang cukup penting dalam bahasa pemrograman, anda bisa membayangkan array ini sebagai tumpukan buku - buku dimeja belajar. lebih jelasnya sebaiknya lihat dulu contoh script berikut:

#!/bin/bash
#array1

buah=(Melon,Apel,Durian);
echo ${buah[*]};

Hasilnya:

[fajar@linux$]./array1.
Melon,Apel,Durian

anda lihat bahwa membuat tipe array di Bash begitu mudah, secara otomatis array buah diciptakan dan string Melon menempati index pertama dari array buah, perlu diketahui bahwa array di Bash dimulai dari index 0, jadi array buah mempunyai struktur seperti berikut:

buah[0] berisi Melon
buah[1] berisi Apel
buah[2] berisi Durian

0,1,2 adalah index array, berarti ada 3 elemen pada array buah, untuk menampilkan isi semua elemen array gunakan perintah subtitusi seperti pada contoh diatas, dengan index berisi "*" atau "@". dengan adanya index array tentunya kita dapat mengisi array perindexnya dan menampilkan isi array sesuai dengan index yang diinginkan. anda lihat contoh berikut:

#!/bin/bash
#array2

bulan[0]=31
bulan[1]=28
bulan[2]=31
bulan[3]=30
bulan[4]=31
bulan[5]=30
bulan[6]=31
bulan[7]=31
bulan[8]=30
bulan[9]=31
bulan[10]=30
bulan[11]=31
echo "Banyak hari dalam bulan November adalah ${bulan[10]} hari"

Hasilnya:

[fajar@linux$]./array2
Banyak hari dalam bulan November adalah 30 hari

sebenarnya kita dapat mendeklarasikan array secara eksplisit menggunakan statement declare

contohnya:

declare -a myarray

mendeklarasikan variabel myarray sebagai array dengan opsi -a, kemudian anda sudah dapat memberinya nilai baik untuk semua elemen atau hanya elemen tertentu saja dengan perulangan yang telah kita pelajari pengisian elemen array dapat lebih dipermudah, lihat contoh :

#!/bin/bash
#array3

#deklarasikan variabel array
declare -a angka

#clear
i=0;
while [ $i -le 4 ];
do
let isi=$i*2;
angka[$i]=$isi;
let i=$i+1;
done

#tampilkan semua elemen array
#dengan indexnya berisi "*" atau "@"
echo ${angka[*]};

#destroy array angka (memory yang dipakai dibebaskan kembali)
unset angka


Hasilnya:

[fajar@linux$]./array3
0 2 4 6 8

9. Subrutin atau Fungsi

merupakan bagian script atau program yang berisi kumpulan beberapa statement yang melaksanakan tugas tertentu. dengan subrutin kode script kita tentunya lebih sederhana dan terstruktur, karena sekali fungsi telah dibuat dan berhasil maka akan dapat digunakan kapan saja kita inginkan. beberapa hal mengenai fungsi ini adalah:

* Memungkinkan kita menyusun kode script ke dalam bentuk modul-modul kecil yang lebih efisien dengan tugasnya masing-masing.
* Mencegah penulisan kode yang berulang - ulang.

untuk membuat subrutin shell telah menyediakan keyword function seperti pada bahasa C, akan tetapi ini bersifat optional (artinya boleh digunakan boleh tidak).

syntax:

function nama_fungsi() { perintah; }

nama_fungsi adalah pengenal (identifier) yang aturan penamaannya sama seperti pemberian nama variabel, setelah fungsi dideklarasikan atau dibuat anda dapat memaggilnya dengan menyebutkan nama fungsinya. lebih jelasnya lihat contoh script fungsi1 berikut:

#!/bin/bash

function say_hello() {
echo "Hello, apa kbabar"
}


#panggil fungsi
say_hello;

#panggil sekali lagi
say_hello;


Hasilnya:

[fajar@linux$]./fungsi1
Hello, apa khabar

Hello, apa khabar

jika keyword function disertakan maka kita boleh tidak menggunakan tanda kurung (), tetapi jika keyword function tidak disertakan maka tanda kurung harus digunakan, lihat contoh berikut:

#!/bin/bash

function say_hello{
echo "Hello,apa khabar"
}

balas(){
echo "Baik-baik saja";
echo "Bagaimana dengan anda ?";
}


#panggil fungsi say_hello
say_hello;

#panggil fungsi balas
balas;

Hasilnya:

[fajar@linux$]./fungsi2
Hello, apa khabar
Baik-baik saja
Bagaimana dengan anda ?

9.1. Mengirim argumen sebagai parameter ke fungsi

tentunya suatu fungsi lebih berdaya guna apabila dapat menerima argumen yang dikirim oleh pemanggilnya dan memproses argumen tsb didalam fungsinya, fungsi yang kita buat pada bash shell tentunya dapat melakukan hal tsb, apabila pada pemanggilan fungsi kita menyertakan argumen untuk diproses fungsi tsb, maka bash akan menyimpan argumen - argumen tsb pada parameter posisi 1,2,3,dst...,nah dengan memanfaatkan parameter posisi tsb tentunya kita dapat mengambil nilai yang dikirim. lebih jelasnya anda lihat contoh berikut:

#!/bin/bash

function hello{
if [ -z $1 ]; then
echo "Hello, apa khabar anda"
else
echo "Hello $1, apa khabar";
fi
}

#masukkan nama anda disini
echo -n "Nama anda :";
read nama

#panggil fungsi dan kirim isi variabel nama ke fungsi untuk dicetak
hello $nama;

Hasilnya:

[fajar@linux$]./fungsi3
Nama anda : pinguin
Hello pinguin, apa khabar

lihat fungsi hello, sebelum mencetak pesan kita melakukan pemeriksaan dengan if terhadap parameter posisi $1 apabila kosong maka pesan "Hello, apa khabar anda" yang akan ditampilkan, tetapi jika ada string yang kita input maka string tersebut akan dicetak di dalam blok else pada fungsi. argumen pertama diteruskan ke variabel 1, argumen kedua pada variabel 2, dst.. jika argumen yang dikirim lebih dari satu.
9.2. Cakupan Variabel

secara default variabel - variabel yang digunakan dalam script adalah variabel bersifat global, maksud global adalah bahwa variabel tsb dikenal dan dapat diakses oleh semua fungsi dalam script, tetapi bash menyediakan keyword localyang berfungsi membatasi cakupan (scope) suatu variabel agar dikenal hanya oleh fungsi yang mendeklarasikannya.coba lihat contoh berikut:

#!/bin/bash

proses(){
echo "Isi variabel a=$a";
}

a=2;
proses();
proses $a


Hasilnya:

Isi variabel a=2
Isi variabel a=2

coba anda tambahkan local a pada fungsi proses menjadi

proses(){
local a;
echo -e "a didalam fungsi, a=$a";
}


a=10;
proses()

echo "a diluar fungsi, a=$a"
proses $a

Hasilnya:

a didalam fungsi, a=
a diluar fungsi, a=10
a didalam fungsi a=

nah jelas perbedaannya jika mendeklarasikan variabel memakai keyword local menyebabkan variabel tersebut hanya berlaku pada fungsi yang mendekalarasikannya. pada contoh dalam fungsi proses variabel a dideklarasikan sebagai variabel local dan tidak diberi nilai.

Diakhir dokumentasi ini saya menyertakan contoh script sederhana untuk melakukan entry data-data KPLI (Kelompok Pencinta Linux Indonesia) dan menyimpannya ke sebuah file. perintah-perintah shell dan beberapa utility yang digunakan adalah:

* apa yang telah anda pelajari diatas
* utility test, touch
* operator redirection ">>" untuk menambah data
* sleep, grep (global regular expression parser), cut, cat, | (pipa), sort dan more
* tput untuk menempatkan cursor pada koordinat tertentu (baris kolom)

sebagai latihan silahkan mengembangkan sendiri script dibawah ini:

#!/bin/bash
#------------------------------------------------------------------
#(C) Moh.fajar Makassar 2001, contoh script buat para linuxer
#file ini adalah public domain, silahkan mendistribusikan kembali
#atau mengubahnya asalkan anda mengikuti aturan - aturan dari GPL
#

menu(){
clear
tput cup 2 8;
echo "SIMPLE DATABASE KPLI"
tput cup 3 11;
echo "1. Entry Data"
tput cup 4 11;
echo "2. Cari Data"
tput cup 5 11;
echo "3. Cetak Data"
tput cup 6 11;
echo "4. Exit"
tput cup 7 9;
read -p "Pilihan anda [1-4] :" pil;
while [ -z $pil ] || [ $pil -lt 1 ] || [ $pil -gt 4 ];
do
tput cup 7 9
read -p "Pilihan anda [1-4] :" pil;
done

}

entry()
{

tput cup 9 27
echo "Enrty data"
tput cup 11 27
echo -n "Nama KPLI :";
read nama;

while [ -z $nama ] || grep $nama $data -q -i;
do
tput cup 13 27
echo "Ops Tidak boleh kosong atau $nama sudah ada";
sleep 3
clear
tput cup 11 27
echo -n "Nama KPLI :";
read nama;
done


tput cup 12 27
echo -n "Kota :";
read kota;
tput cup 13 27
echo -n "Alamat :";
read alamat;
tput cup 14 27
echo -n "Email :";
read email;
tput cup 16 27
echo "Rekam data ke file"
if !(echo $nama:$kota:$alamat:$email>>$data); then
echo "Ops, gagal merekam ke file"
exit 1;
fi
sleep 3;
}


cari(){
tput cup 9 27
echo "Cari data per record"
tput cup 11 27
echo -n "Nama KPLI :";
read nama;
while [ -z $nama ];
do
tput cup 13 27
echo "Ops, nama tidak boleh kosong"
sleep 3;
tput cup 11 27
echo -n "Nama KPLI :";
read nama;
done

if found=`grep $nama $data -n -i`; then
tput cup 12 27
echo -n "Kota :";
echo "$found" | cut -d: -f3
tput cup 13 27
echo -n "Alamat :";
echo "$found" | cut -d: -f4
tput cup 14 27
echo -n "Mail :";
echo "$found" | cut -d: -f5
tput cup 16 27
echo -n "Record ke- $found" | cut -d: -f1
else
tput cup 13 27
echo "Ops, data tidak ditemukan";
fi

}

cetak()
{
tput cup 12 27
echo "Tampilkan Data"
tput cup 13 27
echo -n "1->Ascendig, 2->Descending :"
read mode
clear;
if [ -z $mode ] || [ $mode -eq 1 ]; then
cat $data | sort | more -d
elif [ $mode -eq 2 ]; then
cat $data | sort -r | more -d
else
cat $data | sort | more -d
fi
}


#block utama

data="mydata"

if !(test -e $data); then
if !(touch $data); then
echo "gagal buat file database"
exit 1
fi
fi

lagi='y'
while [ $lagi == 'y' ] || [ $lagi == 'Y' ]
do
menu;
case $pil in
1) entry
;;
2) cari;
;;
3) cetak
;;
4) clear;
exit 0;
;;
*)
echo "$pil, tidak ada dalam pilihan"
;;
esac

tput cup 18 27
echo -n "Ke Menu (y/t): ";
read lagi;
done

clear

tentunya kemampuan script ini dapat kita tambahkan dengan mudah sehingga mendekati program database sesungguhnya, utility seperti tr, paste, egrep, lpr, dll.. cukup baik dan membantu untuk digunakan.