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)