Page 1 of 1

Illusion: Another OS

Posted: Tue Jun 21, 2011 11:33 am
by salil_bhagurkar
Hi guys,

I am posting after quite a long time here. After making several failed attempts with virtual machine OSes, I decided to get back to writing something for fun, and started writing an OS since February this year called "Illusion". I've been writing it and still enjoy coding stuff in it. Here's the link:

http://code.google.com/p/illusion/

Features:
1. Boots :roll:
2. Has the pmode->real mode->pmode BIOS interrupts support, which I've had in my old OSes.
3. Paging (Lower half kernel: (0 -1 GiB)
4. Physical / Virtual memory management with a kmalloc.
5. Caching Virtual File System: This exists independently and behaves like a RAM file system.
6. Process management & Scheduling: Includes basic demand paged loading of executables.
7. APIMOD (API Module): The run-time loaded user mode application API library including standard C library functions and system call interfaces. Applications don't get statically linked with any library, but call interfaces exposed by the APIMOD.
8. Simple drivers for:
a. INT 13h: Out of the laziness to write an ATA driver.
b. FAT12/16/32: Read support for these.
c. VBE: Basic support for bank switched and LFB modes.
d. Keyboard: Again a basic driver with proper key state handling.
9. User-mode applications included:
a. ishell: A simple command parsing shell, to execute other binaries included in the boot ram disk.
b. ls: Lists the children of a file (The VFS does not distinguish between files/directories, and hence there is no such distinction anywhere in the OS)
c. lsdev: Lists the registered devices in the system. The VFS does not have "mount points" like in any other Unix OS. File systems always appear under independent devices, something like driver letters in Windows.
d. cat: Outputs the contents of a file to the console.

Lastly, I use Windows as the build environment. So you may not be able to build it without making changes to the linker script etc. first. But none of the OS parts depend on any executable format as such. Hence, it should be easily possible to make a binary from the source code (LGPL).

Thanks,
Salil

Re: Illusion: Another OS

Posted: Mon Jun 27, 2011 2:41 pm
by Jezze
Congratulations! That is quite an impressive feature list.