Senin, 17 Desember 2012

Studi Kasus Linux




Kernel Linux pada mulanya ditulis sebagai proyek hobi oleh pelajar di Universitas Finland linus Torvalds yang belajar di Universitas Helsinki, untuk membuat kernel Minix yang gratis dan dapat diedit. )Minix adalah  proyek pembelajaran menyerupai UNIX yang dibuat untuk mudah dibuatkan dan bukan digunakan secara komersial.). pada September 1991 versi 0.01 di luncurkan ke Internet dan  versi 0.02 pada 5 oktober 1991 selanjutnya beribu programmer di dunia telah menyertai proyek ini.
Sistem operasi Linux berkaitan erat dengan proyek dari GNU oleh Richard Stallman di tahun 1983, dengan proyek pengembangan free SoftWare yang didasari bahwa “Perangkat lunak seharusnya tidak menyertakan batasan apapun saat diterima oleh pengguna.”(GPL:General Public License).
                Proyek ini bertujuan untuk membuat system operasi lengkap-kompiler, utility aplikasi, utility pembuatan dan program lainnya sehingga dapat membentuk suatu system yang dapat di gunakan dengan Lisensi GNU. Di tahun 1991 proyek GNU telah menghasilkan semua komponen system kecuali kernel, yang merupakan komponen utama sebuah system operasi lengkap, lalu Torvalds mengisi kekosongan itu dengan kernel buatanya, yang dapat berjalan dengan komponen GNU. Semua aplikasi GNU beserta kernel buatan Torvald dan sukarelawan lainnya itulah yang membentuk suatu Sistem operasi lengkap yang bernama Linux. Namun Stallman keberatan dengan nama Linux karena seolah menganulir kontribusi GNU yang mengembangkan banyak sekali aplikasi sehingga Linux dan Kernel dapat berjalan secara umum. Karena itu setiap penyebutan Linux disertakan nama GNU menjadi GNU/Linux untuk mendefinisikan kontribusi dari kernel buatan Torvald dan aplikasi pendukung dari GNU, namun kalangan umum nama Linux sudah sangat dikenal, hingga GNU mengembangkan kernel sendiri yaitu Kernel Hurd yang belum terselesaikan sampai tahun 2008.
A.      Distribusi Linux
Banyak sekali versi atau distribusi Linux (lebih dikenal distro), yang dibuat oleh individu , Group, dan lembaga lain. Masing-masingnya menyertakan aplikasi tambahan yang dapat diinstal di PC pengguna, selain itu ada yang menyertakan suatu program lengkap yang dapat dijalankan langsung lewat booting CD.
Inti bagi setiap distro Linux adalah Kernel Linux, koleksi program dari proyek GNU, Shell, dan atur cara utility seperti pustaka (library), Compiler, dan pengedit (editor). Kebanyakan system juga menyertakan atur cara dan utility yang bukan dari GNU contohnya aturcara dan utility dari BSD dan sistem Window-X yang menyediakan Antar muka Grafis (GUI) yang merupakan asas bagi system Linux.
B.      Aplikasi UNDER LINUX
Pengguna Linux yang mengkonfigurasi system sendiri(Hacker atau Geek) lebih cenderung mengerti teknologi dibandingkan pengguna Microsoft Windows atau Mac OS. Namun Stereotipe ini semakin berkurang seiring dengan peningkatan sifat user Friendly dan makin liuasnya distro Linux. Linux telah membuat pencapaian terbaik dalam pasaran computer server dan computer untuk fungsi khusus. Contohnya mesin scan dan web server. Linux juga banyak digunakan dalam computer desktop.
Linux yang mendarsarkan pada kombinasi program-server LAMP (Linux, Apache, MySQL,Perl/PHP, Python.) sangat popular di kalangan developer web.
Linux mulai sering digunakan sebagai system operasi Embedded, karena biayanya yang murah dan dengan tampilan desktop seperti KDE dan GNOME dan tampilan yang lebih menyerupai Apple Machintos dan Microfoft Windows dari pada interface seperti Unix.
C.      Perbedaan mendasar Linux
Salah satu hal yang membedakan Linux adalah harganya yang cenderung murah dan dapat diperbanyak serta di distribusikan tanpa harus membayar fee atau royalty kepada seseorang, selain itu source code Linux dapat di kembangan sendiri.
Perbandingan Linux terhadap system operasi lainnya :
·         UNIX kompatibel dengan Linux pada level system call, ini berarti sebagian program yang di tulis untuk UNIX atau Linux dapat di rekompilasi dan di jalankan pada system yang lain dengan perubahan yang minimal. Secara umum Linux bekerja lebih cepat ketimbang UNIX lain pada HardWare yang sama, dan lagi UNIX memiliki kelemahan(tidak Free).
·         MS-Windows dikenal dengan system grafis User-Friendly, namun kemampuan mengolah perintah pada command line interface-nya tidak dikembangkan, windows bersifat single user-multi tasking. Linux memiliki tampilan GUI yang lebih menarik dan bervariasi, kemampuan shell (console) juga masih tetap unggul, konvigurasi system dapat di lakukan di tampilan GUI maupun console. Linux adalah operating system yang Multi User-Multi Tasking.
·         MacOS hanya berjalan pada computer Apple, keluaran terbarunya sudah dapat di install pada prosesor Intel Core Duo, namun memiliki kekurangan dari sisi ketersediaan perangkat bantu pengembang (development tool) dan juga kurang dapat secara mudah berinteroperasi dengan system operasi lainnya. Linux dapat berjalan di mesin Apple (Power Mac), dengan semua tipe prosesor yang ada.
Kelebihan Linux :
·         Linux memberikan beberapa proses special dimana terminal, printer dan device hardware lainnya dapat di akses seperti halnya kita mengakses file yang tersimpan pada hard disk.
·         Linux menyediaka service untuk membuat, memodifikasi  program, proses dan file
·         Linux memiliki kegiatan Multitasking-multiuser.
D.      Prinsip Rancangan
Linux menyerupai implementasi UNIX non-Microkernel yang lain. Ia adalah system yang multi–user, multitasking, dengan alat-alat UNIX-Compatible yang lengkap. System berkar Linux mengikuti semantik tradisional UNIX, dan model jaringan standar UNIX di implementasikan secara keseluruhan. Ciri internal desain Linux telah dipengaruhi oleh sejarah system operasi ini.
E.       Prinsip Desain Linux
Awalnya Linux mengimplementasikan fungsi UNIX, namun cepat dan efisien merupakan tujuan desain yang terpenting, maka dari itu perkembangan Linux lebih pada tujuan standarisasi POSIX yang terdiri dari kumpulan spesifikasi dari aspek berbeda kelakuan system operasi. Ada dokumen POSIX untuk fungsi system operasi biasa dan untuk ekstensi seperti proses untuk thread dan operasi realtime. Linux didesain agar sesuai dengan dokumen POSIX yang relevan.
Linux merujuk pada semantic SVR4 UNIX dari pada kelakuan BSD, selain  standar POSIX, Linux saat ini didukung eksistensi thread POSIX dan subset dari eksistensi untuk control real time POSIX.
F.       Komponen Sistem Linux
Linux terdiri atas tiga bagian kode penting, yaitu :
·         Kernel : bertanggung jawab memelihara semua abstraksi penting dari system operasi, termasuk proses-proses dan memori virtual. Kernel terdiri atas beberapa bagian terpenting seperti :
1.       Manejemen proses
2.       Manejemen memori
3.       Hardware device drivers
4.       Filesystem drivers
5.       Manajemen jaringan dan lain-lain
·         Perpustakaan Sistem (System Library) : menentukan kumpulan fungsi standar dimana aplikasi dapat berinteraksi dengan kernel, dan mengimplementasi hampir semua fungsi system operasi yang tidak memerlukan hak penuh atas kernel.
·         Utilitas Sistem (System Utility) :adalah program yang melakukan pekerjaan manajement secara individu dan khusus.
G.     Fitur-Fitur pada Sistem Operasi Linux
·         Multitasking: beberapa proses dapat berjalan pada satu saat.
·         Multiuser: beberapa user di mesin yang sama pada satu saat.
·         Multiplatform: system operasi Linux berjalan di banyak CPU berbeda
·         Multiprosesor: mendukung SMP (Symmentric multiprocessing) untuk intel, SPARK dan platform lain.
·         Mode protected: berjalan pada mode protected intel x86
·         Memenuhi IEEE POSIX.1
·         Memiliki proteksi memori sehingga bug di satu program tidak menyebabkan seluruh program down
·         Mengimplementasikan Demand Page Loaded executable
·         Shared copy on write pages antara executables
·         Virtual memori yang menggunakan system paging
·         Mengimplementasikan unified memory pool untuk program disk cache
·         Mengimplementasikan dynamically linked share libraries
·         Post-mortem analysis untuk debugging
·         iBCS2-complaint emulation module
·         Semua kode sumber yang ada tersedia, termasuk kernel dan driver sehingga memudahkan pengembangan program user
·         POSIX Job Control: digunakan pada shell csh dan bash
·         Customized Keyboard
·         Multiple virtual consoles
·         Hampir semua file system dapat di implementasikan
·         Pengaksesan transparan ke partisi MS-DOS
·         System UMSDOS memungkinkan Linux di install pada MS-DOS
·         Pengimplementasian TCP/IP networking
·         Mendukung system file HPFS-2 read only for OS/2
·         Mendukung system file HFS (Machintos) sebagai modul terpisah
·         Dapat membaca system file CD-ROM
·         Terdapart pada Apple Talk Server
·         Dapat sebagai Netware Client dan berhubungan dengan Netware server
·         Dapt sebagai LAN manager client
·         Protocol jaringan cukup lengkap 

  
 
    Sumber : Abas All Pangera dan Dony Ariyus. 2010. “Sistem Operasi”. Yogyakarta:Penerbit Andi