GNU Hurd

Nama dan Logo

Pada Desember 1991, arsitek utama dari Hurd, menjelaskan arti akronim berulang dari nama Hurd:
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.
— Thomas Bushnell
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. Logo Hurd adalah grafik dimana node mewakili server Hurd kernel dan tepi yang diarahkan adalah pesan IPC.
Karena keadaan teknologi mikrokernel, singkatan rekursif ganda kadang-kadang disebut oleh para ahli sebagai fitur yang paling menarik dari GNU Hurd.

Sejarah Perkembangan

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.
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. 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". 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.
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, Hurd masih belum dianggap cocok untuk lingkungan produksi. Pembangunan pada umumnya belum memenuhi harapan, dan masih ada bug dan fitur yang hilang. Hal ini telah menghasilkan produk yang lebih buruk daripada yang banyak orang (termasuk Stallman) harapkan. 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.
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

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 massal, 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.
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.
Dari awal, Hurd dikembangkan dengan GNU Mach sebagai Mikrokernel. Ini adalah sebuah keputusan teknis yang dibuat oleh Richard Stallman, yang mengira akan mempercepat pengerjaan. Dia mengakui bahwa ia salah tentang hal itu. 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

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. 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", dan proposal untuk bagaimana sistem masa depan dapat dirancang, dikenal sebagai "kertas posisi". Pada tahun 2008, Neal Walfield mulai bekerja pada mikrokernel Viengoos sebagai kernel modern asli untuk HURD. Hingga 2009, perkembangan Viengoos karena Walfield tidak punya waktu untuk mengerjakannya.
Sementara itu, yang lain terus bekerja pada varian Mach untuk Hurd.