Hi, It has been a while since the last release but I have only recently found some time and energy to update the roadmap - https://github.com/cloudius-systems/osv/wiki/Roadmap. It is meant to be a "living" document that more-less captures what we (me?) would like to work on in near future. So it is more-less my wish list but I would like to use this occasion to seek your input as well. I would like to know what you would want to be implemented/improved/changed etc. Feel free to respond to this email or directly update the roadmap wiki or add comments. Also, all OSv issues are here - https://github.com/cloudius-systems/osv/issues and if you find any interesting ones please feel free to add them to the wiki.
In order to facilitate the discussion I am enclosing the roadmap here with some of my extra comments: Modularization/"Librarization" - Hide most symbols and C++ standard library (Partially addressed by this <https://github.com/cloudius-systems/osv/commit/af2d371a61f6ab1eb5a066a0c3e93230faf6611c> and other commits) - Issue 97 <https://github.com/cloudius-systems/osv/issues/97#issuecomment-643833296> - Be more selective on symbols exported from the kernel - The research results with numbers described in this discussion <https://groups.google.com/d/msg/osv-dev/fs-jmyaXY_E/vWUk-wDDAAAJ> and the older one <https://groups.google.com/d/msg/osv-dev/JsJfnhTX_EY/PKUvYm9-AQAJ> seem to indicate that both C++ standard library and other non-public symbols should be hidden in the kernel to make this goal achievable - Make ZFS optional as a shared library <https://github.com/cloudius-systems/osv/issues/1009> - the patches <https://groups.google.com/g/osv-dev/c/utWNzLGBwog> to address this issue were sent a couple of days ago - Create toolchain to optionally build custom kernel tailored to specific hypervisor or app <https://github.com/cloudius-systems/osv/issues/1110> - See this original discussion <https://groups.google.com/d/msg/osv-dev/BHwN6Stm3n4/arvdOwl3AAAJ> - Reduce kernel size - Shrinking kernel described in this early discussion <https://groups.google.com/d/msg/osv-dev/hCYGRzytaJ4/D23S_ibNAgAJ> would really be a result of hiding C++ library and most symbols (see above) but also conditionally compiling in/out various modules (see the first bullet in the Modularization/"Librarization") - Expose C++ APIs as C to hide C++ completely <https://github.com/cloudius-systems/osv/wiki/Roadmap#support-statically-linked-executables>Support statically linked executables - See https://github.com/cloudius-systems/osv/issues?q=is%3Aissue+is%3Aopen+label%3Astatic-elf <https://github.com/cloudius-systems/osv/wiki/Roadmap#improve-tooling>Improve tooling - Improve capstan (see Capstan "2.0" Wiki <https://github.com/cloudius-systems/capstan/wiki/Capstan-2.0>) - *THIS is a project on its own, somewhat independent but I think it is very important to improve building and running OSv images; it would be nice to fine a volunteer that would focus on it entirely* - Create IntelliJ, Maven and or Gradle plugins to deploy Java, Node, etc apps - Run Docker images on OSv (possibly musl-based like Alpine are better) - There is already an existing example - https://github.com/cloudius-systems/osv-apps/tree/master/openjdk12-jre-from-docker <https://github.com/cloudius-systems/osv/wiki/Roadmap#merge-parts-of-ipv6-branch-into-master>Merge parts of ipv6 branch into master - Port partial netlink support <https://github.com/cloudius-systems/osv/commit/f1cd48e0f192564d64e7b1e1caccc8df05e7cd5d#diff-21721ffc9ac62efcdfda3e5f92f0b8ce612881e93722fab8b1002a469b6ebfff> in order to fix libc: Fix if_indextoname(), if_nametoindex() <https://github.com/cloudius-systems/osv/commit/d35c3ddfae69db4d6877fb93341f711b3aefd6a8#diff-16c8c6eb85e05438f5d6c60ff9869072a3a3b1618aa1481ac7a0cb049f06f51d> - Also, reach out to Spirent to see if any more networking related bugs fixed can be brought over from the https://github.com/SpirentOrion/osv fork <https://github.com/cloudius-systems/osv/wiki/Roadmap#others>Others - Help review and merge the "lazy-allocated stack" patch <https://groups.google.com/g/osv-dev/c/tZnwiScmjZY/m/GkY0hV9EAwAJ> - Fix cli/lua on newer Fedora (see https://github.com/cloudius-systems/osv/issues/1166) - Consider implementing a read-write filesystem alternative to ZFS - ext2/3/4 ? <https://github.com/cloudius-systems/osv/issues/1179> - Improve gdb support <https://github.com/cloudius-systems/osv/issues/1167> - #1069 <https://github.com/cloudius-systems/osv/issues/1069> - Add vsock support - *Would there really be real-world application of that? Maybe to provide better OSv-host configuration capabilities?* - Support other booting methods like UEFI <https://github.com/cloudius-systems/osv/issues/1098> - Support other hypervisors - Support new KVM-bases AWS instances (see https://github.com/cloudius-systems/osv/issues/924) - Support Hyper-V (see https://github.com/cloudius-systems/osv/issues/735) - *What about XEN? Is it still "a thing" in terms of supporting it? I have very little experience with XEN and I sense that XEN has evolved a lot in the last 6-7 years.* - Support .NET Core executables - See what needs to be finished in this thread <https://groups.google.com/d/msg/osv-dev/k69cHw7qvTg/9NqPq70IAwAJ> - Refresh look and feel of http://osv.io - RISC-V port <https://github.com/cloudius-systems/osv/issues/1171> <https://github.com/cloudius-systems/osv/wiki/Roadmap#various-finer-level-improvements>Various finer-level improvements - Optimize memory allocator to better deal with "small" amount of memory - https://github.com/cloudius-systems/osv/issues/1013 - #28 <https://github.com/cloudius-systems/osv/issues/28> - Optimize atomic operations on UP (single-VCPU) - #1016 <https://github.com/cloudius-systems/osv/issues/1016> - Add support for smb2/3 (samba) file system T - There is already a patch sent to the list <https://groups.google.com/d/msg/osv-dev/QToC22-QHiA/ejSOMGe7BwAJ> - #1041 <https://github.com/cloudius-systems/osv/issues/1041> - Idea for easily creating OSv images from a list of Ubuntu packages - Fix networking bugs - https://github.com/cloudius-systems/osv/issues/420 - https://github.com/cloudius-systems/osv/issues/454 - Speedup VFS - https://github.com/cloudius-systems/osv/issues/450 - Improve XEN support - https://github.com/cloudius-systems/osv/issues/498 - https://github.com/cloudius-systems/osv/issues/345 - Speed-up realloc() by mremap() - https://github.com/cloudius-systems/osv/issues/184 - Investigate virtio-net “slow path” - https://github.com/cloudius-systems/osv/issues/177 <https://github.com/cloudius-systems/osv/wiki/Roadmap#improve-aarch64-support>Improve AArch64 support - Work on aarch64 issues <https://github.com/cloudius-systems/osv/labels/aarch64> - Fix various bugs/limitations <https://github.com/cloudius-systems/osv/wiki/AArch64#bugslimitations> - Implement gaps in respect to x86_64 <https://github.com/cloudius-systems/osv/wiki/AArch64#gaps-with-respect-to-x64> Finally, I also hope to find some new volunteers to help me work on some of those improvements ;-) Regards, Waldek -- You received this message because you are subscribed to the Google Groups "OSv Development" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/osv-dev/b302c81c-d81a-48f3-b025-20b40d6cd356n%40googlegroups.com.
