GNU Hurd is a
free softwareFree software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...
Unix-likeA Unix-like operating system is one that behaves in a manner similar to a Unix system, while not necessarily conforming to or being certified to any version of the Single UNIX Specification....
replacement for the
UnixUnix is a multitasking, multi-user computer operating system originally developed in 1969 by a group of AT&T employees at Bell Labs, including Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas McIlroy, and Joe Ossanna...
kernelIn computing, the kernel is the main component of most computer operating systems; it is a bridge between applications and the actual data processing done at the hardware level. The kernel's responsibilities include managing the system's resources...
, released under the
GNU General Public LicenseThe GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....
. It has been under development since 1990 by the
GNU ProjectThe GNU Project is a free software, mass collaboration project, announced on September 27, 1983, by Richard Stallman at MIT. It initiated GNU operating system development in January, 1984...
of the
Free Software FoundationThe Free Software Foundation is a non-profit corporation founded by Richard Stallman on 4 October 1985 to support the free software movement, a copyleft-based movement which aims to promote the universal freedom to create, distribute and modify computer software...
. It consists of a set of protocols and
server processesIn the context of client-server architecture, a server is a computer program running to serve the requests of other programs, the "clients". Thus, the "server" performs some computational task on behalf of "clients"...
(or
daemonsIn Unix and other multitasking computer operating systems, a daemon is a computer program that runs as a background process, rather than being under the direct control of an interactive user...
, in
UnixUnix is a multitasking, multi-user computer operating system originally developed in 1969 by a group of AT&T employees at Bell Labs, including Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas McIlroy, and Joe Ossanna...
terminology) that run on the
GNU MachGNU Mach is an implementation of the Mach microkernel. It is the default microkernel in the GNU Hurd operating system. GNU Mach runs on IA-32 machines. GNU Mach is maintained by developers on the GNU project...
microkernelIn computer science, a microkernel is the near-minimum amount of software that can provide the mechanisms needed to implement an operating system . These mechanisms include low-level address space management, thread management, and inter-process communication...
; together they are intended to form the kernel of the
GNUGNU is a Unix-like computer operating system developed by the GNU project, ultimately aiming to be a "complete Unix-compatible software system"...
operating system. The Hurd aims to surpass
UnixUnix is a multitasking, multi-user computer operating system originally developed in 1969 by a group of AT&T employees at Bell Labs, including Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas McIlroy, and Joe Ossanna...
operating systems in functionality, security, and stability, while remaining largely compatible with them. The GNU Project chose the
microkernel server–client architectureIn computer science, a microkernel is the near-minimum amount of software that can provide the mechanisms needed to implement an operating system . These mechanisms include low-level address space management, thread management, and inter-process communication...
for the operating system, due to perceived advantages over the traditional Unix
monolithic kernelA monolithic kernel is an operating system architecture where the entire operating system is working in the kernel space and alone as supervisor mode...
architecture.
HURD is a
mutuallyMutual recursion is a form of recursion where two mathematical or computational functions are defined in terms of each other.For instance, consider two functions even? and odd? defined as follows: function even?...
recursive acronymA recursive acronym is an acronym or initialism that refers to itself in the expression for which it stands...
, standing for
HIRD of Unix-replacing daemons, where
HIRD stands for
HURD of interfaces representing depth. As both
hurd and
hird are just alternate spellings for the English word
herd, the full name
GNU Hurd is also a play on the words
herdHerd refers to a social grouping of certain animals of the same species, either wild or domestic, and also to the form of collective animal behavior associated with this or as a verb, to herd, to its control by another species such as humans or dogs.The term herd is generally applied to mammals,...
of gnusThe wildebeest , also called the gnu is an antelope of the genus Connochaetes. It is a hooved mammal...
, reflecting how the kernel works.
Development history
Development on the GNU operating system began in 1984 and initially made good progress. Free GNU tools started to acquire a good reputation and were often adopted in preference to proprietary tools provided by system vendors. By the early 1990s, the only major component missing was the kernel.
Development on the Hurd began in 1990 after an abandoned kernel attempt in 1986, based on the research TRIX operating system developed by Professor Steve Ward and his group at
MIT'sThe Massachusetts Institute of Technology is a private research university located in Cambridge, Massachusetts. MIT has five schools and one college, containing a total of 32 academic departments, with a strong emphasis on scientific and technological education and research.Founded in 1861 in...
Laboratory for Computer Science (LCS). According to
Thomas BushnellThomas Bushnell, BSG, formerly known as Michael Bushnell, is a software developer and Gregorian friar. He was the founder and principal architect of GNU's official kernel project, GNU Hurd, from its instigation until November 2003, when he posted to the GNU project's discussion mailing list saying...
, the initial Hurd architect, their early plan was to adapt the 4.4BSD-Lite kernel and, in hindsight, "It is now perfectly obvious to me that this would have succeeded splendidly and the world would be a very different place today". However, in 1987, due to a lack of cooperation from the
BerkeleyThe University of California, Berkeley , is a teaching and research university established in 1868 and located in Berkeley, California, USA...
programmers,
Richard StallmanRichard Matthew Stallman , often shortened to rms,"'Richard Stallman' is just my mundane name; you can call me 'rms'"|last= Stallman|first= Richard|date= N.D.|work=Richard Stallman's homepage...
proposed instead to use the
Mach microkernelMach is an operating system kernel developed at Carnegie Mellon University to support operating system research, primarily distributed and parallel computation. Although Mach is often mentioned as one of the earliest examples of a microkernel, not all versions of Mach are microkernels...
developed at
Carnegie Mellon UniversityCarnegie Mellon University is a private research university in Pittsburgh, Pennsylvania, United States....
. Work on this was delayed for three years due to uncertainty over whether CMU would release the Mach code under a suitable license.
With the release of the
Linux kernelThe Linux kernel is an operating system kernel used by the Linux family of Unix-like operating systems. It is one of the most prominent examples of free and open source software....
in 1991, the primary user of GNU's userland components soon became operating systems based on the Linux kernel (
Linux distributionA Linux distribution is a member of the family of Unix-like operating systems built on top of the Linux kernel. Such distributions are operating systems including a large collection of software applications such as word processors, spreadsheets, media players, and database applications...
s), prompting the coining of the
controversial term GNU/LinuxThe GNU/Linux naming controversy is a dispute among members of the free and open source software community over how to refer to the computer operating system commonly called Linux....
.
Development of the Hurd has proceeded slowly. Despite an optimistic announcement by Stallman in 2002 predicting a release of GNU/Hurd later that year, the Hurd is still not considered suitable for production environments. Development in general has not met expectations, and there are still bugs and missing features. This has resulted in a poorer product than many (including Stallman) had expected. In 2010, after twenty years under development, Stallman said that he was "not very optimistic about the GNU Hurd. It makes some progress, but to be really superior it would require solving a lot of deep problems", but added that "finishing it is not crucial" for the GNU system because a free kernel already existed in
LinuxLinux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...
, and completing Hurd would not address the main remaining problem for a free operating system: device support.
The
DebianDebian is a computer operating system composed of software packages released as free and open source software primarily under the GNU General Public License along with other free software licenses. Debian GNU/Linux, which includes the GNU OS tools and Linux kernel, is a popular and influential...
project, among others, have worked on the Hurd project to produce binary distributions of Hurd-based GNU operating systems for
IBM PC compatibleIBM PC compatible computers are those generally similar to the original IBM PC, XT, and AT. Such computers used to be referred to as PC clones, or IBM clones since they almost exactly duplicated all the significant features of the PC architecture, facilitated by various manufacturers' ability to...
systems.
Architecture
Unlike most
Unix-likeA Unix-like operating system is one that behaves in a manner similar to a Unix system, while not necessarily conforming to or being certified to any version of the Single UNIX Specification....
kernels, the Hurd uses a server–client architecture, built on a
microkernelIn computer science, a microkernel is the near-minimum amount of software that can provide the mechanisms needed to implement an operating system . These mechanisms include low-level address space management, thread management, and inter-process communication...
that is responsible for providing the most basic kernel services – coordinating access to the
hardwarePersonal computer hardware are component devices which are typically installed into or peripheral to a computer case to create a personal computer upon which system software is installed including a firmware interface such as a BIOS and an operating system which supports application software that...
: the
CPUThe central processing unit is the portion of a computer system that carries out the instructions of a computer program, to perform the basic arithmetical, logical, and input/output operations of the system. The CPU plays a role somewhat analogous to the brain in the computer. The term has been in...
(through
process managementProcess management is an integral part of any modern day operating system . The OS must allocate resources to processes, enable processes to share and exchange information, protect the resources of each process from other processes and enable synchronisation among processes...
and
schedulingIn computer science, a scheduling is the method by which threads, processes or data flows are given access to system resources . This is usually done to load balance a system effectively or achieve a target quality of service...
), RAM (via
memory managementMemory management is the act of managing computer memory. The essential requirement of memory management is to provide ways to dynamically allocate portions of memory to programs at their request, and freeing it for reuse when no longer needed. This is critical to the computer system.Several...
), and other various
input/outputIn computing, input/output, or I/O, refers to the communication between an information processing system , and the outside world, possibly a human, or another information processing system. Inputs are the signals or data received by the system, and outputs are the signals or data sent from it...
devices (via
I/O schedulingInput/output scheduling is a term used to describe the method computer operating systems decide the order that block I/O operations will be submitted to storage volumes...
) for sound, graphics, mass storage, etc. In theory the microkernel design would allow for all device drivers to be built as servers working in
user spaceA conventional computer operating system usually segregates virtual memory into kernel space and user space. Kernel space is strictly reserved for running the kernel, kernel extensions, and most device drivers...
, but today most drivers of this kind are still contained in the
GNU MachGNU Mach is an implementation of the Mach microkernel. It is the default microkernel in the GNU Hurd operating system. GNU Mach runs on IA-32 machines. GNU Mach is maintained by developers on the GNU project...
kernel space. This is because, initially, user-space drivers would have suffered from performance loss, due to the overhead of the Mach interprocess communication. With the performance of today's machines, it is possible that this overhead would no longer cause a significant performance problem.
In 2007, Hurd developers Neal Walfield and Marcus Brinkmann gave a critique of the Hurd architecture, known as "the critique", and a proposal for how a future system may be architected, known as "the position paper".
Choice of microkernel
From early on, the Hurd was developed to use
GNU MachGNU Mach is an implementation of the Mach microkernel. It is the default microkernel in the GNU Hurd operating system. GNU Mach runs on IA-32 machines. GNU Mach is maintained by developers on the GNU project...
as the microkernel. This was a technical decision made by
Richard StallmanRichard Matthew Stallman , often shortened to rms,"'Richard Stallman' is just my mundane name; you can call me 'rms'"|last= Stallman|first= Richard|date= N.D.|work=Richard Stallman's homepage...
, who thought it would speed up the work by saving a large part of it. He has admitted that he was wrong about that. Other Unix-like systems working on the Mach microkernel include OSF/1,
LitesLites was a Unix-like operating system, based on 4.4BSD and the Mach microkernel.Specifically, Lites was a multi-threaded server and emulation library that provided unix functionality to a Mach based system...
, and
MkLinuxMkLinux is an open source computer operating system started by the OSF Research Institute and Apple Computer in February 1996 to port Linux to the PowerPC platform, and Macintosh computers...
.
Mac OS XMac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...
and
NeXTSTEPNeXTSTEP was the object-oriented, multitasking operating system developed by NeXT Computer to run on its range of proprietary workstation computers, such as the NeXTcube...
use
hybrid kernelA hybrid kernel is a kernel architecture based on combining aspects of microkernel and monolithic kernel architectures used in computer operating systems. The category is controversial due to the similarity to monolithic kernel; the term has been dismissed by Linus Torvalds as simple marketing...
s based on Mach.
From 2004 onward, various efforts were launched to port the Hurd to more modern microkernels. The
L4 microkernelL4 is a family of second-generation microkernels, generally used to implement Unix-like operating systems, but also used in a variety of other systems.L4 was a response to the poor performance of earlier microkernel-base operating systems...
was the original choice in 2004, but progress slowed to a halt. Nevertheless, during 2005, Hurd developer Neal Walfield finished the initial memory management framework for the L4/Hurd port, and
Marcus BrinkmannMarcus Brinkmann is a German computer programmer. He is one of the lead developers of the Hurd/L4 which is supposed to supersede the GNU Mach microkernel in GNU...
ported essential parts of glibc; namely, getting the process startup code working, allowing programs to run, thus allowing the first user programs (trivial ones such as the
hello world programA "Hello world" program is a computer program that outputs "Hello world" on a display device. Because it is typically one of the simplest programs possible in most programming languages, it is by tradition often used to illustrate to beginners the most basic syntax of a programming language, or to...
in C) to run. Since 2005, most of the developers' time has gone into thinking about
CoyotosCoyotos is a capability-based security-focused microkernel operating system developed by The EROS Group, LLC. It is a successor to the EROS system that was created at the University of Pennsylvania and Johns Hopkins University.- History :...
(
EROSEROS is an operating system developed by The EROS Group, LLC., the Johns Hopkins University, and the University of Pennsylvania. Features include automatic data and process persistence, some preliminary real-time support, and capability-based security. EROS is purely a research operating system,...
successor). In 2006, Marcus Brinkmann and associates met with Jonathan Shapiro (a primary architect of the Coyotos Operating System) to aid in and discuss the use of the Coyotos kernel for GNU/Hurd. These discussions continued into 2007, but progress was slow. In 2008, Neal Walfield began working on the Viengoos microkernel as an alternative. In April 2009, Shapiro announced that work on the Coyotos project had ceased.
As of 2011, development on Viengoos is paused due to Walfield lacking time to work on it. In the meantime, others have continued working on the Mach variant of Hurd.
Unix extensions
A number of traditional Unix concepts are replaced or extended in the Hurd.
Under Unix, every running program has an associated user id, which normally corresponds to the user that started the
processIn computing, a process is an instance of a computer program that is being executed. It contains the program code and its current activity. Depending on the operating system , a process may be made up of multiple threads of execution that execute instructions concurrently.A computer program is a...
. This id largely dictates the actions permitted to the program. No outside process can change the user id of a running program. A Hurd process, on the other hand, runs under a
set of user ids, which can contain multiple ids, one, or none. A sufficiently privileged process can add and remove ids to another process. For example there is a password server that will hand out ids in return for a correct login password.
Regarding the
file systemA file system is a means to organize data expected to be retained after a program terminates by providing procedures to store, retrieve and update data, as well as manage the available space on the device which contain it. A file system organizes data in an efficient manner and is tuned to the...
, a suitable program can be designated as a
translator for a single file or a whole directory hierarchy. Every access to the translated file, or files below a hierarchy in the second case, is in fact handled by the program. For example a file translator may simply redirect read and write operations to another file, not unlike a Unix
symbolic linkIn computing, a symbolic link is a special type of file that contains a reference to another file or directory in the form of an absolute or relative path and that affects pathname resolution. Symbolic links were already present by 1978 in mini-computer operating systems from DEC and Data...
. The effect of Unix
mountingMounting takes place before a computer can use any kind of storage device . The user or their operating system must make it accessible through the computer's file system. A user can access only files on mounted media.- Mount point :A mount point is a physical location in the partition used as a...
is achieved by setting up a filesystem translator (using the "settrans" command). Translators can also be used to provide services to the user. For example, the
ftpfsFTPFS refers to file systems that support access to a File Transfer Protocol server through standard file system application programming interfaces ....
translator allows a user to encapsulate remote FTP sites within a directory. Then, standard tools such as
lsIn computing, ls is a command to list files in Unix and Unix-like operating systems. ls is specified by POSIX and the Single UNIX Specification.- History :An ls utility appeared in the original version of AT&T UNIX...
,
cpcp is a UNIX command used to copy a file. Files can be copied either to the same directory or to a completely different directory, possibly on a different file system or hard disk drive. If the file is copied to the same directory, the new file must have a different name to the original; in all...
, and
rmrm is a basic UNIX command used to remove objects such as files, directories, device nodes, symbolic links, and so on from the filesystem...
can be used to manipulate files on the remote system. Even more powerful translators are ones such as
UnionFSUnionFS is a filesystem service for Linux, FreeBSD and NetBSD which implements a union mount for other file systems. It allows files and directories of separate file systems, known as branches, to be transparently overlaid, forming a single coherent file system...
, which allows a user to unify multiple directories into one; thus listing the unified directory reveals the contents of all the directories (a feature that is missing in many Unixes, although available in modern
BSDsBerkeley Software Distribution is a Unix operating system derivative developed and distributed by the Computer Systems Research Group of the University of California, Berkeley, from 1977 to 1995...
).
The Hurd requires a
multibootThe Multiboot Specification is an open standard originally created in 1995 and developed by the Free Software Foundation. The specification describes a method of loading various multiboot kernels using a single compliant boot loader. GNU Hurd, VMware ESXi, Xen, and L4 microkernels all need to be...
-compliant
boot loaderIn computing, booting is a process that begins when a user turns on a computer system and prepares the computer to perform its normal operations. On modern computers, this typically involves loading and starting an operating system. The boot sequence is the initial set of operations that the...
, such as
GRUBGNU GRUB is a boot loader package from the GNU Project. GRUB is the reference implementation of the Multiboot Specification, which provides a user the choice to boot one of multiple operating systems installed on a computer or select a specific kernel configuration available on a particular...
.
Architecture of the servers
According to the Debian documentation there are 24 servers (18 core servers and 6 file system servers) named as follows:
Core servers
- auth (authentication server
Authentication servers are servers that provide authentication services to users or other systems via networking. Remotely placed users and other servers authenticate to such a server, and receive cryptographic tickets...
) : Receives requests and passwords from programs and gives them an ID, which changes the privileges of the program.
- crash (crash
A crash in computing is a condition where a computer or a program, either an application or part of the operating system, ceases to function properly, often exiting after encountering errors. Often the offending program may appear to freeze or hang until a crash reporting service documents...
server):
- exec (execution server): Translates an executable image (currently ELF
In computing, the Executable and Linkable Format is a common standard file format for executables, object code, shared libraries, and core dumps. First published in the System V Application Binary Interface specification, and later in the Tool Interface Standard, it was quickly accepted among...
and a.out are supported) to a runnable image in memory.
- fifo (FIFO
FIFO is an acronym for First In, First Out, an abstraction related to ways of organizing and manipulation of data relative to time and prioritization...
translator):
- new-fifo (new FIFO server)
- firmlink (the firmlink translator):
- fwd (forward server)
- hostmux (host multiplexer server);
- ifsock (server for sockets interface):
- init (init
init is a program for Unix-based computer operating systems that spawns all other processes. It runs as a daemon and typically has PID 1. The boot loader starts the kernel and the kernel starts init...
server)
- magic (magic server)
- null (null server): implements /dev/null
In Unix-like operating systems, /dev/null or the null device is a special file that discards all data written to it and provides no data to any process that reads from it ....
and /dev/zero
- pfinet (pfinet server)
- pflocal (pflocal server)
- proc (process server)
- symlink (symbolic link
In computing, a symbolic link is a special type of file that contains a reference to another file or directory in the form of an absolute or relative path and that affects pathname resolution. Symbolic links were already present by 1978 in mini-computer operating systems from DEC and Data...
translator)
- term (terminal server)
- usermux (user multiplexer server)
Filesystem servers
The ext2fs server "ext2fs"
- The ext2
The ext2 or second extended filesystem is a file system for the Linux kernel. It was initially designed by Rémy Card as a replacement for the extended file system ....
filesystem translator. It receives disk blocks from the microkernel and gives files and directories to the applications.
The iso filesystem server "isofs"
- The translator for the ISO 9660
ISO 9660, also referred to as CDFS by some hardware and software providers, is a file system standard published by the International Organization for Standardization for optical disc media....
filesystem. Translates blocks of a CD or DVD to files and directories for the applications.
The nfs server "nfs"
- See Network File System.
The ufs server "ufs"
- Translator for the BSD filesystem of the same name, UFS
The Unix file system is a file system used by many Unix and Unix-like operating systems. It is also called the Berkeley Fast File System, the BSD Fast File System or FFS...
.
The ftp filesystem translator "ftpfs"
- See File transfer protocol
File Transfer Protocol is a standard network protocol used to transfer files from one host to another host over a TCP-based network, such as the Internet. FTP is built on a client-server architecture and utilizes separate control and data connections between the client and server...
"storeio"
- The storage translator
The servers collectively implement the
POSIXPOSIX , an acronym for "Portable Operating System Interface", is a family of standards specified by the IEEE for maintaining compatibility between operating systems...
API, with each server implementing a part of the interface. For instance, the various filesystem servers each implement the filesystem calls. The storage server will work as a wrapping layer, similar to the block layer of Linux. The equivalent of
VFSA virtual file system or virtual filesystem switch is an abstraction layer on top of a more concrete file system. The purpose of a VFS is to allow client applications to access different types of concrete file systems in a uniform way...
of
LinuxLinux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...
is achieved by libdiskfs and libpager libraries.
GNU distributions running Hurd
Hurd-based
GNUGNU is a Unix-like computer operating system developed by the GNU project, ultimately aiming to be a "complete Unix-compatible software system"...
distributions include:
- Arch Hurd
Arch Hurd is an operating system based on Arch Linux, but uses GNU Hurd kernel instead of Linux.The Arch Hurd project was founded on an Arch Linux forum thread and, after a few weeks with many contributions, progressed to the point where it could boot in a virtual machine...
- Bee GNU/Hurd
- Debian GNU/Hurd
Debian GNU/Hurd is the Debian project's distribution of the GNU operating system, using the GNU Hurd microkernel. Its developers are hoping to be able to release Debian GNU/Hurd for the next major release of Debian, "wheezy"....
- Gentoo GNU Hurd (abandoned)
- GNU/Hurd Live CD
Error messages
A "computer bought the farm" message is an
error messageAn error message is information displayed when an unexpected condition occurs, usually on a computer or other device. On modern operating systems with graphical user interfaces, error messages are often displayed using dialog boxes...
displayed on GNU Hurd when one of the servers that provide kernel-like functions reaches a "hopeless" situation (after which it is usually terminated). This is a rough equivalent of a
kernel panicA kernel panic is an action taken by an operating system upon detecting an internal fatal error from which it cannot safely recover. The term is largely specific to Unix and Unix-like systems; for Microsoft Windows operating systems the equivalent term is "Bug check" .The kernel routines that...
in monolithic
Unix-likeA Unix-like operating system is one that behaves in a manner similar to a Unix system, while not necessarily conforming to or being certified to any version of the Single UNIX Specification....
kernels. Its corresponding
error codeIn computer programming, error codes are enumerated messages that correspond to faults in a specific software application. They are typically used to identify faulty hardware, software, or incorrect user input in programming languages that lack exception handling, although they are sometimes also...
is the Hurd-specific
EIEIO, a reference to the folk song "
Old McDonald Had a Farm"Old MacDonald Had a Farm" is a children's song and nursery rhyme about a farmer named MacDonald and the various animals he keeps on his farm. Each verse of the song changes the name of the animal and its respective noise. In many versions, the song is cumulative, with the noises from all the...
".
See also
- Arch Hurd
Arch Hurd is an operating system based on Arch Linux, but uses GNU Hurd kernel instead of Linux.The Arch Hurd project was founded on an Arch Linux forum thread and, after a few weeks with many contributions, progressed to the point where it could boot in a virtual machine...
- Debian GNU/Hurd
Debian GNU/Hurd is the Debian project's distribution of the GNU operating system, using the GNU Hurd microkernel. Its developers are hoping to be able to release Debian GNU/Hurd for the next major release of Debian, "wheezy"....
- Free Software Foundation
The Free Software Foundation is a non-profit corporation founded by Richard Stallman on 4 October 1985 to support the free software movement, a copyleft-based movement which aims to promote the universal freedom to create, distribute and modify computer software...
- GNU
GNU is a Unix-like computer operating system developed by the GNU project, ultimately aiming to be a "complete Unix-compatible software system"...
- Linux-libre
Linux-libre is a project that aims to publish and maintain modified versions of the Linux kernel that include only free software. This is accomplished by removing software modules without included source code , obfuscated code or portions of code under proprietary licenses.This project is endorsed...
- Minix 3
MINIX 3 is a project to create a small, highly reliable and functional Unix-like operating system. It is published under the BSD license.The main goal of the project is for the system to be fault-tolerant by detecting and repairing its own faults on the fly, without user intervention...
- MERT
External links