20 April 2009

“DUNIA LINUX”

Apa itu Linux?

Tanpa Operating System (OS)maka sebuah komputer adalah barang rongsokan yang tidak berguna ? Akan tetapi dengan adanya OS di komputer maka komputer akan menjadi perangkat elektronik yang berguna untuk membantu pekerjaan manusia mulai dari untuk menghitung hingga, mendengarkan musik dan nonton film. Contoh OS yang terkenal saat ini adalah Windows, Linux, Solaris dan Apple Macintos.

Jadi secara umum linux adalah operating system yang seperti (kompatibel) UNIX ? Namun secara khusus Linux hanyalah sebuah kernel dari OS yang kemudian dilengkapi dengan aplikasi-aplikasi yang lain sehingga membentuk sebuah operating system.

  • Kentungan menggunakan linux adalah:

    1. Free (bebas)

    2. Mampu berjalan di semua arsitektur komputer

    3. Secure (lebih aman)

      • Kerugian menggunakan linux:

Belum banyak orang yang mau menggunakannya


  • Perbedaan mendasar Linux

Yang membedakan Linux terhadap sistem operasi lainnya adalah harga. Linux jika di bandingkan dengan sistem opersi lain jauh lebih murah dan dapat diperbanyak serta didistribusikan kembali tanpa harus membayar fee atau royalti kepada seseorang. Tetapi ada hal lain yang paling utama yang dapat menjadi bahan pertimbangan harga yaitu mengenai source code. Source code Linux tersedia bagi semua orang sehingga setiap orang dapat terlibat langsung dalam pengembangannya. Kebebasan ini telah memungkinkan para vendor perangkat keras membuat driver untuk device tertentu tanpa harus mendapatkan lisensi source code yang mahal atau menandatangani Non Disclosure Agreement (NDA). Dan juga telah menyediakan kemungkinan bagi setiap orang untuk melihat ke dalam suatu sistem operasi yang nyata dan berkualitas komersial Karena Linux itu tersedia secara bebas di internet, berbagai vendor telah membuat suatu paket distrbusi yang dapat dianggap sebagai versi kemasan Linux. Paket ini termasuk lingkungan Linux lengkap, perangkat lunak untuk instalasi dan mungkin termasuk perangkat lunak khusus dan dukungan khusus.


  • Perbandingan Linux terhadap sistem operasi lainnya

Linux disusun berdasarkan standar sistem operasi POSIX yang sebenarnya diturunkan

berdasarkan fungsi kerja UNIX. UNIX kompatibel dengan Linux pada level system call, yang berarti sebagian besar program yang ditulis untuk UNIX atau Linux dapat direkompilasi dan dijalankan pada sistem lain dengan perubahan yang minimal. Secara umum dapat dikatakan Linux berjalan lebih cepat dibanding UNIX lain pada hardware yang sama. Dan lagi UNIX memiliki kelemahan yaitu tidak bersifat free. MS-DOS memiliki kemiripan dengan Linux yaitu file sistem yang bersifat hirarkis. Tetapi MS-DOS hanya dapat dijalankan pada prosesor x86 dan tidak mendukung multi user dan multi tasking, serta tidak bersifat free. Juga MSDOS tidak memiliki dukungan yang baik agar dapat berinteroperasi dengan sistem operasi lainnya, termasuk tidak tersedianya perangkat lunak network, program pengembang dan program utilitas yang ada dalam Linux. MSWindows menawarkan kemampuan grafis yang ada pada Linux termasuk kemampuan networking tetapi tetap memiliki kekurangan yang ada pada MS-DOS. Windows NT yang juga tersedia untuk Digital Alpha selain prosesor x86. Namun

Windows NT ini masih juga memiliki beberapa kekurangan yang telah ada pada MSDOS. Waktu untuk menemukan suatu bug dalam suatu system operasi ini tak sebanding dengan harga yang harus dibayar. Sistem operasi Apple untuk Macintosh hanya dapat berjalan di sistem Mac. Juga memiliki kekurangan dari sisi ketersediaan perangkat bantu pengembang (development tool) dan juga kurang dapat secara mudah untuk berintoperasi dengan sistem operasi lainnya. Apple juga telah memungkinkan Linux dapat dijalankan pada PowerMac.


  • Sejarah Linux


Nama Linux merupakan kombinasi antara nama penciptanya dan nama sistem operasi yang menjadi targetnya (UNIX). Semuanya berawal dari sebuah sistem operasi bernama Minix. Suatu system UNIX kecil yang dibuat oleh Profesor Andrew Tanenbaum. Torvald adalah salah seorang mahasiswa di Universitas Helsinki yang menggunakan Minix. Walaupun cukup bagus, ia belum menganggap Minix memadai. Kemudian pada tahun 1991 ia membuat sistem operasi yang merupakan clone UNIX, yang diberi nama Linux.

Seperti halnya Minix, Linux tidak menggunakan kode apa pun dari vendor UNIX komersial, sehingga Torvalds mendistribusikan linux di internet secara bebas dan gratis. Pada Oktober 5 1991, Torvalds mengeposkan sistem operasinya di newsgroup comp.os.minix. Ia mengumumkan bahwa source code Linux tersedia dan meminta bantuan programmer-programmer lain untuk ikut mengembangkannya. Ketika itu Linux masih setengah matang, sistem operasi ini hanya bisa menjalankan sedikit perintah UNIX, seperti bash, gcc dan gnu-make. Saat Linux 1.0 diluncurkan pada 1994, sistem operasi ini telah cukup stabil dan memiliki banyak feature, seperti preemptive multitasking (kemampuan untuk membagi sumber daya CPU untuk banyak aplikasi) dan symmetric multiprocessing (kemampuan untuk membagi tugas di antara banyak CPU). Linux bahkan memiliki maskotnya sendiri yang oleh torvalds dijeaskan sebagai “seekor penguin yang menggemaskan dan ramah, yang kekenyangan setelah makan banyak ikan hering”.

Pada 1996, tim pengembangan Linux yang ada diseluruh dunia mulai memberikan hasilnya. Tahun itu mereka telah membuat versi Linux untuk sejumlah versi hardware, dari Atari ST sampai Macintosh.

Linux terus berkembang pesat, utamanya karena ada sejumlah distributor

(seperti RedHat, Caldera, dsb) yang berkompetisi untuk berebut pangsa pasar. Oleh karena itu dibentuk kelompok bernama Linux Standard Base. Kelompok ini bekerja untuk memastikan bahwa beragam distribusi Linux yang ada tetap bisa menjalankan aplikasi yang sama dan saling berinteroperasi.


  • DISTRIBUSI LINUX

Apa yang dimaksud dengan distribusi Linux? Seperti yang kita ketahui bahwa Linux sebagai Open Source Software memiliki unsur bebas untuk didistribusikan. Jadi istilah Linux yang sebenarnya dimaksudkan kernelnya, oleh beberapa perusahaan/komunitas, diberi tambahan-tambahan software dan library lainnya sehingga menjadi sebuah Operating System yang lengkap. RedHat, Mandrake, Debian, Slackware, Suse adalah beberapa nama distribusi Linux yang terkenal di dunia. Mereka masing-masing memiliki ciri khas tersendiri. Produk mereka inilah yang disebut sebagai 'distro'. Kita tidak perlu bimbang dalam memilih distro karena :

1. Semua Distro Linux dibuat berdasarkan kernel yang sama. Versi kernelnya mungkin berbeda (sesuai dengan karakteristik dari perusahaan Distro tersebut. Apakah agresif dengan menggunakan kernel terbaru, atau memilih untuk menggunakan kernel 'lama' yang sudah terkenal stabil), namun tetap saja semua Linux menggunakan dasar kernel yang sama.

2. Perusahaan-perusahaan Distro kemudian menambahkan feature-feature ke atas kernel tersebut sesuai dengan ciri khas mereka. Seperti feature installasi yang memudahkan user, feature Xwindows beserta control panelnya, Paket Office, dll.

Ciri khas dari setiap distro ialah:

  1. RedHat, distribusi yang paling populer, minimal di Indonesia. RedHat merupakan distribusi pertama yang instalasi dan pengoperasiannya mudah.

  2. Mandrake, merupakan varian distro RedHat yang dioptimasi untuk pentium. Kalau komputer kita menggunakan pentium ke atas, umumnya Linux bisa jalan lebih cepat dengan Mandrake.

  3. Caldera Open Linux, distibrusi Linux dengan instalasi dan lingkungan pengguna berbasis grafis yang bagus.

  4. SuSE, distribusi yang sangat terkenal dengan YaST (Yet another Setup Tools) untuk mengkonfigurasi sistem. SuSE merupakan distribusi pertama dimana instalasinya dapat menggunakan bahasa Indonesia.

  5. Slackware, merupakan distribusi yang pernah merajai di dunia Linux. Hampir semua dokumentasi Linux disusun berdasarkan Slackware. Dua hal penting dari Slackware adalah bahwa semua isinya (kernel, library ataupun aplikasinya) adalah yang sudah teruji. Sehingga mungkin agak tua tapi yang pasti stabil. Yang kedua karena dia menganjurkan untuk menginstall dari source sehingga setiap program yang kita install teroptimasi dengan sistem kita. Ini alasannya dia tidak mau untuk menggunakan binary RPM dan sampai Slackware 4.0, ia tetap menggunakan libc5 bukan glibc2 seperti yang lain.

  6. Debian, distribusi yang mengutamakan kestabilan dan kehandalan, meskipun mengorbankan aspek kemudahan dan kemutakhiran program. Debian menggunakan deb dalam paket instalasi programnya.

  7. TurboLinux, distribusi Linux paling populer di Asia yang menyediakan dukungan untuk set karakter khusus Asia.

  8. WinLinux, distro yang dirancang untuk diinstall di atas partisi DOS (WIndows). Jadi untuk menjalankannya bisa di-klik dari Windows. WinLinux dibuat seakan-akan merupakan suatu program aplikasi under Windows Dan masih banyak distro-distro lainnya yang telah tersedia maupun yang akan muncul.




  • KEMAMPUAN LINUX

Di sini akan dijelaskan beberapa kelebihan dari sistem operasi Linux/UNIX dibandingkan dengan dengan sistem operasi yang lain. Dan berikut ini adalah beberapa fakta dari hal-hal yang menguntungkan dengan menggunakan program dan file-file Linux/UNIX :

  • Pada dasarnya semua data tersimpan di dalam harddisk walau ada beberapa kondisi dimana data tersimpan di disket. Linux/UNIX memberikan beberapa proses special dimana terminal, printer dan device hardware lainnya dapat diakses seperti kita mengakses file yang tersimpan dalam harddisk atau disket.

  • Ketika program dijalankan, program tersebut dijalankan dari harddisk ke dalam RAM dan setelah dijalankan akan dinamakan sebagai proses.

  • Linux/UNIX menyediakan servis untuk membuat, memodifikasi program, proses dan file.

  • Linux/UNIX mendukung struktur file yang bersifat hirarki.

  • Linux/UNIX adalah salah satu sistem operasi yang termasuk ke dalam kelas system operasi yang dapat melakukan multitasking. Multitasking sendiri adalah keadaan dimana suatu sistem operasi dapat melakukan banyak kerjaan pada saat yang bersamaan.

  • Selain multitasking, Linux/UNIX juga dapat mendukung multiuser. Yaitu sistem yang pada saat bersamaan dapat digunakan oleh lebih dari satu user yang masuk ke dalam sistem.

  • Bahkan untuk Linux juga mendukung untuk multiconsole dimana pada saat bersamaan di depan komputer langsung tanpa harus melalui jaringan dan memungkinkan lebih dari satu user masuk ke dakam sistem.


  • SISTEM LINUX

  1. Banyak menggunakan tools yang dikembangkan sebagai bagian dari OS BSD (berkeley), X windows sytem (MIT), GNU project (FSF)

  2. Main system library, pertama 􀃆proyek GNU, dikembangkan 􀃆 komunitas linux

  3. Networking-administration tools linux, mengambil kode dari 4.3BSD, tapi kemudian turunannya yaitu freebsd balik mengambil kode-kode dari linux.




  • SEJARAH KERNEL LINUX

Karena akses terhadap perangkat keras terbatas, sedangkan ada lebih dari satu program yang harus dilayani dalam waktu yang bersamaan, maka kernel juga bertugas untuk mengatur kapan dan berapa lama suatu program dapat menggunakan satu bagian perangkat keras tersebut. Hal tersebut dinamakan sebagai multiplexing. Akses kepada perangkat keras secara langsung merupakan masalah yang kompleks, oleh karena itu kernel biasanya mengimplementasikan sekumpulan abstraksi hardware. Abstraksi-abstraksi tersebut merupakan sebuah cara untuk menyembunyikan kompleksitas, dan memungkinkan akses kepada perangkat keras menjadi mudah dan seragam. Sehingga abstraksi pada akhirnya memudahkan pekerjaan programer. Untuk menjalankan sebuah komputer kita tidak harus menggunakan kernel sistem operasi. Sebuah program dapat saja langsung di-load dan dijalankan diatas mesin 'telanjang' komputer, yaitu bilamana pembuat program ingin melakukan pekerjaannya tanpa bantuan abstraksi perangkat keras atau bantuan sistem operasi. Teknik ini digunakan oleh komputer generasi awal, sehingga bila kita ingin berpindah dari satu program ke program lain, kita harus mereset dan meload kembali program-program tersebut.

  • Ada 4 kategori kernel:

1.Monolithic kernel. Kernel yang menyediakan abstraksi perangkat keras yang kaya dan tangguh.

2.Microkernel. Kernel yang menyediakan hanya sekumpulan kecil abstraksi perangkat keras sederhana, dan menggunakan aplikasi-aplikasi yang disebut sebagai server untuk menyediakan fungsi-fungsi lainnya.

3.Hybrid (modifikasi dari microkernel). Kernel yang mirip microkernel, tetapi ia juga memasukkan beberapa kode tambahan di kernel agar ia menjadi lebih cepat

4.Exokernel. Kernel yang tidak menyediakan sama sekali abstraksi hardware, tapi ia menyediakan sekumpulan pustaka yang menyediakan fungsi-fungsi akses ke perangkat keras secara langsung atau hampir-hampir langsung.

Dari keempat kategori kernel yang disebutkan diatas, kernel Linux termasuk kategori monolithic kernel. Kernel Linux

berbeda dengan sistem Linux. Kernel Linux merupakan sebuah perangkat lunak orisinil yang dibuat oleh komunitas Linux, sedangkan sistem Linux, yang dikenal saat ini, mengandung banyak komponen yang dibuat sendiri atau dipinjam dari proyek pengembangan lain. Kernel Linux pertama yang dipublikasikan adalah versi 0.01, pada tanggal 14 Maret 1991. Sistem berkas yang didukung hanya sistem berkas Minix. Kernel pertama dibuat berdasarkan kerangka Minix (sistem UNIX kecil yang dikembangkan oleh Andy Tanenbaum). Tetapi, kernel tersebut sudah mengimplementasi proses UNIX secara tepat. Pada tanggal 14 Maret 1994 dirilis versi 1.0, yang merupakan tonggak sejarah Linux. Versi ini adalah kulminasi dari tiga tahun perkembangan yang cepat dari kernel Linux. Fitur baru terbesar yang disediakan adalah jaringan. Versi 1.0 mampu mendukung protokol standar jaringan TCP/IP. Kernel 1.0 juga memiliki sistem berkas yang lebih baik tanpa batasan-batasan sistem berkas Minix. Sejumlah dukungan perangkat keras ekstra juga dimasukkan ke dalam rilis ini. Dukungan perangkat keras telah berkembang termasuk diantaranya floppy-disk, CD-ROM, sound card, berbagai mouse dan keyboard internasional. Dukungan juga diberikan terhadap modul kernel yang loadable dan unloadable secara dinamis.

Satu tahun kemudian dirilis kernel versi 1.2. Kernel ini mendukung variasi perangkat keras yang lebih luas. Pengembang telah memperbaharui networking stack untuk menyediakan support bagi protokol IPX, dan membuat implementasi IP lebih lengkap dengan memberikan fungsi accounting dan firewalling. Kernel 1.2 ini merupakan kernel Linux terakhir yang PC-only. Konsentrasi lebih diberikan pada dukungan perangkat keras dan memperbanyak implementasi lengkap pada fungsi-fungsi yang ada. Pada bulan Juni 1996, kernel Linux 2.0 dirilis. Versi ini memiliki dua kemampuan baru yang penting, yaitu dukungan terhadap multiple architecture dan multiprocessor architectures. Kode untuk manajemen memori telah diperbaiki sehingga kinerja sistem berkas dan memori virtual meningkat. Untuk pertama kalinya, file system caching dikembangkan ke networked file systems, juga sudah didukung writable memory mapped regions. Kernel 2.0 sudah memberikan kinerja TCP/IP yang lebih baik, ditambah dengan sejumlah protokol jaringan baru. Kemampuan untuk memakai remote netware dan SMB (Microsoft LanManager) network volumes juga telah ditambahkan pada versi terbaru ini. Tambahan lain adalah dukungan internal kernel threads, penanganan dependencies antara modul-modul loadable, dan loading otomatis modul berdasarkan permintaan (on demand). Konfigurasi dinamis dari kernel pada run time telah diperbaiki melalui konfigurasi interface yang baru dan standar.

Semenjak Desember 2003, telah diluncurkan Kernel versi 2.6, yang dewasa ini (2007) telah mencapai patch versi 2.6.21.1 (http://kambing.ui.edu/kernel-linux/v2.6/). Hal-hal yang berubah dari versi 2.6 ini ialah:

- Subitem M/K yang dipercanggih.

- Kernel yang pre-emptif.

- Penjadwalan Proses yang dipercanggih.

- Threading yang dipercanggih.

- Implementasi ALSA (Advanced Linux Sound Architecture) dalam kernel.

Dukungan sistem berkas seperti: ext2, ext3, reiserfs, adfs, amiga ffs, apple macintosh hfs, cramfs, jfs, iso9660, minix, msdos, bfs, free vxfs, os/2 hpfs, qnx4fs, romfs, sysvfs, udf, ufs, vfat, xfs, BeOS befs (ro), ntfs (ro), efs (ro).


  • KERNEL LINUX

  1. Linux 0.01 (14 Mei 1991) 1st publish

  • Hanya dapat berjalan pada prosessor Intel kompatibel-80386 dan pada hardware PC Mempunyai device-driver support yang terbatas

  • Sistem berkas yg didukung hanya Minix

  1. Linux 1.0 (Maret 1994)

  • Mendukung protokol standar jaringan TCP/IP

  • Memiliki sistem berkas yang lebih baik tanpa batasanbatasan Minix

  • Support for a range of SCSI controllers for high-performance disk access

  • Extra hardware support

  1. Linux 1.2 (Maret 1995) versi terakhir PC-only

  2. Linux 2.0 (Juni 1996)

  • Mendukung multiple architecture & multiprocessor architecture

  • Improved memory-management code

  • Improved TCP/IP performance

  • Mendukung internal kernel threads, penanganan dependency antara modul-modul loadable, dan loading otomatis berdasarkan permintaan (on demand).

  • Standardisasi interface konfigurasi



  • LISENSI LINUX

Perkembangan Linux yang begitu cepat tidak terlepas dari kenyataan bahwa Linus merilis kernel Linuxnya tersebut menggunakan lisensi GPL (General Public License). Dimana GPL ini adalah jenis lisensi yang dikeluarkan oleh Free Software Foundation). Lisensi GPL ini menjamin 4 Freedom:


Freedom to Use.

Freedom to see the source code. Kebebasan untuk melihat kode sumbernya.

Freedom to modify. Kebebasan untuk memodifikasinya.

Freedom to distribute. Kebebasan untuk mendistribusikannya.

Software-sofware yang menggunakan lisensi GPL sering pula disebut sebagai Open Source Software, yang mana merupakan kebalikan dari softwaresoftware yang disebut dengan closed source atau proprietary software (seperti Microsoft Windows, dll). Software-software Open Source ini kelihatannya kalah gengsi dengan software yang closed source, tetapi sebenarnya tidak jarang justru ia memiliki kualitas yang lebih bagus. Sebab metode pendevelopannya melibatkan banyak programmer dari seluruh dunia. Jadi bila ada kode program yang tidak baik/mencurigakan, para programmer lainnya akan dapat segera mengetahuinya dan memperbaikinya. Berbeda dengan closed source program yang hanya diketahui oleh perusahaan pembuatnya.


  • PRINSIP DESAIN

  • Secara keseluruhan linux menyerupai UNIX, dimana kernel nya merupakan nonmicrokernel

  • Linux adalah sebuah sistem yang multiuser, multitasking dengan tools kompatibel UNIX yang Lengkap.

  • Sistem file-nya mengikuti semantic UNIX tradisional dan mengimplementasikan secara penuh standar model network UNIX

  • Tujuan utama desain adalah kecepatan, efisiensi, dan standarisasi.

  • Didesain agar sesuai dengan dokumen POSIX yang relevan. Sedikitnya ada dua distribusi linux yang sudah memperoleh sertifikasi ofisial POSIX.











  • KOMPONEN LINUX








Kernel, core dari linux yang mengatur segala sumber daya dari sistem operasi. System libraries, himpunan standar dari fungsifungsi melalui mana aplikasi-aplikasi berinteraksi dan yang mengimplementasikan sebagian besar dari fungsi-fungsi sistem operasi yang tidak membutuhkan hak-hak dari kode kernel. System utilities, melakukan tugas-tugas manejemen tertentu secara individual.


  • MODUL KERNEL

Bagian dari kernel linux yang dapat dikompilasi, dipanggil dan dihapus secara terpisah dari bagian kernel lainnya saat dibutuhkan. Keuntungan modul kernel :

  • Menambah fungsionalitas kernel tanpa mereboot sistem,

  • Meningkatkan fungsionalitas tanpa harus membuat sebuah kernel monolitik,

  • Memungkinkan sistem berjalan pada kernel standar yang minimal.

  • Tiga komponen modul yang didukung linux:

  1. Manajemen modul, system harus memastikan diri bahwa symbol–symbol dalam kernel mempunyai reference yang tepat.

  2. Driver registration, menggunakan tabel yang berisi info mengenai driver yang ada dan menyediakan suatu fungsi agar dapat menambahkan driver baru. Tabel tsb berisi:

  • Device driver,

  • File system,

  • Network protocols,

  • Binary format.


  • Conflict resolution mechanism, tujuan:

  • Mencegah modul berebut akses terhadap suatu perangkat keras,

  • Mencegah autoprobes mengusik keberadaan driver yang telah ada,

  • Menyelesaikan konflik di antara sejumlah driver yang berusaha mengakses perangkat keras yang sama.


  • BAGIAN PENTING KERNEL LINUX

Kernel Linux terdiri dari beberapa bagian penting, seperti : manajemen proses, manajemen memori, hardware device drivers, filesystem drivers, manajemen jaringan dan lain-lain. Namun bagian yang terpenting ialah manajemen proses dan manajemen memori. Manajemen memori menangani daerah pemakaian memori, daerah swap, bagian-bagian kernel dan untuk buffer cache. Manajemen proses menangani pembuatan proses-proses dan penjadwalan proses. Pada bagian dasar kernel berisi hardware device drivers untuk setiap jenis hardware yang didukung.


  • RANGKUMAN

  1. Yang membedakan Linux terhadap sistem operasi lainnya adalah harga. Linux jika di bandingkan dengan sistem opersi lain jauh lebih murah dan Source code Linux tersedia bagi semua orang sehingga setiap orang dapat terlibat langsung dalam pengembangannya.

  2. Linux pada level system call, yang berarti sebagian besar program yang ditulis untuk UNIX atau Linux dapat direkompilasi dan dijalankan pada sistem lain dengan perubahan yang minimal

  3. hal-hal yang menguntungkan dengan menggunakan program dan file-file Linux/UNIX :

  4. Pada dasarnya semua data tersimpan di dalam harddisk walau ada beberapa kondisi dimana data tersimpan di disket.

  • Ketika program dijalankan, program tersebut dijalankan dari harddisk ke dalam RAM dan setelah dijalankan akan dinamakan sebagai proses.

  • Linux/UNIX menyediakan servis untuk membuat, memodifikasi program, proses dan file.

  • Linux/UNIX mendukung struktur file yang bersifat hirarki.

  • Linux/UNIX adalah salah satu sistem operasi yang termasuk ke dalam kelas system operasi yang dapat melakukan multitasking.

  • Selain multitasking, Linux/UNIX juga dapat mendukung multiuser.

  • Bahkan untuk Linux juga mendukung untuk multiconsole





  1. Ada 4 kategori kernel:

    • Monolithic kernel

    • Microkernel. Kernel

    • Hybrid

    • Exokernel.


  1. Linux hanyalah sebuah kernel dari OS yang kemudian dilengkapi dengan aplikasi-aplikasi yang lain sehingga membentuk sebuah operating system

Tidak ada komentar:

Posting Komentar

Tentang Saya

Label