Thursday, May 12, 2011

Mengenal WINE (Wine Is Not an Emulator)



Wine adalah sebuah perangkat lunak pada sistem operasi GNU/Linux dan Unix-Like, yang dapat digunakan untuk menjalankan aplikasi  berbasis sistem operasi microsoft windows  secara langsung (native) pada sistem operasi GNU/Linux dan Unix-like. Sebagai contoh dengan menggunakan wine, saya dapat langsung menjalankan aplikasi notepad milik windows yang berupa executable file (*.exe) langsung, tanpa merubah atau menulis ulang source codenya. Dalam paket installasinya wine biasanya sudah menyertakan beberapa pustaka-pustaka dasar dan beberapa peralatan yang dapat digunakan untuk mengkonfigurasi wine.

Wine configuration
Beberapa peralatan yang disertakan pada wine :
-Wine Configuration
-Regedit
-Explorer
-WinHelp
-Notepad

Registry Editor milik wine
A. Cara Wine Bekerja 
Tak kenal maka tak sayang, :) sebelum menggunakan wine, ada baiknya kita mengenal bagaimana cara wine bekerja, Wine sendiri bekerja di level compability layer, dengan menggunakan daemon/service/layanan bernama wineserver, dimana wineserver ini akan menggantikan fungsi dasar windows (bertindak seolah-olah sebagai windows asli) untuk melayani aplikasi-aplikasi yang membutuhkan akses keregistry windows(wine) dan akses ke pustaka-pustaka windows (wine), serta mengintegrasikan aplikasi yang dijalankan ke X Windows sistem milik GNU/Linux.

Meskipun wine dapat bertindak selayaknya windows dengan menerapkan/meniru beberapa fungsi dasar windows, sampai sekarang wine belum bisa mengemulasikan driver windows asli secara langsung (native) , jadi misalnya ada sebuah perangkat keras yang sudah dilengkapi dengan driver berupa file executable/installer untuk windows, jangan heran walaupun bisa diinstall menggunakan wine, tetapi sistem (wine) tidak dapat mengenali hardware dan menjalankannya seperti pada windows,  karena memang hal itu sampai sekarang belum memungkinkan dilakukan oleh wine.

Proses wineserver (daemon wine)
Dan berbeda dengan virtual machine yang mensimulasikan seluruh sistem operasi dalam sebuah lingkungan perangkat keras virtual, aplikasi windows yang dijalankan dengan wine dianggap sama dengan aplikasi GNU/Linux lainnya, sehingga tidak membutuhkan memori sebanyak virtual machine yang berdampak pada eksekusi program di dalam Wine menjadi lebih cepat. dan dengan menggunakan wine jika ada aplikasi windows yang mengalami kerusakan atau crash penanganannya  akan lebih mudah.

B. Daftar aplikasi yang sukses berjalan di Wine
Komunitas pengembang Wine sendiri aktif menguji coba aplikasi-aplikasi windows yang dapat dijalankan di GNU/Linux sistem menggunakan wine, dan membuatnya menjadi sebuah daftar referensi yang bisa  di lihat http://appdb.winehq.org/, jadi kita bisa melihat terlebih dahulu, hasil review aplikasi yang ingin kita jalankan di wine, sebelum mencobanya langsung,
Beberap aplikasi dikategorikan beberap kelompok untuk kemudahan, diantaranya  :

1.Platinum List 
Aplikasi yang dapat berjalan dengan sempurna menggunakan Wine, tanpa harus dikonfigurasi macam-macam

2.Gold List
Aplikasi yang dapat berjalan dengan sempurna menggunakan Wine, setelah dilakukan beberapa konfigurasi

3.Silver List
Aplikasi yang berjalan namun dengan masalah kecil,namun secara keseluruhan aplikasi dapat menjalankan fungsinya dengan baik.

Daftar Aplikasi yang sukses berjalan di Wine
4.Bronze
Aplikasi yang dapat berjalan dengan beberapa masalah utama, seperti aplikasi yang ketika sedang digunakan menutup tiba-tiba dan tidak dapat dijalankan lagi, atau aplikasi yang ketika dijalankan hanya sampai pada tampilan kemudian tidak merespon input pengguna (freeze)

5.Garbage
Aplikasi yang tidak dapat berjalan sama sekali, atau aplikasi yang ketika dijalankan akan memunculkan pesan-pesan error kemudian menutup atau tidak menampilkan pesan sama sekali.

Contoh aplikasi kategori Garbage pada Appdb
Website lain yang menyediakan daftar nama aplikasi yang sudah diuji coba oleh wine :
http://www.wine-reviews.net/

C. Mengembangkan aplikasi dengan Wine
Wine sendiri juga dapat dimanfaatkan, untuk mengembangkan atau memberdayakan software windows yang telah ada menjadi crossplatform (dapat dijalankan antar sistem operasi) tanpa harus menulis ulang kode sumbernya, karena selama aplikasi yang telah ada tidak membutuhkan akses ke driver windows atau pustaka-pustaka khusus windows, aplikasi tersebut akan dapat dijalankan secara sempurna seperti dijalankan pada sistem operasi microsoft windows aslinya.

Teamviewer adalah contoh aplikasi Linux resmi
dari pengembang yang dibundel dengan Wine
Contoh nyata yang bisa kita lihat penggunaan Wine dalam hal ini, adalah pada aplikasi Google Picasa for Linux dan Teamviewer for Linux dimana keduanya merupakan aplikasi versi windows yang dibundel bersama dengan wine yang sudah terkonfigurasi. Jadi bagi pengembang aplikasi berbasis windows yang ingin produknya berjalan di platform lain (GNU/Linux) dan tak ingin repot menulis ulang aplikasinya dapat menggunakan wine seperti yang telah dilakukan oleh pengembang Teamviewer dan Google Picasa. :)

Google Picasa for Linux  adalah contoh aplikasi
Linux resmi dari pengembang yang dibundel dengan Wine
Wine sendiri juga telah dikembangkan oleh beberapa pengembang perangkat lunak lainnya menjadi lebih  mudah dalam penggunaan dengan semakin banyak dukungan terhadap aplikasi windows, bahkan beberapa telah menjadi produk komersil seperti crossover dan cedega. Wine (crossover)  sendiri juga telah digunakan pada platform UNIX Mac OS X untuk menjalankan aplikasi berbasis windows.

Semoga dapat menambah sedikit pengetahuan kita semua mengenai dunia open source ;;)

Daftar Pustaka:

2 comments:

  1. Mas tanya donk, dengan menggunakan wine file-file exe yg dijalankan menjadi native sama seperti berjalan di windows. Tapi kalau kebetulan file exe disisipi virus, apa yang terjadi dengan linux kita? Apakah sama dampaknya seperti di windows?

    ReplyDelete
  2. Untuk saat ini tidak akan berpengaruh,karena belum ada virus windows yang dioptimalkan untuk berjalan di lingkungan wine hehe,, hanya berefek pada lingkungan kerja wine saja,
    tapi untuk berjaga-jaga sebaiknya jangan jalankan wine dengan hak akses root :),
    dan untuk Aplikasi wine sendiri karena dia aplikasi native linux. wine tidak akan terkena virus windows. Yang bisa terinfeksi hanyalah file-file .exe yang dijalankan oleh wine.
    dan kalau lingkungan kerja winenya terserang virus, tinggal hapus aja direktori kerja wine di
    $home/%user%/.wine
    ntar wine akan membuat direktori kerja baru, jadi seperti install ulang windows :D,

    oh ya,,ada sebuah projet opensource yang menggunakan wine untuk menganalisa malware/virus windows,
    bisa dikunjungi di: :)
    http://zerowine.sourceforge.net/

    ReplyDelete