Fork us on GitHub Follow us on Facebook Follow us on Twitter

Version 30 (modified by Jakub Jermář, 23 months ago) (diff)

Release Notes for HelenOS mainline

Note: This document is a draft describing a future HelenOS release and is subject to change. The software described here has not been released yet. To get these latest and greatest features now, check out our Bazaar mainline. (But you will also get the latest bugs).

HelenOS version (codename) was released on date.

This document contains a summary of changes made to HelenOS since release previous release.

Special Notes for this Release

Features Introduced in This Release

General

  • The system can again be built by clang for amd64

Kernel

  • Basic support for capabilities
    • IPC phones have in fact been a sort of capabilities since the beginning. This work generalizes some of the IPC code to support more kernel object types.
    • IRQ structures are now managed using capabilities. It is no longer possible to unregister someone else's IRQ.
    • The limit of 64 IPC phones has been removed and is now virtually infinite.
  • The kernel is now using the resizable hash table which has been already used in uspace since 2012.

Services and Drivers

  • The naming service was converted to use the async framework
  • CUDA driver was converted to the Device Driver Framework
  • The interrupt controller drivers were converted to using the Device Driver Framework

File Systems

  • All file system operations are relative to a specified node, client-side root
  • Mountpoints are no longer stored in the filesystem servers, but in VFS
  • Inbox mechanism for passing files from parent to a new child
  • Client-side I/O cursors (file positions)
  • Overhaul of the client interface; all APIs begin with the vfs_ prefix and can be used after including vfs/vfs.h
  • Removal of some POSIX-ish headers and definitions
  • File system probing
  • Volume label support

Networking

  • Lots of networking fixes in TCP, DNS and HTTP protocols
  • TCP unit tests

Applications

  • The pkg utility was added which allows installing packages from ci.helenos.org into a running instance of HelenOS

Libraries

  • Effort towards greater C11 compliance and a cleaner cut between HelenOS-specific, C11 and POSIX code

Miscellaneous

Regressions in This Release

  • For the list of regressions since the previous release, see this report.
  • Notable regressions

Fixed Logged Bugs & Enhancements

  • For the list of all logged defects fixed in this release, see this report.
  • For the list of all logged enhancements integrated in this release, see this report.

Known Bugs

  • For the list of known bugs still not fixed in this release, see this report.
  • For the list of all open tickets, see this report.