osFree RoadMap

osFree development must be attacked in several major stages - From a Command Line Inteface to the full Workplace Shell. Our current status in the chain is bolded.

Component implementation status

Steps to 1.0


In this version CPI implementation must be mostly finished. 16-bit API support not required. CMD.EXE and tools must be recompiled (because only sourcelevel compatability at this stage).

Version Requirements Status
0.0.1 L4 must be loaded using GRUB and Hello, world application must be executed (as L4 root task). Hello, world application is stub for osFree kernel. Done
0.0.2 EXT2FS must be finished (in general) and boot sequence must be implemented. GRUB must be removed. MicroFSD is 16-bit (OS/2 compatible), IFS is 32-bit (not OS/2 compatible). MicroFSD must load FreeLDR and execute it. FreeLDR must load L4 kernel and root task (osFree kernel stub). LILO must not be required for EXT2FS. Done
Note: MiniFSD is absent because not required for microkernel architecture.
0.0.3 osFree kernel must parse CONFIG.SYS using file provider server (not real device driver loading) and show config tree. Done
0.0.4 LX loader and module linker (using file provider). osFree kernel must allow load and execute PROTSHELL application. Done
0.0.5 Filesystem API implementation. LX loader must allow loading of MINICMD.EXE task via L4VFS and execute it. Minimal set of API must be implemented. All pointers operations must be replaced by handles (implement handle manager). OS/2 Server must be more structured. Support of OS/2 memory map. More... In Progress
0.0.6 VIO Server implementation. VIO API implementation (32-bit version, via VIO Server). Console support instead of output to log server. Console output via nitpicker (write server like proxygon). Not Done
0.0.7 KBD API implementation (32-bit version) Not Done
0.0.8 Concurrent execution of many applications. Multithreaded applications. Not Done
0.0.9 OpenWatcom and build tools must be recompiled as 32-bit version (no 16-bit API must be used). (LX format) Not Done
0.0.10 CMD.EXE must be compiled and all required CPI for it must be implemented. (LX format, 32-bit API only) Not Done
0.0.11 Self-compiled version of osFree. (LX format, no 16-bit API) Not Done
0.0.12 Open Object REXX must be ported. (LX format, no 16-bit API) Not Done

16-bit API support must be implemented.

Version Requirements Status
0.1.1 16↔32 thinking must be implemented Not Done
0.1.2 16→32 calls wrappers Not Done
0.1.3 ELF format support Not Done
0.1.4 NE format support Not Done

SOM tools and environment must be implemented. (Reused of somFree, not included in osFree source tree yet)

Version Requirements Status
0.2.1 SOM Compiler Watcom Linker Emitter Done
0.2.2 SOM Compiler Preprocessor Done
0.2.3 SOM Compiler C Emitter must be implemented Done (builtin)
0.2.4 SOM Compiler C++ Emitter must be implemented Done (builtin)
0.2.5 Emitter Framework classes must be implemented In progress
0.2.6 SOM Compiler must be implemented Done
0.2.7 SOM CPI Intefaces Not Done

GPI must be implemented (NO SOM Here)


PM must be implemented (SOM Based PM???)


WPS must be implemented


Network must be implemented


, Indianapolis, IN (USA), 2016/03/30 17:09

My name is Rick C. Hodgin and I'm interested in developing an OS/2-like kernel and system. I'm looking for information regarding osFree. Specifically, how the information came about for writing freeldr, and in implementing other system components. Is there an API available which describes their interface? Was it reverse engineered? Or … something else?

Please contact me and let me know. Thank you.

Best regards, Rick C. Hodgin

, 5150 greymalkin Ave, 2018/01/29 23:23

Is it possible to turn the APIs you have into a WINE type service for Windows, Linux, MacOS, etc? IBM had a Ferengi type OS/2 that loaded over the Windows 3.1 system and ran OS/2 apps.

Windows NT 3.1 had both a POSIX and MS-OS/2 1.X environments to run code from other operating systems.

The EXT2 file system sounds good, make sure you support FAT12/FAT16 file systems for floppies and FAT32 and NTFS for USB drives.

, 2018/03/11 19:23

2Rick C. Hodgin: OS/2 API is well documented in OS/2 toolkit. Otherwise, yes, use reverse-engineering. FreeLDR is based on GRUB source code. So, I got required info from GRUB sources + IFS.INF doc from IBM for info, how to load OS/2 (including bootos2.mdl).

2Orion Blastar: We're currently not targeted to something like WINE. We primarily implement OS/2 API on the base of microkernels. Also, support of OS/2 API on top of other kernels like Linux or FreeBSD is possible, though currently we extensively use L4 family microkernels features for implementing the OS/2 API. Note that recently we got info about 2ine project (https://www.patreon.com/posts/project-2ine-16513790) which aims at implementing WINE analogue for OS/2 API on top of Linux kernel. In the future some collaboration is possible, like ReactOS collaborates with WINE project.

You could leave a comment if you were logged in.

en/roadmap.txt · Last modified: 2018/08/16 14:01 by valerius