Myspace Comments, Glitter Graphics at GlitterYourWay.com

Senin, 08 Juni 2009

Modul Kernel Linux

Pengertian Modul Kernel Linux

Modul kernel Linux adalah bagian dari kernel Linux yang dapat dikompilasi, dipanggil dan dihapus secara terpisah dari bagian kernel lainnya saat dibutuhkan. Modul kernel dapat menambah fungsionalitas kernel tanpa perlu me-reboot sistem. Secara teori tidak ada yang dapat membatasi apa yang dapat dilakukan oleh modul kernel. Kernel modul dapat mengimplementasikan antara lain device driver, sistem berkas, protokol jaringan.

Modul kernel Linux memudahkan pihak lain untuk meningkatkan fungsionalitas kernel tanpa harus membuat sebuah kernel monolitik dan menambahkan fungsi yang mereka butuhkan langsung ke dalam image dari kernel. Selain hal tersebut akan membuat ukuran kernel menjadi lebih besar, kekurangan lainnya adalah mereka harus membangun dan me-reboot kernel setiap saat hendak menambah fungsi baru. Dengan adanya modul maka setiap pihak dapat dengan mudah menulis fungsi-fungsi baru dan bahkan mendistribusikannya sendiri, di luar GPL.

Kernel modul juga memberikan keuntungan lain yaitu membuat sistem Linux dapat dinyalakan dengan kernel standar yang minimal, tanpa tambahan device driver yang ikut dipanggil. Device driver yang dibutuhkan dapat dipanggil kemudian secara eksplisit maupun secara otomatis saat dibutuhkan.

Terdapat tiga komponen untuk menunjang modul kernel Linux. Ketiga komponen tersebut adalah manajemen modul, registrasi driver, dan mekanisme penyelesaian konflik. Berikut akan dibahas ketiga komponen pendukung tersebut.

Manajemen Modul Kernel Linux

Manajemen modul akan mengatur pemanggilan modul ke dalam memori dan berkomunikasi dengan bagian lainnya dari kernel. Memanggil sebuah modul tidak hanya memasukkan isi binarinya ke dalam memori kernel, namun juga harus dipastikan bahwa setiap rujukan yang dibuat oleh modul ke simbol kernel atau pun titik masukan diperbaharui untuk menunjuk ke lokasi yang benar di alamat kernel. Linux membuat tabel simbol internal di kernel. Tabel ini tidak memuat semua simbol yang didefinisikan di kernel saat kompilasi, namun simbol-simbol tersebut harus diekspor secara eksplisit oleh kernel. Semua hal ini diperlukan untuk penanganan rujukan yang dilakukan oleh modul terhadap simbol-simbol.

Pemanggilan modul dilakukan dalam dua tahap. Pertama, utilitas pemanggil modul akan meminta kernel untuk mereservasi tempat di memori virtual kernel untuk modul tersebut. Kernel akan memberikan alamat memori yang dialokasikan dan utilitas tersebut dapat menggunakannya untuk memasukkan kode mesin dari modul tersebut ke alamat pemanggilan yang tepat. Berikutnya system calls akan membawa modul, berikut setiap tabel simbol yang hendak diekspor, ke kernel. Dengan demikian modul tersebut akan berada di alamat yang telah dialokasikan dan tabel simbol milik kernel akan diperbaharui.

Komponen manajemen modul yang lain adalah peminta modul. Kernel mendefinisikan antarmuka komunikasi yang dapat dihubungi oleh program manajemen modul. Saat hubungan tercipta, kernel akan menginformasikan proses manajemen kapan pun sebuah proses meminta device driver, sistem berkas, atau layanan jaringan yang belum terpanggil dan memberikan manajer kesempatan untuk memanggil layanan tersebut. Permintaan layanan akan selesai saat modul telah terpanggil. Manajer proses akan memeriksa secara berkala apakah modul tersebut masih digunakan, dan akan menghapusnya saat tidak diperlukan lagi.

Registrasi Driver

Untuk membuat modul kernel yang baru dipanggil berfungsi, bagian dari kernel yang lain harus mengetahui keberadaan dan fungsi baru tersebut. Kernel membuat tabel dinamis yang berisi semua driver yang telah diketahuinya dan menyediakan serangkaian routines untuk menambah dan menghapus driver dari tabel tersebut. Routines ini yang bertanggung-jawab untuk mendaftarkan fungsi modul baru tersebut.

Hal-hal yang masuk dalam tabel registrasi adalah:

  • device driver

  • sistem berkas

  • protokol jaringan

  • format binari

Resolusi Konflik

Keanekaragaman konfigurasi perangkat keras komputer serta driver yang mungkin terdapat pada sebuah komputer pribadi telah menjadi suatu masalah tersendiri. Masalah pengaturan konfigurasi perangkat keras tersebut menjadi semakin kompleks akibat dukungan terhadap device driver yang modular, karena device yang aktif pada suatu saat bervariasi.

Linux menyediakan sebuah mekanisme penyelesaian masalah untuk membantu arbitrasi akses terhadap perangkat keras tertentu. Tujuan mekanisme tersebut adalah untuk 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.

Kernel membuat daftar alokasi sumber daya perangkat keras. Ketika suatu driver hendak mengakses sumber daya melalui M/K port, jalur interrupt, atau pun kanal DMA, maka driver tersebut diharapkan mereservasi sumber daya tersebut pada basis data kernel terlebih dahulu. Jika reservasinya ditolak akibat ketidaktersediaan sumber daya yang diminta, maka modul harus memutuskan apa yang hendak dilakukan selanjutnya. Jika tidak dapat melanjutkan, maka modul tersebut dapat dihapus.



Linux Sebagai Alternatif
Sistem Operasi PDA
Linux Sebagai Alternatif Sistem Operasi PDA
Page 3 of 12
I. Pendahuluan
Teknologi informasi sangat diperlukan semua orang terutama untuk kalangan
profesional, bisnis, science, dan sebagainya. Bermacam-macam produk bermunculan
dipasaran untuk mendukung kebutuhan teknologi informasi terutama untuk aplikasi mobile.
Salah satunya yang saat ini sedang mengalami perkembangan cukup pesat adalah Personal
Digital Assitants.
Seperti umumnya komputer PC, PDA juga menggunakan sistem operasi, tersedia
bermacam-macam sistem operasi untuk PDA seperti Windows CE, Pocket PC, EPOC,
Symbian OS, Palm OS, dan sebagainya tersedia di masing-masing vendor tetapi seperti
layaknya pula komputer PC sistem operasi komersil itu cukup mahal dan menambah biaya
dalam pembelian PDA dan bersifat kurang customizeable, Linux sebagai sistem operasi
gratis yang open source dan bersifat GNU (GNU is Not Unix) General Public License dan
customizeable juga telah berhasil di- port ke sistem PDA hal ini menimbulkan banyak
pertanyaan dikalangan pemakai PDA apakah Linux mampu untuk berkompetisi dengan
sistem operasi komersil.
II. PDA dan Sistem Operasi PDA
II.1 Definisi PDA
PDA merupakan singkatan dari Personal Digital Assistant yang jika dilihat dari katakata
dasarnya :
- Personal
Sesuatu yang halnya bersifat pribadi dan selalu berada dimanapun kita berada
- Digital
Bersifat digital, jadi merupakan benda elektronik dan seluruh data dan aplikasinya
adalah digital, atau dengan kata lain komputer
- Assistant
Sesuatu/seseorang yang bertugas sebagai asisten dan membantu kegiatan kita yang
mungkin dapat dianalogikan dengan sekretaris.
Linux Sebagai Alternatif Sistem Operasi PDA
Page 4 of 12
Jadi PDA adalah komputer saku yang didesain sebagai personal organizers. PDA
memiliki fungsi dasar seperti pengaturan jadwal, buku alamat, catatan tugas, dan memo
yang dapat disinkronisasikan dengan komputer PC.
II.2 Sejarah PDA
Pada tahun 1993, Apple Computer Inc. memperkenalkan pada dunia PDA yang
pertama Newton®. Diberi nama oleh John Sculley seorang mantan pemimpin Apple
Computer Inc. Sculley meramalkan PDA akan menjadi alat yang digunakan secara universal
yang dapat menyimpan nomor telepon, kalender, catatan, dan komunikasi data wireless.
Pada tiga tahun pertama penjualan PDA tidak menunjukkan hasil yang memuaskan.
Kemudian pada bulan Maret 1996, PalmTM memperkenalkan PalmPilot komputer saku yang
benar-benar mengesankan. Sebuah devais yang kecil tapi memiliki banyak kemampuan
yang dapat membantu untuk memanage dan mengatur jadwal.
II.3 Sistem Operasi pada PDA
II.3.1 Palm OS
Palm OS adalah sistem operasi komputer yang menjadi platform dari PDA PalmPilot
yang merupakan produksi Palm Computing yang sekarang merupakan bagian dari 3Com.
Palm OS di desain untuk tepat pada devais ukuran telapak tangan dari ukuran tertentu
dengan ukuran layar tertentu pula. 3Com mengatakan bahwa PalmPilot lebih sukses
dikarenakan pendekatan yang dilakukan terfokus, memang Microsoft Windows CE dan
Symbian’s EPOC adalah sistem operasi untuk devais jenis genggam pula tetapi didesain
untuk area devais yang lebih luas.
Gb1. Sebuah PDA Gb. 2 Contoh Fungsi Jadwal dan Contact List dalam PDA
Linux Sebagai Alternatif Sistem Operasi PDA
Page 5 of 12
Palm OS menggunakan multitasking, tetapi hanya satu task untuk setiap aplikasi.
Pengguna menggunakan satu aplikasi pada waktu tertentu, satu program apikasi harus
selesai sebelum yang berikutnya dapat dipilih. Pembatasan ini membuat sistem operasi
mendedikasikan penuh perahatian pada aplikasi yang terbuka. Space yand dibutuhkan oleh
sistem untuk setiap aplikasi yang berjalan adalah bersifat dinamis, reusable random access
memory (RAM). Aplikasi dan database yang berhubungan disimpan dalam tempat
penyimpanan permanen, tetapi tempat penyimpanan permanen itu adalah RAM (bukan hard
disk). Palm OS membagi sebuah aplikasi menjadi code yang dapat dijalankan dan tipe
elemen data yang berbeda, seperti elemen antar muka (user interface) dan icons. Elemen
data dapat diubah dengan mudah tanpa perlu menulis ulang code.
Palm Computing supports Metrowerks' CodeWarrior sebagai pengembang software
yang resmi (official software development kit / SDK) menggunakan sebuah Macintosh atau
Windows.
Kelebihan PalmOS dibandingkan dengan sistem operasi lainnya adalah Palm
memiliki kebutuhan sistem yang sedikit dan cepat sehingga tidak dibutuhkan perangkat
PDA yang canggih dan mahal. Tetapi hal inilah yang menyebabkan PalmPilot jarang
memiliki fasilitas voice, dan layar berwarna.
II.3.2 EPOC
EPOC adalah sebuah sistem operasi yang didesain untuk komputer-telepon yang
portable dan kecil dengan akses wireless ke telepon dan servis informasi lainnya. EPOC
berbasiskan dari sistem operasi sebelumnya dari Psion, pembuat PDA yang mayoritas
pertama. Nama EPOC berasal dari kepercayaan perusahaan dengan kalimat: “a new epoch
of personal convenience.”
Psion menyatakan versi pertama dari EPOC sebagai sistem operasi yang terbuka dan
melisensikannya ke perusahaan pembuat perlengkapan lainnya. Psion kemudian membentuk
perusahaan baru dengan Ericsson, Nokian, dan Motorola yang kemudian disebut Symbian.
Symbian sekarang melisensi EPOC dan terus mengembangkannya. EPOC adalah alternatif
untuk perusahaan pembuat PDA selain Windows CE.
EPOC adalah sistem operasi 32-bit yang mendukung GUI berbasis pen. EPOC
dibuat dalam bahasa pemrograman C++. Codenya sangat sederhana sehingga dapat
dimuatkan pada chip ROM yang kecil.
Linux Sebagai Alternatif Sistem Operasi PDA
Page 6 of 12
Walaupun EPOC dapat di-port ke microprocessor yang lain, Symbian lebih memilih
platform berarsitektur Advanced RISC Machines (ARM). Symbian memperkirakan ARM
adalah platform terbaik dalam hal millions of instructions per second (MIPS) biaya per watt
dan per dollar. Symbian menyediakan peralatan pengembangan untuk C++, OPL (bahasa
pemrograman seperti BASIC, dan Java. Programer menulis program pada komputer PC dan
menggunakan emulator untuk melakukan test.
Berdasarkan informasi terakhir yang didapatkan Symbian juga diterapkan pada
handphone. Seperti Nokia 7650, Nokia 9210, Ericsson R380, dan sebagainya.
II.3.2 Windows CE / POCKET PC
Windows CE berbasiskan pada sistem operasi Microsoft Windows, tetapi didesain
untuk diterapkan pada devais mobile. Walaupun Microsoft tidak menjelaskan mengapa
digunakan kata “CE” dilaporkan bahwa CE berarti “Consumer Electronics.” Windows CE
digunakan pada beberapa merek dari komputer genggam dan sebagai bagian dari kotak settop
dari TV kabel yang dimasukkan untuk TCI.
Windows CE bersaing dengan EPOC dan juga PalmOS. Seperti layaknya sistem
operasi Windows, Windows CE adalah sistem operasi 32-bit, multitasking, dan
multithreading. Microsoft menekankan bahwa sistem tersebut dikembangkan dari coretan
yang mengambil kelebihan dari konsep dan interface arsitektur Windows.
Sebagai tambahan pada komputer genggamg dan kotak TV kabel, Window CE juga
menawarkan sistem operasi untuk Auto PC, konsep Microsoft untuk mengontrol aplikasi
(seperti memilih saluran radio) ketika pengguna mengemudi mobil, menggunakan teknologi
suara yang interaktif.
Pocket PC adalah Windows CE versi 3.0, Windows memberi nama yang berbeda
dikarenakan Pocket PC berbasiskan pada Windows 2002 atau dikenal sebagai Windows XP.
Baik tampilan maupun fungsi-fungsinya mendekati dengan Windows XP, tetapi untuk
mendapatkan performa yang diinginkan maka dibutuhkan perangkat PDA yang mahal pula.
Kelebihan Windows CE adalah fungsi-fungsinya dan aplikasinya yang lengkap serta
disertai dengan layar berwarna, tetapi hal ini pula yang menyebabkan diperlukannya
perangkat PDA yang canggih dan mahal.
Linux Sebagai Alternatif Sistem Operasi PDA
Page 7 of 12
III. Linux Sebagai Sistem Operasi Alternatif
Linux adalah suatu sistem operasi yang mirip dengan UNIX dan bersifat open source
GNU General Public License. Yang artinya source code dari Linux dilepas kepada umum
dan siapapun bisa mengembangkan lebih lanjut. Linux pertama kali dikembangkan oleh
Linus Torvalds dari Finlandia.
III.1 Linux Pada PDA
Seperti yang telah banyak diketahui Linux keuntungan dengan mamakai Linux pada
PDA dan software open source lainnya adalah sama seperti kita menggunakan Linux pada
devais manapun contoh yang terbesar adalah Linux pada komputer PC. Kita memegang
kendali, kita dapat percaya bahwa sistem kita tidak memiliki back door atau bug yang
disebabkan oleh kecerobohan programmer. Kita dapat membetulkan apa yang harus
dibetulkan sendiri. Dan juga dengan perkembangan update dan patch yang cepat (saat ini
Linux sudah mencapai kernel 2.4.x) membuat dukungannya cepat berkembang pula.
Untuk perusahaan pembuat PDA walaupun hal ini tidak terlalu penting,
menggunakan Linux berarti mereka dapat menjual produk mereka tanpa harus
menambahkan biaya dari sistem operasi komersil seperti Windows CE, yang diperkirakan
harganya berkisar $30.
Tetapi untuk membuat Linux dapat berjalan pada PDA dibandingkan dengan
memberikan dukungan pada PDA secara lengkap dan konsisten adalah hal yang berbeda.
Penyesuaian yang harus dilakukan antara lain :
- user interface yang digunakannya harus diubah.
Penambahan touch screen dan sebagai pengganti mouse.
- masalah pada memory yang sangat terbatas dengan tanpa swap partition seperti pada
Linux pada PC.
- flash memory pada PDA yang memiliki sifat hanya dapat menangani penulisan block
sekitar 100.000 kali, menyebabkan file sistem yang sering menulis pada block seperti
ext2fs dari Linux menimbulkan masalah. Hal ini akan dapat berjalan, tetapi akan
membakar habis block jika tidak pernah menyentuh block yang lainnya.
- Masalah suspend PDA yang sebelumnya tidak pernah ditangani oleh Linux, yaitu jika
PDA dimatikan dan baru dinyalakan beberapa hari kemudian, sedangkan ada daemon
yang dijalankan tiap hari. Linux harus dapat memastikan apa yang harus dilakukan
dalam kondisi seperti ini.
Linux Sebagai Alternatif Sistem Operasi PDA
Page 8 of 12
- Software-software aplikasi pendukung
Dibandingkan dengan sistem operasi lainnya yang sudah cukup banyak memiilki
software aplikasi yang cukup lengkap, Linux masih bisa dikatakan sedikit. Oleh karena
itu dibutuhkan pengembangan terus menerus software aplikasi berbasis Linux.
Tapi telah ada beberapa tim yang telah berhasil membawa Linux agar dapat
diimplementasikan pada PDA. Contohnya adalah project Linux VR untuk devais genggam
MIPS dan Handhelds.org yang memfokuskan pada PDA berbasis processor ARM seperti
Yopy dan Compaq iPAQ (tetapi pre-installed dengan Windows CE dan dapat ditulis ulang
dengan Linux).
III.2 Kemampuan PDA yang Dapat Linux Berikan
Pada dunia PDA sesungguhnya sistem operasi apa yang digunakan bukanlah
masalah yang utama, tetapi tentang Personal Information Management (PIM) aplikasi dan
kemudahan dari sifat interaktifnya. Dapatkan pengguna melakukan apa yang mereka
inginkan secara cepat dengan input yang minimum. Dapatkah aplikasi menampilkan
interface yang konsisten, dapatkah metode input text bekerja dengan baik.
Hal tersebut telah berhasil dilakukan dengan baik oleh PalmOS dengan menghindari
kesalahan Newton yang mencoba terus dengan sistem pengenalan tulisan tangan, PalmOS
membatasinya batas toleransi tulisan tangan dan membuat manusia beradaptasi dengan itu.
Oleh karena itu Linux perlu untuk memberikan kemudahan yang sama dan
konsisten, dan juga software pendukung Linux. Untuk memilihnya tersedia banyak
komponen pendukung diperlukan banyak percobaan untuk menentukan mana yang terbaik.
Software pendukung Linux untuk PDA diantaranya :
Gb.3 PDA berbasis Linux (Agenda VR3, Compaq iPAQ dan G. Mate Yopy)
Linux Sebagai Alternatif Sistem Operasi PDA
Page 9 of 12
- Graphical User Interface
X Windows, menyediakan kemudahan dalam hal porting aplikasi. Dan dapat melakukan
import dan export tampilan dari dan ke komputer yang menggunakan X Windows.
MicroWindows dan G. Mate’s W Windows, menyediakan kecepatan yang tinggi dengan
menggunakan akses framebuffer secara langsung.
- GUI Toolkit
GTK, GIMP Tool Kit menyediakan yang memiliki fasilitas lengkap
FLTK, Flash Light Tool Kit yang lebih kecil dan praktis.
- Window Manager
GNOME dan KDE, yang memang sudah terkenal lengkap dalam komputer PC
Blackbox, yang lebih ringan dan cepat.
- Personal Information Management
Agenda Computing's PIM suite, yang menyerupai PalmOS
PocketLinux, yang benar-benar berbeda dari yang lainnya dimana diimplementasikan
dengan clone-nya Java Virtual Machine Kaffe.
Secara umum gambaran arsitektur Linux pada PDA dapat dilihat pada gambar 4.
Java Application
Appl. Media Player
PIM Utilities
MPEG-1 MP3
E-Mail Browser Games PC Link
PC Sync Java Environment
Qt/ Palmtop
Qt/Embedded (GUI)
GUI
Linux
Kernel
Linux
Kernel
2.4.X
card I/F serial
Drivers
KEY
LCD
display
Touch
panel
Mic.
speaker SD
USB
Slave CF IrDa Cradle
comm.
unit
battery
LED
F/L
modul/aplikasi/komponen yang belum banyak
diimplementasikan
Power Management (quick start, etc.)
Gb. 4 Arsitektur Linux PDA pada Sharp SL-5000D
Linux Sebagai Alternatif Sistem Operasi PDA
Page 10 of 12
III.3 Distribusi Linux Berbasis PDA
Seperti Linux pada basis-PC yang memiliki sejumlah distribusi seperti RedHat,
Slackware, SuSE, Debian, Mandrake, dan lain-lain. Maka Linux berbasis-PDA juga
memiliki beberapa distribusi. Antara lain :
- Qt Palmtop Environment
Dibuat oleh Trolltech, mereka menyatakan bahwa Qt Palmptop merupakan Window
System, Window Manager, Pemanggil Aplikasi, Metode Input yang lengkap. Dibuat
dengan standard Qt API seperti pada Qt/X11 and Qt/Windows. Tetapi karena Qt
Palmtop Environment menggunakan Qt/Embedded, bekerja langsung dengen Linux
framebuffer.. Terdapat aplikasi Address Book, Date Book, File Browser, HTML Help
Browser, Text Editor, Todo List, MPEG Video and Audio Player, a Calculator, Clock,
Tetr*x game, Solitaire, Memory and Load Meter, Screen Rotator, semuanya tidak
sampai 2.5MB."
- PIXIL PDA operating environment
Oleh Century Software, dinyatakan sebagai sistem PDA yang lengkap termasuk aplikasi
internet. Menggunakan Microwindows windowing system.
- PocketLinux PDA Framework
Oleh Transvirtual Technologies, mengintegrasikan Kaffe (JVM clone) dan mendukung
XML. PocketLinux menggunakan integrated framebuffer graphics library yang
menghiliangkan kebutuhan X Windows yang besar. Dinyatakan dapat menjadikan
developer bisa membuat aplikasi mobile mereka semudah membuat web page. Memiliki
kemampuan untuk menjalankan aplikasi yang sama pada seluruh PDA yang
menggunakan PocketLinux.
- handhelds.org PDA support
Awal tahun 2001 Compaq membuat Open Handheld Program, untuk menstimulasikan
inovasi dan riset pada devais genggam. Compaq juga membuat website handhelds.org
yang sebuah vendor netral yang ditujukan untuk devais genggam. Digunakan pada
Compaq iPAQ PDA.
- The Familiar Project
Merupakan project sampingan dari handhelds.org, menggunakan Blackbox window
manager, aplikasi Agenda Computing’s Fltk+ based PIM, implementasi Python, sistem
konfigurasi, OpenSSH client server, dan berbasis kernel Debian Linux.
Linux Sebagai Alternatif Sistem Operasi PDA
Page 11 of 12
- Lineo Embedix Linux
Menggunakan Linux 2.4.x, digunakan oleh Sharp SL-5000D PDA.
IV. Kesimpulan
Berdasarkan uraian diatas maka dapat disimpulkan :
- Linux sebagai sistem operasi alternatif PDA saat ini dapat berkompetisi dengan sistem
operasi lainnya. Karena memiliki perkembangan yang sangat pesat dibandingkan sistem
operasi lainnya.
- Untuk saat ini belum terlalu banyak software aplikasi yang dapat berjalan dibasis Linux
PDA, tetapi hal ini akan diatasi dalam waktu yang tidak lama dengan porting software.
- Untuk dapat dijadikan sistem operasi PDA, Linux harus dapat berjalan dengan stabil
seperti layaknya layanan 24 jam.
- Linux berbasis PDA memiliki kelebihan yang sama dengan Linux pada komputer
desktop.
- Dengan menggunakan Linux yang bersifat GNU General Public License maka biaya
produksi PDA dapat ditekan sehingga harga PDA dapat lebih terjangkau.
V. Referensi
- Epplin, Jerry, A developer's perspective on PocketLinux ,
http://www.linuxdevices.com/articles/AT7639810648.html, February 2001.
- Epplin, Jerry, Exploring Linux PDA software alternatives,
http://techupdate.zdnet.com/techupdate/stories/main/0,14179,2663295,00.html,
December 2000.
- Epplin, Jerry, Installing Microwindows on the iPAQ,
http://www.linuxdevices.com/articles/AT6242500467.html, February 2001.
- Hallsall, Chris, Linux on Your PDA,
http://linux.oreillynet.com/pub/a/linux/2001/05/11/linux_pdas_one.html , May 2001.
- Lehrbaum, Rick, The Linux-PDA and PDA-Linux Quick Reference Guide,
http://www.linuxdevices.com/articles/AT8728350077.html, November 2001.
- Sharp Corp., LinuxTM on the Sharp SL-5000D, http://more.sbc.co.jp/slj/linux.asp,
November 2001.
Linux Sebagai Alternatif Sistem Operasi PDA
Page 12 of 12
- Sharp Corp, SL-5000D / System Architecture Overview,
http://more.sbc.co.jp/slj/architecture.pdf, October 2001.
- Tech Target, EPOC, PalmOS, Windows CE, http://www.whatis.com, 2001.
VI. Daftar Istilah
- back door
Lubang keamanan yang diciptakan oleh hacker/cracker pada suatu sistem.
- ext2fs
Extended 2 filesystem, file system untuk sistem operasi Linux.
- framebuffer
suatu buffer pada memory yang berhubungan dengan screen, bertanggung jawab dengan
proses framing pada tampilan.
- porting
proses penyesuaian suatu software agar dapat berjalan pada platform yang berbeda.
- software development kit
Seperangkat tools programming yang digunakan untuk mengembangkan software.

Sejarah

Linux sangat mirip dengan sistem-sistem UNIX, hal ini dikarenakan kompatibilitas dengan UNIX merupakan tujuan utama desain dari proyek Linux. Perkembangan Linux dimulai pada tahun 1991, ketika mahasiswa Finlandia bernama Linus Torvalds menulis Linux, sebuah kernel untuk prosesor 80386, prosesor 32-bit pertama dalam kumpulan CPU intel yang cocok untuk PC.

Pada awal perkembangannya, source code Linux disediakan secara bebas melalui Internet. Hasilnya, sejarah Linux merupakan kolaborasi banyak user dari seluruh dunia, semuanya dilakukan secara eksklusif melalui Internet. Dari kernel awal yang hanya mengimplementasikan subset kecil dari sistem UNIX, sistem Linux telah bertumbuh dimana sudah mampu memasukkan banyak fungsi UNIX.

Kernel Linux perlu dibedakan dari sebuah sistem Linux: kernel Linux merupakan sebuah perangkat lunak orisinil yang dibuat oleh komunitas Linux sedangkan sistem Linux, yang diketahui saat ini, mengandung banyak komponen yang dibuat sendiri atau dipinjam dari proyek lain.

Kernel Linux

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. Tetapi, kernel tersebut sudah mengimplementasi proses UNIX secara tepat.

Tanggal 14 Maret, 1994, versi yang merupakan tonggak sejarah Linux yaitu versi 1.0 keluar. Rilis ini adalah kulminasi dari tiga tahun perkembangan yang cepat dari kernel Linux. Fitur baru terbesar yang disediakan adalah jaringan: 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 buat modul kernel yang dynamically loadable dan unloadable juga diberikan.

Satu tahun setelah dirilis versi 1.0, kernel 1.2 keluar. Kernel versi 1.2 mendukung variasi perangkat keras yang lebih luas. Pengembang telah memperbaharui networking stack untuk menyediakan support bagi protokol IPX, dan membuat implementasi IP lebih komplit dengan memberikan fungsi accounting dan firewalling. Kernel 1.2 juga merupakan kernel Linux terakhir yang PC-only. Konsentrasi lebih diberikan pada dukungan perangkat keras dan memperbanyak implementasi lengkap pada fungsi-fungsi yang ada.

Akhirnya pada bulan Juni 1996, Linux 2.0 dirilis. Versi 2.0 memiliki dua kemampuan baru yang penting, yaitu: dukungan terhadap multiple architectures dan multiprocessor architectures. Kode untuk manajemen memori telah diperbaiki sehingga performa sistem berkas dan memori virtual meningkat. Untuk pertama kalinya, file system caching dikembangkan ke networked file systems, writable memory mapped regions juga sudah didukung. Kernel 2.0 sudah memberikan performa 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.

Sistem Linux

Dalam banyak hal, kernel Linux merupakan inti dari proyek Linux, tetapi komponen lainlah yang membentuk secara komplit sistem operasi Linux. Dimana kernel Linux terdiri dari kode-kode yang dibuat khusus untuk proyek Linux, kebanyakan perangkat lunak pendukungnya tidak eksklusif terhadap Linux, melainkan biasa dipakai dalam beberapa sistem operasi yang mirip UNIX. Contohnya, sistem operasi BSD dari Berkeley, X Window System dari MIT, dan proyek GNU dari Free Software Foundation.

Pembagian (sharing) alat-alat telah bekerja dalam dua arah. Sistem perpustakaan utama Linux awalnya dimulai oleh proyek GNU, tetapi perkembangan perpustakaannya diperbaiki melalui kerjasama dari komunitas Linux terutama pada pengalamatan, ketidak efisienan, dan bugs. Komponen lain seperti GNU C Compiler, gcc, kualitasnya sudah cukup tinggi untuk dipakai langsung dalam Linux. Alat-alat administrasi network dibawah Linux berasal dari kode yang dikembangkan untuk 4.3BSD, tetapi BSD yang lebih baru , salah satunya FreeBSD, sebaliknya meminjam kode dari Linux, contohnya adalah perpustakaan matematika Intel floating-point-emulation.

Sistem Linux secara keseluruhan diawasi oleh network tidak ketat yang terdiri dari para pengembang melalui internet, dengan grup kecil atau individu yang memiliki tanggung jawab untuk menjaga integritas dari komponen- komponen khusus. Dokumen 'File System Hierarchy Standard' juga dijaga oleh komunitas Linux untuk memelihara kompatibilitas keseluruh komponen sistem yang berbeda-beda. Aturan ini menentukan rancangan keseluruhan dari sistem berkas Linux yang standar.

Distribusi Linux

Siapa pun dapat menginstall sistem Linux, ia hanya perlu mengambil revisi terakhir dari komponen sistem yang diperlukan melalui situs ftp lalu di-compile. Pada awal keberadaan Linux, operasi seperti di atas persis seperti yang dilaksanakan oleh pengguna Linux. Namun, dengan semakin dewasanya Linux, berbagai individu dan kelompok berusaha membuat pekerjaan tersebut lebih mudah dengan cara menyediakan sebuah set bingkisan yang standar dan sudah di-compile terlebih dahulu supaya dapat diinstall secara mudah.

Koleksi atau distribusi ini, mengandung lebih dari sistem Linux dasar. Mereka mengandung instalasi sistem ekstra dan utilitas manajemen, juga paket yang sudah di compile dan siap diinstall dari banyak alat UNIX yang biasa, seperti news servers, web browsers, text-processing dan alat mengedit, termasuk juga games.

Distribusi pertama mengatur paket-paket ini secara sederhana menyediakan sebuah sarana untuk memindahkan seluruh file ke tempat yang sesuai. Salah satu kontribusi yang penting dari distribusi modern adalah manajemen/ pengaturan paket-paket yang lebih baik. Distribusi Linux pada saat sekarang ini melibatkan database packet tracking yang memperbolehkan suatu paket agar dapat diinstal, di upgrade, atau dihilangkan tanpa susah payah.

Distribusi SLS (Soft Landing System adalah koleksi pertama dari bingkisan Linux yang dikenal sebagai distribusi komplit. Walau pun SLS dapat diinstall sebagai entitas tersendiri, dia tidak memiliki alat-alat manajemen bingkisan yang sekarang diharapkan dari distribusi Linux. Distribusi Slackware adalah peningkatan yang besar dalam kualitas keseluruhan (walau pun masih memiliki manajemen bingkisan yang buruk); Slackware masih merupakan salah satu distribusi yang paling sering diinstall dalam komunitas Linux.

Sejak dirilisnya Slackware, sejumlah besar distribusi komersil dan non-komersil Linux telah tersedia. Red Hat dan Debian adalah distribusi yang terkenal dari perusahaan pendukung Linux komersil dan perangkat lunak bebas komunitas Linux. Pendukung Linux komersil lainnya termasuk distribusi dari Caldera, Craftworks, dan Work- Group Solutions. Contoh distribusi lain adalah SuSE dan Unifix yang berasal dari German.

Linux Saat Ini

Saat ini, Linux merupakan salah satu sistem operasi yang perkembangannya paling cepat. Kehadiran sejumlah kelompok pengembang, tersebar di seluruh dunia, yang selalu memperbaiki segala fiturnya, ikut membantu kemajuan sistem operasi Linux. Bersamaan dengan itu, banyak pengembang yang sedang bekerja untuk memindahkan berbagai aplikasi ke Linux (dapat berjalan di Linux).

Masalah utama yang dihadapi Linux dahulu adalah interface yang berupa teks (text based interface). Ini membuat orang awam tidak tertarik menggunakan Linux karena harus dipelajari terlebih dahulu untuk dapat dimengerti cara penggunaannya (tidak user-friendly). Tetapi keadaan ini sudah mulai berubah dengan kehadiran KDE dan GNOME. Keduanya memiliki tampilan desktop yang menarik sehingga mengubah persepsi dunia tentang Linux.

Linux di negara-negara berkembang mengalami kemajuan yang sangat pesat. Harga perangkat lunak (misalkan sebuah sistem operasi) bisa mencapai US $100 atau lebih. Di negara yang rata-rata penghasilan per tahun adalah US $200-300, US $100 sangatlah besar. Dengan adanya Linux, semua berubah. Karena Linux dapat digunakan pada komputer yang kuno, dia menjadi alternatif cocok bagi komputer beranggaran kecil. Di negara-negara Asia, Afrika, dan Amerika Latin, Linux adalah jalan keluar bagi penggemar komputer.

Pemanfaatan Linux juga sudah diterapkan pada supercomputer. Diberikan beberapa contoh:

Jika melihat ke depan, kemungkinan Linux akan menjadi sistem operasi yang paling dominan bukanlah suatu hal yang mustahil. Karena semua kelebihan yang dimilikinya, setiap hari semakin banyak orang di dunia yang mulai berpaling ke Linux.

Rabu, 27 Mei 2009

Linux

Linux

Tux, penguin, maskot Linux
Keluarga OS: Bertipe Unix
Rilis terakhir
Tipe kernel: Monolitik
Lisensi: GNU General Public License dan lainnya
Status: Aktif

Linux (diucapkan ˈlɪnəks atau /ˈlɪnʊks/)[1] adalah nama yang diberikan kepada sistem operasi komputer bertipe Unix. Linux merupakan salah satu contoh hasil pengembangan perangkat lunak bebas dan sumber terbuka utama. Seperti perangkat lunak bebas dan sumber terbuka lainnya pada umumnya, kode sumber Linux dapat dimodifikasi, digunakan dan didistribusikan kembali secara bebas oleh siapapun.[2]

Nama "Linux" berasal dari nama kernelnya (kernel Linux), yang dibuat tahun 1991 oleh Linus Torvalds. Sistemnya, peralatan sistem dan pustakanya umumnya berasal dari sistem operasi GNU, yang diumumkan tahun 1983 oleh Richard Stallman. Kontribusi GNU adalah dasar dari munculnya nama alternatif GNU/Linux.[3]

Linux telah lama dikenal untuk penggunaannya di server, dan didukung oleh perusahaan-perusahaan komputer ternama seperti Dell, Hewlett-Packard, IBM, Novell, Oracle Corporation, Red Hat, dan Sun Microsystems. Linux digunakan sebagai sistem operasi di berbagai macam jenis perangkat keras komputer, termasuk komputer desktop, superkomputer,[4], dan sistem benam seperti pembaca buku elektronik, sistem permainan video (PlayStation 2, PlayStation 3 dan XBox[5]), telepon genggam dan router. Para pengamat teknologi informatika beranggapan kesuksesan Linux dikarenakan Linux tidak bergantung kepada vendor (vendor independence), biaya operasional yang rendah, dan kompatibilitas yang tinggi dibandingkan versi UNIX tak bebas, serta faktor keamanan dan kestabilannya yang tinggi dibandingkan dengan sistem operasi lainnya seperti Microsoft Windows. Ciri-ciri ini juga menjadi bukti atas keunggulan model pengembangan perangkat lunak sumber terbuka (opensource software).

Sistem operasi Linux yang dikenal dengan istilah distribusi Linux (Linux distribution) atau distro Linux umumnya sudah termasuk perangkat-perangkat lunak pendukung seperti server web, bahasa pemrograman, basisdata, tampilan desktop (desktop environment) (seperti GNOME dan KDE), dan paket aplikasi perkantoran (office suite) seperti OpenOffice.org, KOffice, Abiword, dan Gnumeric.

Sejarah

Sistem operasi Unix dikembangkan dan diimplementasikan pada tahun 1960-an dan pertama kali dirilis pada 1970. Faktor ketersediaannya dan kompatibilitasnya yang tinggi menyebabkannya dapat digunakan, disalin dan dimodifikasi secara luas oleh institusi-institusi akademis dan pada pebisnis.

Proyek GNU yang mulai pada 1984 memiliki tujuan untuk membuat sebuah sistem operasi yang kompatibel dengan Unix dan lengkap dan secara total terdiri atas perangkat lunak bebas.[6] Tahun 1985, Richard Stallman mendirikan Yayasan Perangkat Lunak Bebas dan mengembangkan Lisensi Publik Umum GNU (GNU General Public License atau GNU GPL). Kebanyakan program yang dibutuhkan oleh sebuah sistem operasi (seperti pustaka, kompiler, penyunting teks, shell Unix dan sistem jendela) diselesaikan pada awal tahun 1990-an, walaupun elemen-elemen tingkat rendah seperti device driver, jurik dan kernel masih belum selesai pada saat itu.[7] Linus Torvalds pernah berkata bahwa jika kernel GNU sudah tersedia pada saat itu (1991), dia tidak akan memutuskan untuk menulis versinya sendiri.[8]

MINIX

MINIX, sebuah sistem bertipe Unix yang ditujukan untuk penggunaan akademis dirilis oleh Andrew S. Tanenbaum pada tahun 1987. Kode sumber MINIX 1.0 tercantum dalam bukunya Operating Systems: Design and Implementation. Walaupun dapat secara mudah didapatkan, modifikasi dan pendistribusian ulang tidak diperbolehkan pada saat itu. Hak cipta dari kode sumbernya termasuk ke dalam hak cipta dari bukunya yang dipublikasikan oleh Prentice Hall. Sebagai tambahan, disain versi 16-bit dari MINIX kemudian tidak secara baik diadaptasikan kepada versi 32-bit dari arsitektur Intel 386 yang murah dan populer yang digunakan secara luas di komputer pribadi.

Tahun 1991, Torvalds mulai bekerja untuk membuat versi non-komersial pengganti MINIX sewaktu ia belajar di Universitas Helsinki.[9] Hasil kerjaannya itu yang kemudian akan menjadi kernel Linux.

Pada tahun 1992, Tanembaum menulis sebuah artikel di Usenet, mengklaim bahwa Linux sudah ketinggalan zaman. Dalam artikelnya, ia mengkritik Linux sebagai sebuah sistem operasi dengan rancangan monolitik dan terlalu terpaku dengan arsitektur x86 sehingga tidak bersifat portable, di mana digambarkannya sebagai sebuah "kesalahan mendasar".[10] Tanenbaum menyarankan bahwa mereka yang menginginkan sebuah sistem operasi modern harus melihat kepada sebuah rancangan yang berdasarkan kepada model mikrokernel. Tulisan tersebut menekankan tanggung jawab Torvalds yang berujung kepada sebuah debat tentang rancangan kernel monolitik dan mikrokernel.[10]

Sekarang ini Linux telah digunakan di berbagai domain, dari sistem benam[11] sampai superkomputer,[12] dan telah mempunyai posisi yang aman dalam instalasi server web dengan aplikasi LAMP-nya yang populer.[13] Pengembangan kernel Linux masih dilanjutkan oleh Torvalds, sementara Stallman mengepalai Yayasan Perangkat Lunak Bebas yang mendukung pengembangan komponen GNU. Selain itu, banyak individu dan perusahaan yang mengembangkan komponen non-GNU. Komunitas Linux menggabungkan dan mendistribusikan kernel, komponen GNU dan non-GNU dengan perangkat lunak manajemen paket dalam bentuk distribusi Linux.

Pengucapan

Pada tahun 1992, Torvalds menjelaskan bagaimana ia mengeja kata Linux:

'li' dieja dengan bunyi [ee] pendek, 'nux' juga pendek, non-diftong, seperti dalam pUt. Linux hanya merupakan nama kerja untuk sesuatu, dan karena saya menulisnya untuk menggantikan minix di sistemku, hasilnya adalah apa adanya... linus' minix menjadi linux.

Torvalds membuat sebuah contoh audio yang berisi suara bagaimana pengejaannya dalam bahasa Inggris dan Swedia.[14][15] Tetapi, sebuah wawancara dari dokumentasi tahun 2001 Revolution OS mengindikasikan bahwa cara pengejaannya sedikit berubah.[16]

Dalam bahasa Inggris, banyak orang cenderung mengeja Linux sebagai [ˈlɪnʊks] atau [ˈlɪnəks].

Disain

Linux merupakan sistem operasi bertipe Unix modular. Linux memiliki banyak disain yang berasal dari disain dasar Unix yang dikembangkan dalam kurun waktu 1970-an hingga 1980-an. Linux menggunakan sebuah kernel monolitik, kernel Linux yang menangani kontrol proses, jaringan, periferal dan pengaksesan sistem berkas. Device driver telah terintegrasi ke dalam kernel.

Banyak fungsi-fungsi tingkat tinggi di Linux ditangani oleh proyek-proyek terpisah yang berintegrasi dengan kernel. Userland GNU merupakan sebuah bagian penting dari sistem Linux yang menyediakan shell dan peralatan-peralatan yang menangani banyak fungsi-fungsi dasar sistem operasi. Di atas kernel, peralatan-peralatan ini membentuk sebuah sistem Linux lengkap dengan sebuah antarmuka pengguna grafis yang dapat digunakan, umumnya berjalan di atas X Window System.

Antarmuka pengguna

Linux dapat dikendalikan oleh satu atau lebih antarmuka baris perintah (command line interface atau CLI) berbasis teks, antarmuka pengguna grafis (graphical user interface atau GUI, yang umumnya merupakan konfigurasi bawaan untuk versi desktop).

Pada komputer meja, GNOME, KDE dan Xfce merupakan antarmuka pengguna yang paling populer,[17] walaupun terdapat sejumlah varian antarmuka pengguna. Antarmuka pengguna yang paling populer berjalan di atas X Window System (X), yang menyediakan transparansi jaringan yang memperolehkan sebuah aplikasi grafis berjalan di atas satu mesin tetapi ditampilkan dan dikontrol di mesin yang lain.

GUI yang lain memiliki X window manager seperti FVWM, Enlightenment, Fluxbox dan Window Maker. Manajer jendela menyediakan kontrol untuk penempatan dan penampilan dari jendela-jendela aplikasi individual serta interaksi dengan sistem jendela X.

Sebuah sistem Linux umumnya menyediakan sebuah antarmuka baris perintah lewat sebuah shell, yang merupakan cara tradisional untuk berinteraksi dengan sebuah sistem Unix. Sebuah distro Linux yang dikhususkan untuk lingkungan peladen mungkin hanya memiliki CLI sebagai satu-satunya antarmuka. Sebuah sistem yang tidak memiliki monitor hanya dapat dikontrol melalui baris perintah lewat protokol seperti SSH atau telnet.

Kebanyakan komponen tingkat rendah Linux, termasuk GNU Userland, menggunakan CLI secara ekslusif. CLI cocok untuk digunakan pada lingkungan otomasi tugas-tugas yang repetitif atau tertunda, dan menyediakan komunikasi inter-proses yang sangat sederhana. Sebuah program emulator terminal grafis sering digunakan untuk mengakses CLI dari sebuah Linux desktop.

Pengembangan

!Artikel utama untuk bagian ini adalah: Distribusi Linux
Sebuah ringkasan sejarah sistem operasi-sistem operasi bertipe Unix menunjukkan asal usul Linux. Perhatikan walaupun memiliki konsep dan disain arsitektur yang sama, Linux tidak memiliki kode sumber yang tidak bebas seperti halnya Unix atau Minix.

Perbedaan utama antara Linux dan sistem operasi populer lainnya terletak pada kernel Linux dan komponen-komponennya yang bebas dan terbuka. Linux bukan satu-satunya sistem operasi dalam kategori tersebut, walaupun demikian Linux adalah contoh terbaik dan terbanyak digunakan. Beberapa lisensi perangkat lunak bebas dan sumber terbuka berdasarkan prinsip-prinsip copyleft, sebuah konsep yang menganut prinsip: karya yang dihasilkan dari bagian copyleft harus juga merupakan copyleft. Lisensi perangkat lunak bebas yang paling umum, GNU GPL, adalah sebuah bentuk copyleft, dan digunakan oleh kernel Linux dan komponen-komponen dari proyek GNU.

Sistem Linux berkaitan erat dengan standar-standar POSIX,[18] SUS,[19] ISO dan ANSI. Akan tetapi, baru distribusi Linux-FT saja yang mendapatkan sertifikasi POSIX.1.[20]

Proyek-proyek perangkat lunak bebas, walaupun dikembangkan dalam bentuk kolaborasi, sering dirilis secara terpisah. Akan tetapi, dikarenakan lisensi-lisensi perangkat lunak bebas secara eksplisit mengijinkan distribusi ulang, terdapat proyek-proyek yang bertujuan untuk mengumpulkan perangkat lunak-perangkat lunak tersebut dan menjadikannya tersedia dalam waktu bersamaan dalam suatu bentuk yang dinamakan distribusi Linux.

Sebuah distribusi Linux, yang umum disebut dengan "distro", adalah sebuah proyek yang bertujuan untuk mengatur sebuah kumpulan perangkat lunak berbasis Linux dan memfasilitasi instalasi dari sebuah sistem operasi Linux. Distribusi-distribusi Linux ditangani oleh individu, tim, organisasi sukarelawan dan entitas komersial. Distribusi Linux memiliki perangkat lunak sistem dan aplikasi dalam bentuk paket-paket dan perangkat lunak yang spesifik dirancang untuk instalasi dan konfigurasi sistem. Perangkat lunak tersebut juga bertanggung jawab dalam pemutakhiran paket. Sebuah Distribusi Linux bertanggung jawab atas konfigurasi bawaan, sistem keamanan dan integrasi secara umum dari paket-paket perangkat lunak sistem Linux.

Komunitas

Sebuah sesi baris perintah menggunakan bash.

Linux dikendalikan oleh pengembang dan komunitas penggunanya. Beberapa vendor mengembangkan dan mendanai distribusi mereka sendiri dengan dasar kesukarelaan. Debian merupakan contoh yang bagus. Yang lain memiliki versi komunitas dari versi komersialnya seperti yang Red Hat lakukan dengan Fedora.

Di banyak kota dan wilayah, asosiasi lokal yang dikenal dengan nama Kelompok Pengguna Linux (Linux Users Group atau LUG) mempromosikan Linux dengan mengadakan pertemuan, demonstrasi, pelatihan, dukungan teknis dan instalasi sistem operasi Linux secara gratis. Ada banyak juga komunitas Internet yang menyediakan dukungan terhadap pengembang dan pengguna Linux. Banyak proyek distribusi dan perangkat lunak sumber terbuka yang memiliki ruang percakapan IRC atau newsgroup. Forum daring merupakan bentuk lain untuk mendapatkan dukungan, contoh: LinuxQuestions.org dan forum Gentoo. Distribusi Linux memiliki [milis]] dengan pembagian topik seperti penggunaan atau pengembangan.

Ada beberapa situs web teknologi yang berfokuskan kepada Linux. Linux Weekly News adalah sebuah cernaan mingguan dari berita-berita yang berkaitan dengan Linux. Sementara itu Linux Journal merupakan majalah Linux daring yang dirilis setiap bulan. Slashdot adalah situs web berita yang berhubungan dengan teknologi yang memiliki banyak berita tentang Linux dan perangkat lunak bebas. Groklaw memiliki berita mendalam tentang kemajuan Linux dan memiliki banyak artikel yang berhubungan dengan kernel Linux serta hubungannya dengan GNU dalam proyek GNU. Majalah Linux cetakan umumnya memiliki cakram sampul yang memuat perangkat lunak atau bahkan distribusi Linux lengkap.[21][22]

Walaupun Linux secara umum tersedia secara gratis, beberapa perusahaan besar menjalani model bisnis yang terdiri dari penjualan, dukungan dan kontribusi terhadap Linux dan perangkat lunak bebas; ini termasuk Dell, IBM, HP, Sun Microsystems, Novell, dan Red Hat. Lisensi perangkat lunak bebas di mana digunakan Linux secara eksplisit mengakomodasi komersialisasi; hubungan antara Linux dan vendor-vendor individual dapat dilihat sebagai suatu simbiosis. Satu model bisnis yang umum dari pemasok komersial yaitu dengan mengenakan biaya atas dukungan khususnya terhadap pengguna-pengguna kalangan bisnis. Sejumlah perusahaan menawarkan versi bisnis dari distribusi Linux mereka, antara lain berupa dukungan atas paket-paket tak bebas dan alat bantu untuk mengatur sejumlah besar instalasi atau untuk memudahkan tugas-tugas administratif. Model bisnis yang lain adalah dengan memberikan perangkat lunak secara gratis untuk penjualan perangkat keras.

sunting] Pemrograman di Linux

Kebanyakan distribusi Linux mendukung banyak bahasa pemrograman. Koleksi peralatan untuk membangun aplikasi dan program-program sistem operasi yang umum terdapat di dalam GNU toolchain, yang terdiri atas GNU Compiler Collection (GCC) dan GNU build system. GCC menyediakan kompilator untuk Ada, C, C++, Java, dan Fortran. Kernel Linux sendiri ditulis untuk dapat dikompilasi oleh GCC. Kompilator tak bebas (proprietary) untuk Linux antara lain adalah Intel C++ Compiler dan IBM XL C/C++ Compiler.

Kebanyakan distribusi juga memiliki dukungan untuk Perl, Ruby, Python dan bahasa pemrograman dinamis lainnya. Contoh bahasa pemrograman yang tidak umum tetapi tetap mendapat dukungan di Linux antara lain adalah C# dengan proyek Mono yang disponsori oleh Novell, dan Scheme. Sejumlah Java Virtual Machine dan peralatan pengembang jalan di Linux termasuk Sun Microsystems JVM (HotSpot), dan J2SE RE IBM, serta proyek-proyek sumber terbuka lainnya seperti Kaffe. Dua kerangka kerja utama untuk pengembangan aplikasi grafis di Linux adalah GNOME dan KDE. Proyek-proyek ini berbasiskan GTK+ dan Qt. Keduanya mendukung beragam bahasa pemrograman. Untuk Integrated development environment terdapat Anjuta, Code::Blocks, Eclipse, KDevelop, Lazarus, MonoDevelop, NetBeans, dan Omnis Studio, sedangkan penyunting teks yang telah lama tersedia adalah Vim dan Emacs.[23]

Penggunaan

Sebagian besar distribusi Linux didisain untuk penggunaan umum di komputer meja dan peladen, tetapi terdapat distribusi yang dikhususkan untuk tujuan dan lingkungan yang berbeda yang tergantung kepada dukungan arsitektur komputer, sistem benam, stabilitas, keamanan, lokalisasi ke wilayah atau bahasa tertentu, kelompok pengguna tertentu, dukungan aplikasi waktu nyata, atau lingkungan desktop tertentu. Beberapa distribusi bahkan mengikutkan hanya perangkat lunak bebas. Sekarang ini ada sekitar tiga ratus distribusi yang secara aktif dikembangkan, dengan sekitar selusin distribusi yang menjadi terpopuler untuk penggunaan secara umum.[24]

Linux adalah sistem operasi yang di-porting secara luas. Kernel Linux awalnya didisain hanya untuk mikroprosesor Intel 80386, sekarang kernel Linux telah jalan di beragam arsitektur komputer antara lain di perangkat hand-held iPAQ berbasis ARM, komputer mainframe IBM System z9, dari peralatan berupa telepon bergerak hingga superkomputer.[25] Terdapat distribusi yang dikhususkan untuk sejumlah kecil arsitektur. Fork kernel ELKS dapat dijalankan di mikroprosesor 16-bit Intel 8086 atau Intel 80286, sementara fork kernel µClinux dapat dijalankan di atas sistem yang tidak memiliki sebuah unit manajemen memori.

Komputer meja

!Artikel utama untuk bagian ini adalah: Linux untuk komputer meja

Walaupun masih terdapat kekurangan dalam hal porting Linux untuk beberapa perangkat lunak Mac OS X dan Microsoft Windows untuk domain seperti desktop publishing[26] dan audio profesional,[27][28][29] aplikasi yang secara kasar sama dengan aplikasi-aplikasi untuk Mac dan Windows tersebut tersedia di Linux.[30]

Kebanyakan distribusi Linux menyediakan sebuah program untuk melihat daftar ribuan perangkat lunak bebas yang telah diuji dan dikonfigurasi untuk sebuah distribusi yang spesifik. Program-program bebas ini dapat diunduh dan diinstal dengan satu klik tetikus dan sebuah tanda tangan digital menjamin bahwa tidak ada seorangpun yang menambahkan virus atau spyware ke program-program tersebut.

Banyak perangkat lunak bebas yang populer di Windows seperti Pidgin, Mozilla Firefox, Openoffice.org dan GIMP. Jumlah perangkat lunak berbayar di Linux juga semakin bertambah[31] seperti Adobe Flash Player, Acrobat Reader, Matlab, Nero Burning ROM, Opera, RealPlayer, dan Skype. Dalam animasi dan efek visual, terdapat juga perangkat lunak di Linux seperti halnya Windows seperti AutoDesk Maya, Softimage XSI dan Apple Shake. CrossOver merupakan perangkat lunak berbayar berbasis proyek sumber terbuka Wine yang dapat menjalankan versi lama dari Microsoft Office dan Adobe Photoshop. Microsoft Office 2007 dan Adobe Photoshop CS3 diketahui dapat dijalankan[32][33]


Hak cipta dan Merek Dagang

Linux kernel dan kebanyakan perangkat lunak GNU menggunakan GNU General Public License (GPL) sebagai basis lisensinya. GPL mengharuskan siapapun yang mendistribusikan kernel linux harus membuat kode sumber (dan semua modifikasi atas itu) tersedia bagi pengguna dengan kriteria yang sama. Tahun 1997, Linus Torvald menyatakan, “Menjadikan Linux berbasis GPL sungguh merupakan hal terbaik yang pernah saya lakukan.”[34] Komponen penting lain dalam sistem Linux diijinkan menggunakan lisensi selain dari GPL; banyak pustaka menggunakan GNU Lesser General Public License (LGPL), varian GPL yang lebih moderat, dan sistem X Window System menggunakan MIT License.

Linus Torvald telah menyatakan ke khayalak umum bahwa ia tidak akan memindahkan lisensi kernel Linux yang saat ini menggunakan GPL versi 2 ke GPL versi 3, yang ditembangkan pada pertengahan tahun 2007, dengan alasan beberapa ketentuan yang terdapat pada lisensi baru tersebut melarang penggunaan perangkat lunak dalam manajemen hak digital (Inggris: Digital rights management).[35][36]

Penelitian yang dilakukan pada tahun 2001 terhadap Red Hat Linux 7.1 menemukan bahwa distro perangkat lunak tersebut terdiri atas 30 juta baris kode. Dengan menggunakan algoritma model biaya konstruktif (Inggris:Constructive Cost Model), penelitian itu memperkirakan bahwa distro tersebut membutuhkan waktu kira-kira delapan ribu tahun kerja untuk mengembangkannya. Menurut penelitian tersebut, jika semua elemen dari perangkat lunak tersebut dikembangkan dengan cara konvensional dalam artian sebagai perangkat lunak tertutup, pengembangan distro tersebut akan menelan biaya sebesar 1,08 miliar dolar (basis nilai tukar dolar tahun 2000) untuk dikembangkan di Amerika Serikat.[37]

Kebanyakan dari kode (71%) ditulis dengan menggunakan bahasa pemrograman C, namun banyak bahasa lainnya juga ikut terlibat seperti C++, Assembly, Perl, Python, Fortran, dan berbagai bahasa skrip lain. Lebih dari separuh dari seluruh kode dilisensikan di bawah naungan GPL. Kernel linux itu sendiri terdiri atas 2,4 juta baris kode, atau sekitar 8% dari total keseluruhan.[37]

Penelitian lainnya menghasilkan analisis yang sama terhadap distro Debian GNU/Linux versi 4.0.[38] Distro tersebut terdiri atas lebih dari 283 juta baris kode, dan penelitian tersebut memperkirakan biaya pengembangan yang dibutuhkan sebesar 5,4 miliar euro jika dikembangkan sebagai perangkat linak tertutup.

Di Amerika Serikat, Linux merupakan merek dagang (SN: 1916230) yang dimiliki oleh Linus Torvalds. Linux terdaftar sebagai "Program sistem operasi komputer bagi penggunaan komputer dan operasi". Merek dagang ini didaftarkan setelah ada suatu kejadian di mana seorang pemalsu bernama William R Della Croce Jr mulai mengirim surat kepada para distributor Linux dan megklaim trademark Linux adalah hakmiliknya serta meminta royalti sebanyak 10% dari mereka. Para distributor Linux mulai mendorong agar trademark yang asli diberikan kepada Linus Torvalds. Pemberian lisensi trademark Linux sekarang dibawah pengawasan Linux Mark Institute.

Distribusi Linux

Lihat juga Distribusi Linux

Terdapat banyak distribusi Linux (lebih dikenali sebagai distro) yang dibuat oleh individu, grup, atau lembaga lain. Masing-masing disertakan dengan program sistem dan program aplikasi tambahan, di samping menyertakan suatu program yang memasang keseluruhan sistem di komputer (installer program).

Inti di setiap distribusi Linux adalah kernel, koleksi program dari proyek GNU (atau proyek lain), cangkang (shell), dan aturcara utilitas seperti pustaka (libraries), kompilator, dan penyunting (editor). Kebanyakan sistem juga menyertakan aturcara dan utilitas yang bukan-GNU. Bagaimanapun, utilitas tersebut dapat dipisahkan dan sistem ala UNIX masih tersedia. Beberapa contoh adalah aturcara dan utiliti dari BSD dan sistem grafik-X (X-Window System). X menyediakan antarmuka grafis (GUI) yang umum untuk Linux.

Contoh-contoh distribusi Linux :

Aplikasi Sistem Operasi Linux

Pengguna Linux, yang pada umumnya memasang dan melakukan sendiri konfigurasi terhadap sistem, lebih cenderung mengerti teknologi dibanding pengguna Microsoft Windows atau Mac OS. Mereka sering disebut hacker atau geek. Namun stereotipe ini semakin berkurang dengan peningkatan sifat ramah-pengguna Linux dan makin luasnya pengguna distribusi. Linux telah membuat pencapaian yang cukup baik dalam pasaran komputer server dan komputer tujuan khusus, seperti mesin render gambar dan server web. Linux juga mulai populer dalam pasaran komputer desktop.

Linux merupakan asas kepada kombinasi program-server LAMP, kependekan dari Linux, Apache, MySQL, Perl/PHP/Python. LAMP telah mencapai popularitas yang luas di kalangan pengembang Web.

Linux juga sering digunakan sebagai sistem operasi embeded. Biaya pengadaan Linux yang murah memungkinkan penggunaannya dalam peralatan seperti simputer, yaitu komputer berbiaya rendah yang ditujukan pada penduduk berpendapatan rendah di Negara-negara berkembang.

Dengan lingkungan desktop seperti KDE dan GNOME, Linux menawarkan antarmuka pengguna yang lebih menyerupai Apple Macintosh atau Microsoft Windows daripada antarmuka baris teks seperti Unix. Oleh karena itu, lebih banyak program grafik dapat ditemui pada Linux yang menawarkan berbagai fungsi yang ada pada utilitas komersil.

Pasar serta kemudahan pemakaian

Saat ini, linux yang pada awalnya hanya merupakan sistem operasi yang digunakan oleh peminat komputer, telah menjadi sistem yang lebih mudah digunakan (user-friendly), dilengkapi dengan antarmuka grafis dan ketersediaan berbagai macam aplikasi yang lebih mirip dengan sistem operasi lainnya, daripada hanya sebatas baris perintah Unix. Namun kesan ini telah menimbulkan banyak kritikan, termasuk dari pendukung Linux. Mereka berpendapat bahwa Linux dan proyek program bebas masih belum mencapai faktor "kemudahanan dalam pemakaian" yang memuaskan. Persoalan tentang kemudahan Linux dibanding Windows atau Macintosh masih menjadi isu perdebatan yang hangat. Pasaran Linux pada segmen komputer meja masih lebih kecil namun semakin berkembang. Menurut Lembaga Penyelidikan Pasaran IDC, besar pasaran Linux pada tahun 2002 adalah 25% pada segmen server, dan 2.8% pada segmen pasar Komputer pribadi.

Bagi mereka yang terbiasa menggunakan Windows atau Macintosh, Linux mungkin terasa lebih sukar, hal ini disebabkan karena perbedaan dalam melakukan berbagai kerja komputer. Dan lagi, pengguna perlu mengganti program yang sering mereka gunakan dengan program lain sebagai pengganti bila program tersebut tidak didapati dalam Linux (atau pilihan yang agak terbatas, misalnya permainan komputer). Faktor lain adalah sifat keraguraguan pengguna untuk melepaskan sistem operasi mereka yang biasa mereka pergunakan (banyak pengguna masih menggunakan Windows). Selain itu, kebanyakan komputer baru telah dilengkapi dengan sistem operasi Windows siap pakai (preinstalled). Faktor-faktor ini menyebabkan perkembangan Linux yang agak lambat.

Walau bagaimanapun, kelebihan Linux seperti biaya rendah, sekuritas yang lebih aman, dan tidak bergantung pada vendor, telah meningkatkan penggunaan yang luas di kalangan korporasi dan perkantoran. Dalam situasi ini, halangan yang disebut di atas dapat dikurangi karena hanya aplikasi/utiliti yang terbatas digunakan, serta administrasi dan konfigurasi komputer (administration) dikendalikan oleh sekumpulan pekerja pakar IT yang sedikit.

Terdapat berbagai kajian yang dilakukan terbatas biaya serta kemudahanan Linux. Relevantive (sebuah lembaga berpusat di Berlin, yang mengkhususkan diri dalam riset lembaga tentang ke'mudahan'an program, serta servis web) telah membuat kesimpulan bahawa ke-dapatpakai-an Linux dalam pekerjaan dengan menggunakan komputer meja adalah hampir sama dengan Windows XP. Bagaimanapun, kajian oleh IDC (yang dibiayai oleh Microsoft) mengklaim bahwa Linux mempunyai biaya pemilikan (Total Cost of Ownership) yang lebih tinggi dibanding Windows.

Linux juga sering dikritik karena jadwal penembangannya yang tidak dapat diduga. Secara langsung, menyebabkan minat penggunaan linux pada lapisan pengguna Enterprise lebih kecil dibandingkan sistem operasi lain (Sumber:Marcinkowski, 2003). Disamping itu, ragam pilihan distribusi Linux yang cukup banyak juga dikatakan membingungkan konsumer, dan vendor program.

Instalasi

Proses instalasi Linux yang sukar seringkali menjadi penghalang bagi pengguna baru, namun proses ini sekarang sudah menjadi lebih mudah. Dengan penerimaan Linux oleh beberapa pabrikan komputer pribadi besar, komputer terpasang (built up) dengan distribusi Linux siap pakai saat ini banyak tersedia. Selain itu, terdapat juga distribusi Linux yang dapat dijalankan (boot) secara langsung dari cakram optik (CD) tanpa perlu diinstalasi ke cakram keras (hard disk); hal ini dikenal dengan istilah Live CD. Contoh distribusi dalam bentuk Live CD adalah Knoppix/Gnoppix, Kubuntu/Ubuntu dan Gentoo. Saat ini hampir semua distribusi Linux menyediakan versi Live CD untuk produknya. ISO image untuk cakram optik untuk distribusi Linux tersebut biasanya dapat diunduh dari Internet, dibakar ke CD, dan selanjutnya dapat digunakan sebagai CD yang siap untuk proses boot.

Instalasi Linux juga merupakan instalasi berupa suite, yaitu dimana penginstalasian tersebut secara otomatis menginstalasi program-program standar, seperti pemutar MP3, Office Suite, dan pengolah gambar.

Konfigurasi

Konfigurasi setelan Linux dan aplikasi di atasnya banyak yang dilakukan lewat berkas teks di direktori /etc. Pada perkembangan selanjutnya, utilitas seperti Linuxconf dan GNOME System Tools memudahkan pekerjaan ini lewat antarmuka grafik. Kendati demikian, baris perintah (command line) tetap merupakan cara yang paling umum digunakan.

Dukungan

Dukungan bagi Linux biasanya didapatkan melalui peer(dalam konteks ini maksudnya kelompok pengguna linux/KPLI) - pengguna Linux lain di dalam forum internet, IRC, newsgroup dan mailing list. Kelompok Pengguna Linux (LUG, Linux User Group) telah didirikan di seluruh dunia untuk membantu pengguna lokal, pengguna baru, dan pengguna berpengalaman. Di Indonesia kelompok ini tergabung dalam KPLI daerah seperti KPLI Jakarta, KPLI Bandung, KPLI Jogja dan masih banyak lainnya. Bantuan termasuk instalasi, penggunaan, pengadaan serta menggalakkan pengembangan sistem Linux.

Dukungan resmi Linux di Indonesia dapat diperoleh di Linux User Group (LUG) Indonesia atau http://www.lugi.or.id atau http://www.infolinux.or.id

Dukungan komersil bagi distribusi Linux secara umum menggunakan model bisnis dengan menyediakan dukungan teknis. Dukungan pihak ketiga juga sudah tersedia.

Skala Usaha Pembangunan Linux

Sebuah studi (More Than a Gigabuck: Estimating GNU/Linux's Size [2]) Terhadap Red Hat Linux 7.1 menemukan bahwa distribusi ini berisi 30 juta baris kode sumber (‘’source lines of code (SLOC)’’). Menggunakan model biaya COCOMO studi ini menunjukan bahwa distribusi ini memerlukan waktu pengembangan sebanyak 8000 tahun, apabila software ini di kembangkan dengan cara proprietary konvensional. Dan akan menghabiskan sekitar 1.08 miliar dolar (dolar tahun 2000) untuk dikembangkan di Amerika Serikat.

Mayoritas dari kode (71%) ditulis dalam C, namun banyak bahasa lain digunakan, termasuk C++ shell scripts, Lisp, assembly language, Perl, Fortran dan Python.

Sekitar setengah dari kodenya di lisensikan di bawah GPL.

Kernel Linux mengandung 2.4 juta baris kode, atau sekitar 8% dari total kode yang dipakai dalam sebuah distribusi/distro. Hal ini menunjukan bahwa mayoritas dari distribusi Linux terdiri dari kode yang tidak terkandung dalam Kernel Linux.

"GNU/Linux"

Lihat Kontroversi Penamaan GNU/Linux

GNU adalah singkatan dari GNU's Not Unix.

Disebabkan utiliti-utiliti dari proyek sistem operasi bebas GNU - tanpa ini sistem Linux tidak akan menyerupai sistem Unix dalam perspektif pengguna - Richard Stallman dari GNU/FSF memohon agar kombinasi sistem (proyek GNU dan kernel Linux), disebut sebagai "GNU/Linux". Pengguna distribusi Linux dari proyek Debian lebih cenderung menggunakan nama tersebut. Kebanyakan pengguna lebih mudah menggunakan istilah "Linux".

Tindakan Undang-undang (Litigasi)

Artikel utama: SCO Vs IBM Pada bulan Maret 2003, Grup SCO (SCOG - SCO Group) telah mengeluarkan gugatan terhadap IBM yang mengklaim bahwa IBM telah memasukkan sebagin besar dari bahan intelektual milik SCOG (kode sumber) ke dalam kernel Linux, di mana hal ini merupakan pelanggaran terhadap lisensi IBM untuk menggunakan UNIX. Disebutkan bahwa lisensi tersebut dipegang oleh Kelompok SCO. Tambahan lagi, Kelompok SCO juga telah mengirim surat kepada beberapa lembaga dan memberi ancaman tentang penggunaan Linux tanpa lisensi dari kelompok SCO akan menerima tindakan dari mereka. Kelompok SCO juga mengeluarkan pernyataan pada media massa bahwa mereka akan menggugat pengguna Linux selanjutnya. Kontroversi ini telah mencetus beberapa kecaman oleh Kelompok SCO terhadap Novell, DaimlerChrysler, dan AutoZone, selain gugatan balik oleh Red Hat dan pihak lain terhadap SCOG.

Lihat pula

[sunting] Referensi

  1. ^ (23 April 1992). "Re: How to pronounce “Linux”?". (Google Groups). Diambil pada 9 Januari 2007. Torvalds membuat sebuah berkas audio yang berisi cara pengucapannya sendiri, dalam bahasa Inggris (/ˈlɪnʊks/) ─ Bagaimana mengeja Linux?. Diakses pada 17 Desember 2006 ─ dan dalam bahasa Swedia (/ˈlɪːnɤks/) ─ Linus mengeja Linux dalam bahasa Inggris dan Swedia. Diakses pada 20 Januari 2007
  2. ^ Linux Online ─ Tentang Sistem Operasi Linux. Linux.org. Diakses pada 6 Juli 2007
  3. ^ Weeks, Alex (2007). "1.1", Linux System Administrator's Guide, version 0.9. Diakses pada 18 Januari 2007.
  4. ^ Lyons, Daniel Linux menguasai superkomputer. Diakses pada 22 Februari 2007
  5. ^ Lihat referensi di Xbox Linux
  6. ^ Tentang Proyek GNU - Pengumuman Awal
  7. ^ Sistem GNU
  8. ^ Perdebatan Linus vs. Tanenbaum.
  9. ^ "Apa yang paling Anda ingin lihat di Minix?". comp.os.minix. (Web link). Diambil pada 9 September 2006.
  10. ^ a b Januari, Open Sources: Voices from the Open Source Revolution
  11. ^ Santhanam, Anand; Vishal Kulkarni Pengembangan sistem Linux pada sistem benam. DeveloperWorks. IBM. Diakses pada 26 Juli 2007
  12. ^ Lyons, Daniel Linux merajai superkomputer. Diakses pada 22 Juli 2007
  13. ^ Schrecker, Michael Turn on Web Interactivity with LAMP. Diakses pada 22 Februari 2007
  14. ^ Howto pronouce Linux?. Diakses pada 17 Desember 2006
  15. ^ Linus pronouncing Linux in English and Swedish. Diakses pada 20 Januari 2007
  16. ^ Linux Pronunciation (Youtube). Diakses pada 20 Januari 2007
  17. ^ Debian popularity-contest program information.
  18. ^ POSIX.1 (FIPS 151-2) Certification.
  19. ^ How source code compatible is Debian with other Unix systems?. Debian FAQ. the Debian project.
  20. ^ Certifying Linux.
  21. ^ Linux Format. Linux Format DVD contents. Diakses pada 2008-01-17
  22. ^ linux-magazine.com. Current Issue. Diakses pada 2008-01-17
  23. ^ Brockmeier, Joe A survey of Linux Web development tools. Diakses pada 2006-12-16
  24. ^ The LWN.net Linux Distribution List. Diakses pada 2006-05-19
  25. ^ Advani, Prakash If I could re-write Linux. freeos.com. Diakses pada 2007-01-23
  26. ^ Advani, Prakash Microsoft Office for Linux?. FreeOS. FreeOS Technologies (I) Pvt. Ltd.. Diakses pada 2008-02-03
  27. ^ Smith-Heisters, Ian Editing audio in Linux. Ars Technica. Ars Technica, LLC. Diakses pada 2008-02-03
  28. ^ Lumma, Carl Linux: It's Not Just For Computer Geeks Anymore. Keyboard Magazine. New Bay Media, LLC.. Diakses pada 2008-02-03
  29. ^ James, Daniel Using Linux For Recording & Mastering. Sound On Sound. SOS Publications Group. Diakses pada 2008-02-03
  30. ^ The table of equivalents/replacements/analogs of Windows software

Silverlight 1.0 Released and Silverlight for Linux Announced

Silverlight is a cross platform, cross browser plug-in that enables designers and developers to build rich media experiences and .NET based RIAs for the web. I first blogged about Silverlight back in May after we announced it at our MIX conference in Las Vegas.

Silverlight 1.0 and Expression Encoder 1.0 Released

Today we shipped the Silverlight 1.0 release for Mac and Windows. Silverlight 1.0 is focused on enabling rich media scenarios in a browser. Some of its features include:

  • Built-in codec support for playing VC-1 and WMV video, and MP3 and WMA audio within a browser. The VC-1 codec is a big step forward for incorporating media within a web experience - since it supports very efficiently playing high-quality, high definition video in the browser. It is a standards-based media format that is implemented in all HD-DVD and Blueray DVD players, and is supported by hundreds of millions of mobile devices, XBOX 360s, PlayStation 3s, and Windows Media Centers (enabling you to encode content once and run it on all of these devices + Silverlight unmodified). It enables you to use a huge library of existing video content and provides access to the broad ecosystem of existing Windows Media tools, components, vendors and hardware.
  • Silverlight supports the ability to progressively download and play media content from any web-server. You can point Silverlight at any URL containing video/audio media content, and it will download it and enable you to play it within the browser. No special server software is required, and Silverlight can work with any web-server (including Apache on Linux). We'll also be releasing an IIS 7.0 media pack that enables rich bandwidth throttling features that you can enable on your web-server for free.
  • Silverlight also optionally supports built-in media streaming. This enables you to use a streaming server like Windows Media Server on the backend to efficiently stream video/audio (note: Windows Media Server is a free product that runs on Windows Server). Streaming brings some significant benefits in that: 1) it can improve the end-user's experience when they seek around in a large video stream, and 2) it can dramatically lower your bandwidth costs.

  • Silverlight enables you to create rich UI and animations, and blend vector graphics with HTML to create compelling content experiences. It supports a Javascript programming model to develop these. One benefit of this is that it makes it really easy to integrate these experiences within AJAX web-pages (since you can write Javascript code to update both the HTML and XAML elements together).

  • Silverlight makes it easy to build rich video player interactive experiences. You can blend together its media capabilities with the vector graphic support to create any type of media playing experience you want. Silverlight includes the ability to "go full screen" to create a completely immersive experience, as well as to overlay menus/content/controls/text directly on top of running video content (allowing you to enable DVD like experiences). Silverlight also provides the ability to resize running video on the fly without requiring the video stream to be stopped or restarted.

Today we also shipped the Expression Encoder 1.0 release on the web. Expression Encoder is part of the Microsoft Expression suite of products, and enables designers and content professionals to enhance, encode and publish media content for Silverlight. You can use it to import media files from a variety of formats (QuickTime, WMV, AVI and more), add leaders and trailers to videos for advertising or roll credits, easily watermark video with corporate logos or brands, and then tune the encoding settings to create optimal web-friendly Silverlight experiences.

Deployed Silverlight 1.0 Customers

This week we'll have a wide range of customers already deployed live on the Silverlight 1.0 release. A few of them include: MLB.com (Major League Baseball), Home Shopping Network, World Wrestling Entertainment, and the "Entertainment Tonight" show.

Silverlight is also now deployed on several Microsoft sites, including the Halo 3 preview site (click here for the awesome HD version), Tafiti.com, MSN Extra, and MSN Podium '08. You'll also see Silverlight used prominently in several upcoming MSN and Microsoft.com sites.

Silverlight for Linux Support

Over the last few months we've been working to enable Silverlight support on Linux, and today we are announcing a formal partnership with Novell to provide a great Silverlight implementation for Linux. Microsoft will be delivering Silverlight Media Codecs for Linux, and Novell will be building a 100% compatible Silverlight runtime implementation called "Moonlight".

Moonlight will run on all Linux distributions, and support FireFox, Konqueror, and Opera browsers. Moonlight will support both the JavaScript programming model available in Silverlight 1.0, as well as the full .NET programming model we will enable in Silverlight 1.1. Below is a screen-shot of the Silverlight 1.1 Flight-Picker application I built in my keynote at MIX running on Linux using Moonlight:

Keep an eye on Miguel de Icaza's blog - I know he'll be blogging a lot more about our partnership on this shortly.

Silverlight 1.1 Update

Now that Silverlight 1.0 is out the door, my team is cranking hard on our Silverlight 1.1 release.

Silverlight 1.1 will include a cross-platform version of the .NET Framework, and will enable a rich .NET development experience in the browser. It will support a WPF programming model for UI - including support for an extensible control model, layout management, data-binding, control skinning, and a rich set of built-in controls. It will also include a subset of the full .NET Framework base class library you use today, including support for collections, generics, IO, threading, globalization, networking (including sockets, web-services and REST support), HTML DOM, XML, local storage, and LINQ.

You'll be able to use any .NET language to develop a Silverlight application (VB, C#, JavaScript, Python, Ruby, Pascal, and more). It is going to really open up a lot of new development opportunities.

How to Learn More about Silverlight

Visit the www.silverlight.net community site to learn more about Silverlight and how to get started with it (and visit the Silverlight video page for free short videos on how to develop with it). You might also want to watch this new Channel9 video from today with me talking about Silverlight:

You can use any text editor to build Silverlight applications. If you have VS 2008 or the free Visual Web Developer Express 2008 edition, you can download this library to get JavaScript intellisense for Silverlight 1.0. If you are building .NET applications using the Silverlight 1.1 Alpha, you can download the Silverlight Tools for VS 2008 Alpha and Expression Blend Preview.