Thursday, December 13, 2018

My 2018 in HelenOS and future plans

Here are my notable contributions to HelenOS in 2018:
  • Deceloped Ccheck, a C-style checker, and integrated it into HelenOS developer workflow
  • Volume mounting automation and fdisk improvements
  • Initial support for persistent system volume (/w)
  • Unification of character device interfaces
  • DDF-ization of legacy device drivers
  • Huge amount of work on bringing the C library into alignment with C standard
  • Replaced kernel AVL trees and B+trees with ordered dictionary in the kernel
  • Fixed ISA-only PC support (finally!)
  • Made XCW work with Coastline and added harbours for Sycek/Ccheck and GZX
  • Added perf command to collect benchmarks, new memory allocator benchmark
  • Very basic printing with standard PC parallel port driver and lprint command that can send files or messages to the parallel port
Some areas where I would like to (continue) working on in the next year(s):
  • File system management / Installation / Distribution / Packaging
    • VSN/UUID support
    • Need persistent system volume on wider range of platforms / configurations
    • Attack problems around persistence and different location of packages / relocatability of packages
    • Initrd minimization and support for booting natively from CD-ROM, HDD
  • Network configuration
    • We need a new model for network configuration that is more dynamic (think WiFi)
    • We need a model that will support persistent network configuration
  • PC platform support (old and new)
    • Look at issues when running on modern PC HW (interrupts, etc.)
    • WiFi, Ethernet drivers
    • Old PC support (CPU, devices...)
  • Look at user-space memory allocator performance
  • User interface (GUI / Console / Shell / Serial / Remote)
    • A large rework is needed in this are - big plans
    • This is a long-term project
  • End user usability
    • General focus on usability of the stock system without modifying sources or re-compiling
    • Practical use cases (e.g. web server)

No comments:

Post a Comment