GNU Hurd

Dari Wikipedia bahasa Indonesia, ensiklopedia bebas
Langsung ke: navigasi, cari

Templat:Primary sources

GNU Hurd
Hurd-logo.svg
HURD Live CD.png
HURD Live CD
Perusahaan / pengembang Proyek GNU
Thomas Bushnell
Roland McGrath
Marcus Brinkmann
Neal Walfield
Diprogram dalam Assembly, C
Keluarga bertipe Unix
Status terkini Sekarang
Model sumber Perangkat Lunak Bebas
Rilis tak-stabil terkini Arch Hurd LiveCD / 17 Agustus 2011; 2 tahun yang lalu (2011-08-17)
Jenis kernel Mikrokernel klien/server
Ruang pengguna GNU dan lainya
Antarmuka bawaan Bash
Lisensi Lisensi Publik Umum GNU
Situs web resmi www.gnu.org/perangkat%20lunak/hurd/

GNU Hurd adalah sebuah kernel sistem operasi yang dirancang sebagai pengganti Unix,[1] dirilis sebagai perangkat lunak bebas dibawah Lisensi Publik Umum GNU (GPL). Telah dalam pengembangan sejak tahun 1990 oleh Proyek GNU dari Yayasan Perangkat Lunak Bebas.

GNU Hurd terdiri dari satu set protokol dan proses server (atau jurik, di dalam terminologi Unix) yang berjalan pada GNU Mach mikrokernel; bersama-sama mereka dimaksudkan untuk membentuk kernel dari sistem operasi GNU.[1] Hurd bertujuan untuk melampaui sistem operasi Unix dalam fungsi, keamanan, dan stabilitas, sedangkan sisanya sebagian besar agar kompatibel dengan Unix. Proyek GNU memilih mikrokernel, arsitektur Server-kilen untuk sistem operasi mereka, karena memiliki keuntungan dibanding arsitektur kernel monolitik tradisional Unix.[2]

[sunting | sunting sumber]

Pada Desember 1991, arsitek utama dari Hurd, menjelaskan arti akronim berulang dari nama Hurd:[3]

Sudah waktunya [untuk] menjelaskan arti "Hurd". "Hurd" adalah singkatan dari "Hird of Unix-Replacing Daemons". Dan kemudian "Hird" adalah singkatan dari "Hurd of Interfaces Representing Depth". Menurut pengetahuan saya, ini adalah Perangkat Lunak pertama yang diberi nama sepasang akronim berulang.

Karena kedua hurd dan hird hanya ejaan alternatif untuk kawanan dalam bahasa inggris, nama lengkap GNU Hurd juga merupakan plesetan dari kata kawanan dari gnu atau herd of gnus, yang mencerminkan bagaimana kernel bekerja. Logo Hurd disebut juga Hurd kotak dan juga mencerminkan arsitekturnya.[4] Logo Hurd adalah grafik dimana node mewakili server Hurd kernel dan tepi yang diarahkan adalah pesan IPC.[3]

Karena keadaan teknologi mikrokernel, singkatan rekursif ganda kadang-kadang disebut oleh para ahli sebagai fitur yang paling menarik dari GNU Hurd.[5]Templat:Qn

Sejarah Perkembangan[sunting | sunting sumber]

Richard Stallman mendirikan Proyek GNU pada September 1983 dengan tujuan membuat sebuah sistem operasi GNU yang bebas. Awalnya komponen yang diperlukan untuk kernel dan pengembangan adalah: penyunting, shell, kompilator dan lain-lain. Pada tahun 1989, GPL dibentuk dan satu-satunya komponen utama yang hilang adalah kernel.[6][7]

Pembangunan di Hurd dimulai pada tahun 1990 setelah upaya penulisan kernel ditinggalkan pada tahun 1986, berdasarkan penelitian sistem operasi TRIX yang dikembangkan oleh Profesor Steve Ward dan kelompoknya di Laboratorium Komputer MIT.[8] Menurut Thomas Bushnell, arsitek utama Hurd, Rencana awal mereka adalah untuk mengadaptasi kernel 4.4BSD-Lite dan belakangan ia berpendapat, "Sekarang sangat jelas bagi saya bahwa proyek ini akan berhasil dan dunia akan menjadi tempat yang sangat berbeda hari ini".[9] Pada tahun 1987 Richard Stallman mengusulkan untuk menggunakan Mach mikrokernel yang dikembangkan di Carnegie Mellon University. Usaha ini telah tertunda selama tiga tahun karena ketidakpastian mengenai apakah CMU akan merilis kode Mach bawah lisensi yang sesuai.[8]

Dengan dirilisnya kernel Linux pada tahun 1991, komponen utama ruang pengguna GNU segera menjadi sistem operasi berbasis kernel Linux (distribusi Linux s), hal ini mendorong kontroversi penamaan GNU/Linux.

Pengembangan Hurd berjalan dengan lambat. Meskipun pengumuman optimis oleh Stallman pada tahun 2002 memprediksi rilis GNU/Hurd akhir tahun itu,[10] Hurd masih belum dianggap cocok untuk lingkungan produksi. Pembangunan pada umumnya belum memenuhi harapan, dan masih ada bug dan fitur yang hilang.[11] Hal ini telah menghasilkan produk yang lebih buruk daripada yang banyak orang (termasuk Stallman) harapkan.[12] Pada tahun 2010, setelah dua puluh tahun dalam pengembangan, Stallman mengatakan bahwa ia "tidak terlalu optimis" tentang GNU Hurd. Telah ada beberapa kemajuan, tetapi harus benar-benar unggul untuk pemecahan banyak masalah", tetapi ia menambahkan bahwa "penyelesaiannya tidak penting" untuk sistem GNU karena kernel bebas sudah ada di Linux, dan menyelesaikan Hurd tidak akan mengatasi masalah utama yang tersisa untuk sistem operasi bebas yaitu dukungan perangkat.[13]

Proyek Debian, di antara yang lain, telah bekerja pada proyek Hurd untuk menghasilkan distribusi Hurd berbasis sistem operasi GNU untuk sistem yang kompatibel dengan IBM PC.

Arsitektur[sunting | sunting sumber]

Struktur Utama sistem operasi berbasis monolitik kernel dan Mikrokernel

Tidak seperti kebanyakan kernel Unix lain, Hurd menggunakan arsitektur client-server, dibangun di atas Mikrokernel yang bertanggung jawab untuk menyediakan layanan kernel yang paling dasar - akses koordinasi ke perangkat keras: CPU (melalui manajemen proses dan penjadwalan), RAM (melalui manajemen memori), dan berbagai input/output perangkat (via penjadwalan I/O) untuk suara, grafis, penyimpanan masal, dll. Dalam teori desain Mikrokernel akan memungkinkan untuk semua driver perangkat dibuat sebagai server yang bekerja di ruang pengguna, tapi sekarang sebagian besar driver semacam ini masih terdapat di dalam ruang kernel GNU Mach.[14]

Menurut para pengembang Hurd keuntungan utama dari desain berbasis mikrokernel adalah kemampuan untuk memperluas sistem: membuat modul baru tidak membutuhkan pengetahuan yang dalam tentang seluruh kernel dan sebuah bug di dalam modul tidak akan merusak seluruh sistem. Hurd menyediakan sebuah kosep penerjemah, yaitu sebuah kerangka dari modul untuk memperluas fungsi sebuah file system.[15]

Dari awal, Hurd dikembangkan dengan GNU Mach sebagai Mikrokernel. Ini adalah sebuah keputusan teknis yang dibuat oleh Richard Stallman, yang mengira akan mempercepat pengerjaan. Beliau mengakui bahwa ia salah tentang hal itu.[16] Sistem bertipe-Unix yang juga mengerjakan mikrokernel Mach adalah OSF/1, Lites, dan MkLinux. Mac OS X dan NeXTSTEP menggunakan kernel hibrida berdasarkan Mach.

Mikrokernel lain[sunting | sunting sumber]

Mulai tahun 2004, berbagai usaha telah dilakukan untuk memindahkan Hurd ke mikrokernel yang lebih modern. mikrokernel L4 adalah pilihan sebenarnya pada tahun 2004, namun kemajuannya lambat dan akhirnya berhenti. Namun, selama tahun 2005, pengembang Hurd Neal Walfield menyelesaikan kerangka manajemen memori awal L4 untuk Hurd, dan Marcus Brinkmann memindahkan bagian penting dari glibc; yaitu, membuat proses kode startup bekerja, yang memungkinkan program berjalan, sehingga memungkinkan program pertama pengguna (contohnya seperti program hallo dunia dalam bahasa C) untuk berjalan.

Sejak tahun 2005 Brinkmann dan Walfield mulai meneliti Coyotos sebagai baru untuk HURD.[17][18] Pada tahun 2006, Brinkmann bertemu dengan Jonathan Shapiro (seorang arsitek utama Sistem Operasi Coyotos) untuk membantu dan mendiskusikan penggunaan kernel Coyotos untuk GNU/Hurd. Dalam diskusi lebih lanjut pengembang HURD menyadari bahwa Coyotos (serta kernel lain yang serupa) tidak cocok untuk HURD.

Pada tahun 2007, pengembang Hurd Neal Walfield dan Marcus Brinkmann memberikan kritik tentang arsitektur Hurd, yang dikenal sebagai "kritik",[19] dan proposal untuk bagaimana sistem masa depan dapat dirancang, dikenal sebagai "kertas posisi".[20] Pada tahun 2008, Neal Walfield mulai bekerja pada mikrokernel Viengoos sebagai kernel modern asli untuk HURD. Pada 2009, perkembangan Viengoos karena Walfield tidak punya waktu untuk mengerjakannya.[21]

Sementara itu, yang lain terus bekerja pada varian Mach untuk Hurd.[22]

Tambahan Unix[sunting | sunting sumber]

Sejumlah konsep tradisional Unix diganti atau diperpanjang di Hurd.

Didalam Unix, setiap program yang berjalan memiliki asosiasi id pengguna, yang biasanya sesuai dengan pengguna yang memulai proses. Id ini sebagian besar menentukan tindakan yang diizinkan untuk program. Tidak ada proses luar dapat mengubah id pengguna dari program berjalan. Sebuah proses Hurd, di sisi lain, berjalan dibawah beberapa pasang id pengguna, yang dapat berisi beberapa id, satu, atau tidak ada. Sebuah proses yang cukup istimewa dapat menambah dan menghapus id ke proses lain. Misalnya ada server password yang akan memberikan id dengan memasukan password login yang benar.

Mengenai sistem berkas, program yang sesuai dapat ditunjuk sebagai penerjemah untuk satu berkas atau seluruh bagan direktori. Setiap akses ke berkas yang telah diterjemahkan, atau file dibawah bagan direktor dalam kasus lain, sebenarnya ditangani oleh program. untuk contoh berkas penerjemah mungkin mengarahkan operasi membaca dan menulis ke file lain, tidak seperti tautan simbolis Unix.

Hurd membutuhkan pengebut/bootloader yang mampu multiboot, seperti GRUB.

Distribusi GNU yang menggunakan Hurd[sunting | sunting sumber]

Distribusi GNU berbasis Hurd yaitu:

Lihat juga[sunting | sunting sumber]

Referensi[sunting | sunting sumber]

  1. ^ a b "What Is the GNU Hurd?". GNU. Diakses 2010-03-04. 
  2. ^ "advantages". GNU. Diakses 2011-12-07. 
  3. ^ a b Vervloesem, Koen (July 7, 2010). "The Hurd: GNU's quest for the perfect kernel". LWN.net. Diakses October 5, 2012. 
  4. ^ "GNU Hurd: Origin of the Name". GNU. Diakses 2010-03-04. 
  5. ^ Doeppner, Thomas W. "Operating System Design." Computer Science 167. Brown University. Providence, RI, Oct 1, 2011.
  6. ^ Hillesley, Richard (June 30, 2010). "GNU HURD: Altered visions and lost promise". Diakses October 1, 2012. 
  7. ^ "Linux and the GNU Project". GNU. 2010-01-26. Diakses 2010-03-04. 
  8. ^ a b "The GNU Hurd History, "How it Started"". GNU. Diakses 2006-08-27. 
  9. ^ Salus, Peter H.. "The Hurd and BSDI". The Daemon, the GNU and the Penguin. Diakses 2006-08-08. 
  10. ^ Ribeiro, John (2002-03-11). "Free Software Sees GNU Loose of Linux". PC World. Diakses 2012-10-05. 
  11. ^ "Status". GNU. Diakses 2010-03-04. 
  12. ^ Stallman, Richard (2006-03-09). "The Free Software Movement and the Future of Freedom" (ogg). Free Software Foundation. Zagreb. Ringkasan. "This is the way, also, that people thought was the cleanest possible way to design kernels back in 1990. Well, it took many many many years to get this kernel to run at all, and it still doesn't run well, and it looks like there may be fundamental problems with this design, which nobody knew about back in 1990." 
  13. ^ Stallman, Richard (2010-07-29). "RMS AMA". Reddit. Diakses 2011-12-07. 
  14. ^ Kousoulos, Constantine (2007-03-21). "Re: Device drivers in Mach?". bug-hurd mailing list. http://lists.gnu.org/archive/html/bug-hurd/2007-03/msg00089.html.
  15. ^ Thomas W. Doeppner (20 December 2010). Sistem Operasi In Depth: Design and Programming. John Wiley & Sons. hlm. 160. ISBN 978-0-471-68723-8. Diakses 29 November 2012. 
  16. ^ Stallman, Richard (2000-10-12). "In Defense of Red Hat". Linux Today. Diakses 2011-12-07. "I take full responsibility for the technical decision to develop the GNU kernel based on Mach, a decision which seems to have been responsible for the slowness of the development. I thought using Mach would speed the work by saving us a large part of the job, but I was wrong." 
  17. ^ Shapiro, Jonathan S. (2005-10-27). "Re: A comment about changing kernels". l4-hurd mailing list. http://lists.gnu.org/archive/html/l4-hurd/2005-10/msg00755.html.
  18. ^ Bachmann, Tom (2006-07-07). "Re: seL4, L4.sec and coyotos mess". l4-hurd mailing list. http://lists.gnu.org/archive/html/l4-hurd/2006-07/msg00004.html.
  19. ^ Walfield, Neal H.; Brinkmann, Marcus (2007-07). "A Critique of the GNU Hurd Multi-server Operating System" (PDF). GNU. Diakses 2011-12-07. 
  20. ^ Walfield, Neal H.; Brinkmann, Marcus (2007-01-04). "Improving Usability via Access Decomposition and Policy Refinement" (PDF). GNU. Diakses 2011-12-07. 
  21. ^ "viengoos". GNU. Diakses 2010-03-04. 
  22. ^ "What happened to the L4/Coyotos/viengoos micro-kernels?". GNU. Diakses 2011-01-07. 
  23. ^ nixos.org
  24. ^ lunak/hurd/hurd/running/nix.html "Nix-based GNU/Hurd System". Gnu.org. 2012-03-21. Diakses 2012-07-12. 
  25. ^ lunak/hurd/hurd/running/live_cd.html "GNU Hurd/ hurd/ running/ live cd". Diakses November 19, 2012. 
Kesalahan pengutipan: Tag <ref> dengan nama "debian-hurd-doc" yang didefinisikan di <references> tidak digunakan pada teks sebelumnya.

Pranala Luar[sunting | sunting sumber]