HelenOS 0.2.0.3 review

Download
by rbytes.net on

HelenOS project is an effort to develop a working operating system according to HelenOS specifications

License: GPL (GNU General Public License)
File size: 1323K
Developer: Jakub Jermar
0 stars award from rbytes.net

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.

Here are some key features of "HelenOS":
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.

What's New in This Release:
This release brings support for Xen 3.0 via the new xen32 port and more virtualization via partitioning resources into separate kernel contexts.
The sparc64 port has been improved so that the kernel boots on a real Sun Ultra 5 workstation.
A new sparc64 boot loader and support for more Sun-specific devices was added.
Finally, HelenOS is now more portable because it is C99 compliant.

HelenOS 0.2.0.3 search tags