This has been one of my dream project which I have been planning to do since a very long. Since the day I was introduced to programming it has been my dream to develop my own full fledge operating system. In the past for work purpose I have developed micro OSes, which had its own File System but no GUI, and they were designed for very specific purpose, so it did not have whole lot of things.
I always like to share my knowledge with everyone around. So I have decided to make my project open source.. at present I am not allowing anyone to contribute to the project, but anyone is free to fork it, clone it and use it.
I am planning to develop many features in this operating system, some of the features which I have thought are as follows:
- Boot loader
- 32-bit
- VGA (Standard Video Driver)
- Kernel
- It’s own File System
- AHCI - SATA driver
- Multi-Threading / Multi-Tasking
- Ability to read and write FAT and FAT 32 File System
- GUI (Support for Keyboard and Mouse)
- Port DOOM Game (Maybe / Wishlist)
- Painting application
- Audio System and ability to play WAV, MP3, 3gp files.
- Network stack
- TCP/IP
- Sockets
- Browser
- Development Tools (Compiler, and maybe own language)
- Communication with GPU
- Printer support
- WiFi and Bluetooth support
- APIs (External Application development support)
- Pen Drive Auto Mount Support
- Couple of Games
- Development Environment (IDE)
- DHCP Client, DHCP Server, DNS Client, DNS Server, Web Server, etc...
- Update OS to support 64-bit
You can read and learn about it in great detail at http://www.learnitonweb.com/ as well as on youtube channel https://www.youtube.com/channel/UCUpnwEGCnlmgFLfmyUi0l2w