rump kernel

{{Short description|Software run in userspace that offers kernel functionality}}

The NetBSD rump kernel is the first implementation of the "anykernel" concept where drivers either can be compiled into or run in the monolithic kernel or in user space on top of a light-weight kernel.{{cite web|url=http://www.netbsd.org/docs/rump/ |title=The Anykernel and Rump Kernels |publisher=Netbsd.org |access-date=2013-08-15}}{{cite web|url=https://archive.fosdem.org/2013/interviews/2013-antii-kantee/ |title=FOSDEM 2013 - Interview: Antti Kantee:The Anykernel and Rump Kernels |date=2013-02-03 |access-date=2013-08-15}}{{cite web|url=https://archive.fosdem.org/2013/schedule/event/operating_systems_anykernel/ |title=FOSDEM 2013 - The Anykernel and Rump Kernels |date=2013-02-03 |access-date=2013-08-15}}{{cite web|url=https://archive.fosdem.org/2014/schedule/event/01_uk_rump_kernels/|title=FOSDEM 2014 - Rump Kernels, Just Components|date=2014-02-03 |access-date=2015-02-21}}

The NetBSD drivers can be used on top of the rump kernel on a wide range of POSIX operating systems, such as the Hurd,{{Cite web|url=https://fosdem.org/2016/schedule/event/microkernels_hurd_rump_sound_usb/|title=Hurd, Rump kernel, sound, and USB|publisher=FOSDEM 2016|access-date=February 15, 2016}} Linux, NetBSD, DragonFly BSD, Solaris kernels and even Cygwin, along with the file system utilities[https://github.com/stacktic/fs-utils file system utilities] built with the rump libraries. The rump kernels can also run without POSIX directly on top of the Xen hypervisor, an L4 microkernel using the Genode OS Framework{{cite web|url=https://genode.org/documentation/release-notes/17.02|title=Release notes for the Genode OS Framework 17.02}} 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.{{Cite thesis |last=Kantee |first=Antti |title=The Design and Implementation of the Anykernel and Rump Kernels |type= Ph.D |url=http://lib.tkk.fi/Diss/2012/isbn9789526049175/ |year=2012 |publisher=Aalto university}} 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.{{cite web|url=https://www.usenix.org/legacy/event/usenix09/tech/full_papers/kantee/kantee_html/ |title=Rump File Systems: Kernel Code Reborn |publisher=Usenix.org |date=2002-02-01 |access-date=2013-08-15}} 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

{{Expand section|date=February 2015}}

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 a superuser account to access the image or device. The advantage of fs-utils over similar projects such as mtools is supporting the usage of familiar filesystem Unix commands (ls, cp, mv, cd, etc.) for a large number of file systems which are supported by NetBSD.{{Cite thesis |last1=Kantee |first1=Antti |last2=Ysmal |first2=Arnaud |title=Fs-utils: File Systems Access Tools for Userland |url=http://www.netbsd.org/~stacktic/ebc09_fs-utils_paper.pdf |year=2009 }}

See also

References

{{reflist|30em}}