HelenOS explained

HelenOS
Family:Multiserver operating systems
Programmed In:C
Kernel Type:Microkernel
Supported Platforms:IA-32, AMD64, IA-64, ARM, MIPS, PowerPC, SPARC V9, RISC-V
Package Manager:coastline packages[1]
License:BSD-3-Clause[2]
Source Model:Open source

HelenOS[3] [4] [5] [6] is an operating system based on a multiserver microkernel design.[7] The source code of HelenOS is written in C and published under the BSD-3-Clause license.

The system is described as a “research development open-source operating system”.[8]

Technical overview

The microkernel handles multitasking, memory management and inter-process communication. It also provides kernel-based threads and supports symmetric multiprocessing.

Typical to microkernel design, file systems, networking, device drivers and graphical user interface are isolated from each other into a collection of user space components that communicate via a message bus.

Each process (called task) can contain several threads (preemptively scheduled by the kernel) which, in turn, can contain several fibers scheduled cooperatively in user space. Device and file-system drivers, as well as other system services, are implemented by a collection of user-space tasks (servers), creating thus the multiserver nature of HelenOS.

Tasks communicate via HelenOS IPC, which is connection oriented and asynchronous. It can be used to send small fixed-size messages, blocks of bytes or to negotiate sharing of memory. Messages can be forwarded without copying bulk data or mapping memory to the address space of middle-men tasks.

Development

HelenOS development is community-driven. The developer community consists of a small core team, mainly staff and former and contemporary students of the Faculty of Mathematics and Physics at Charles University in Prague, and a number of contributors around the world.[9] In 2011, 2012 and 2014, HelenOS participated in the Google Summer of Code as a mentoring organization.[10] [11] [12] In 2013, the project was a mentoring organization in the ESA Summer of Code in Space 2013 program.[13]

The source code of HelenOS is published under the BSD-3-Clause license, while some third-party components are available under the GNU General Public License.[14] Both of these licences are free software licenses, making HelenOS free software.

Hardware support

HelenOS runs on several different CPU architectures including ARM, x86-64, IA-32, IA-64 (Itanium), MIPS, PowerPC (32-bit only), SPARC V9 and RISC-V. At some point in time, various versions of HelenOS ran on real hardware from each architecture (as opposed to running only in a simulator of that architecture).

HelenOS supports PATA, SATA, USB mass storage, USB HID, an Atheros USB WiFi dongle, several Ethernet network cards, SoundBlaster 16 and Intel HDA audio devices, serial ports, keyboards, mice and framebuffers.

Research and academic use

HelenOS is being used for research[15] [16] in the area of software components and verification by the Department of Distributed and Dependable Systems, Charles University, Prague. Besides that, HelenOS has been used by students as a platform for software projects and master theses.[17]

External links

Notes and References

  1. Web site: HelenOS. GitHub. 22 April 2022.
  2. Web site: License – HelenOS. 2021-06-18. 2016-03-10. https://web.archive.org/web/20160310125017/http://www.helenos.org/wiki/License. live.
  3. http://hackerpublicradio.org/eps.php?id=1447 hpr1447 :: HPR Coverage at FOSDEM 2014 Part 1/5
  4. https://www.phoronix.com/scan.php?page=news_item&px=MTI5ODk HelenOS Micro-Kernel OS Still Marching On
  5. http://distrowatch.com/weekly.php?issue=20100419#feature HelenOS - the operating system that launched a thousand processes, DistroWatch Weekly, Issue 350, 19 April 2010
  6. http://www.root.cz/clanky/helenos-nikdy-nebude-dokonceny-rika-jeho-autor-jakub-jermar/ HelenOS nikdy nebude dokončený, říká jeho autor Jakub Jermář
  7. Book: Architecting Critical Systems . . 2010 . 9783642135569 . 74.
  8. https://www.facebook.com/HelenOS
  9. Web site: HelenOS Contributors measured by Ohloh . 2012-03-15 . 2010-04-12 . https://web.archive.org/web/20100412002404/http://www.ohloh.net/p/helenos/contributors . dead .
  10. http://www.google-melange.com/gsoc/projects/list/google/gsoc2011 List of projects accepted into Google Summer of Code 2011
  11. http://www.google-melange.com/gsoc/projects/list/google/gsoc2012 List of projects accepted into Google Summer of Code 2012
  12. http://www.google-melange.com/gsoc/projects/list/google/gsoc2014 List of projects accepted into Google Summer of Code 2014
  13. Web site: Selected mentoring organizations . 2020-01-11 . https://web.archive.org/web/20170716044813/http://sophia.estec.esa.int/socis2013/?q=node%2F13 . 2017-07-16 . dead .
  14. Web site: HelenOS analysis by Ohloh . 2012-03-15 . 2011-04-01 . https://web.archive.org/web/20110401225643/http://www.ohloh.net/p/helenos/analyses/latest . dead .
  15. http://www.isvav.cz/researchPlanDetail.do?rowId=MSM0021620838 Institutional research plan MSM0021620838 - Modern methods, structures and systems of computer science (2005-2011, MSM)
  16. http://d3s.mff.cuni.cz/research/ Research @ D3S
  17. http://is.cuni.cz/eng/studium/dipl_st/index.php?fak=11320&fulltext=HelenOS&fulltext_kde%5b%5d=nazev&fulltext_kde%5b%5d=ostatni&full_or_like=1&kterep=obh&f=find&do=main&f=Search Defended HelenOS theses at Faculty of Mathematics and Physics, Charles University in Prague