HelenOS 0.5.0

An effort to develop a working operating system according to HelenOS specifications.
HelenOS project is an effort to develop a working operating system according to HelenOS specifications. HelenOS supports SMP, multitasking and multithreading on both 32-bit and 64-bit, little-endian and big-endian, processor architectures, among wich are AMD64/EM64T (x86-64), IA-32, IA-64 (Itanium), 32-bit MIPS, 32-bit PowerPC and SPARC V9.

HelenOS is being developed by students of Faculty of Mathematics and Physics at Charles University in Prague. The source code is available under the BSD license. Third party components are licensed under GPL.

In case you are interested in our project or have any questions about it, feel free to subscribe to our mailing list. The project is currently under heavy development and we are looking for people to join our team as beta testers. Beta testers of today can become developers of tomorrow.

Main features:

  • In-tree means that the port has already begun and that it is possible to build a binary image of SPARTAN kernel for that respective architecture.
  • Interrupt & exception handling says whether the kernel is ready to survive and eventually process some kind of interrupt. This especially relates to hardware interrupts like timer interrupts.
  • Context save/restore is the ability to save and restore the state of the current CPU within the kernel mode. This is an architecture-specific task and requires some assembly coding.
  • FPU context refers to the ability to support thread's private floating point environment.
  • Time management refers to kernel's ability to count timer ticks and execute registered actions on special events called timeouts.
  • Kernel preemption, contrary to ordinary userspace preemption, states, that the execution of kernel code can be interrupted whenever CPU priority is low (interrupts are disabled).
  • Kernel threads are schedulable entities with own kernel context.
  • Synchronization is provided by semaphores, mutexes, rwlocks and condition variables. All of these are SMP safe and capable of timeout mode of operation.
  • Heap manager aids dynamic allocation and deallocation of memory for kernel purposes.
  • Physical memory management takes care of allocation of frames of physical memory.
  • Virtual memory management is the subsystem which provides mapping of virtual addresses to physical memory. It is also used to organize threads' userspace memory mappings.
  • Userspace threads are threads with userspace stack and virtual memory mapping added.
  • Multiprocessor support declares support for SMP systems. Each architecture needs to configure the system on startup to detect all CPU's and make them execute kernel code.
  • Little-endian and big-endian architectures are supported.
  • 32-bit and one 64-bit architectures are supported.

last updated on:
August 10th, 2012, 9:09 GMT
price:
FREE!
homepage:
helenos.itbs.cz
license type:
BSD License 
developed by:
Jakub Jermar
category:
ROOT \ System \ Operating Systems \ Kernels
HelenOS
Download Button

In a hurry? Add it to your Download Basket!

user rating 23

3.7/5
 

0/5

Rate it!
What's New in version 0.4.2
  • General:
  • The project switched to Bazaar VCS.
  • The ia32 port can be run in VirtualBox again.
read full changelog

Add your review!

SUBMIT