Jump to content

Rump kernel

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by L9G45AT0 (talk | contribs) at 15:29, 22 July 2016 (removed Category:Computer architecture using HotCat). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Graphic overview of the rump kernel

The NetBSD rump kernel is the first implementation of the "anykernel" concept where drivers either can be compiled into and/or run in the monolithic kernel or in user space on top of a light-weight rump kernel.[1][2][3][4] The NetBSD drivers can be used on top of the rump kernel on a wide range of POSIX operating systems, such as the Hurd,[5] Linux, NetBSD, DragonFlyBSD, Solaris and even Cygwin, along with the file system utilities[6] built with the rump libraries. The rump kernels can also run without POSIX directly on top of the Xen hypervisor, the L4 microkernel in Genode OS or even on "OS-less" bare metal.

Anykernel

An anykernel is different in concept from microkernels, exokernels, partitioned kernels or hybrid kernels in that it tries to preserve the advantages of a monolithic kernel, while still enabling the faster driver development and added security in user space.[7] The "anykernel" concept refers to an architecture-agnostic approach to drivers where drivers can either be compiled into the monolithic kernel or be run as a userspace process, microkernel-style, without code changes.[8] With drivers, a wider concept is considered where not only device drivers are included but also file systems and the networking stack.

File System Access Utilities

The File System Access Utilities (fs-utils) is a subproject built with the rump libraries. It aims to have a set of utilities to access and modify a file system image without having to mount it. The fs-utils does not require superuser account to access to the image or device. The advantage of fs-utils over similar projects such as mtools is supporting the usage of familiar with filesystem Unix commands (ls, cp, mv, cd, etc.) for a large number of file systems which are supported by NetBSD.[9]

See also

References

  1. ^ "The Anykernel and Rump Kernels". Netbsd.org. Retrieved 2013-08-15.
  2. ^ "FOSDEM 2013 - Interview: Antti Kantee:The Anykernel and Rump Kernels". archive.fosdem.org. 2013-02-03. Retrieved 2013-08-15.
  3. ^ "FOSDEM 2013 - The Anykernel and Rump Kernels". archive.fosdem.org. 2013-02-03. Retrieved 2013-08-15.
  4. ^ "FOSDEM 2014 - Rump Kernels, Just Components". archive.fosdem.org. 2014-02-03. Retrieved 2015-02-21.
  5. ^ "Hurd, Rump kernel, sound, and USB". FOSDEM 2016. Retrieved February 15, 2016.
  6. ^ file system utilities
  7. ^ Kantee, Antti (2012). The Design and Implementation of the Anykernel and Rump Kernels (Ph.D). Aalto university.
  8. ^ "Rump File Systems: Kernel Code Reborn". Usenix.org. 2002-02-01. Retrieved 2013-08-15.
  9. ^ Kantee, Antti; Ysmal, Arnaud (2009). Fs-utils: File Systems Access Tools for Userland (PDF) (Thesis). {{cite thesis}}: Cite has empty unknown parameter: |1= (help)