diff options
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 26 |
1 files changed, 11 insertions, 15 deletions
@@ -1,17 +1,12 @@ # IndigoOS -This project is in it's infancy. There's a lot to clean up (bootloader), and this is for my own entertainment. I'll likely be working on it on and off, and only updating the branch after major steps forward. +IndigoOS (name likely to change) will be a unix-like operating system for x86-64 computers. I'm hoping to impliment many things a modern operating system would have, including a desktop enviornment, pre-emptive multithreading, ASLR, and memory protection. I'd also like to port games such as DOOM. -##Questions and answers -### Why are you already parsing APCI tables? -When I first started this project, it was intended to be a bare metal mandelbrotset, then an operating system. This way I could set up an enviornment and become comftorable with the x86 architecture. I was going to have a pretty simple multi-core SMP setup to acheive a higher speed. However, as I worked more and more, I realized that this plan was counter productive. The main reason for this is that I'd be doing a lot of "static" work (for lack of a better word). It would be too hard to modify an existing project into an operating system, due to all the code I'd need to discard. +This project is in it's infancy. However, I'm making quick progress. I'll only commit major changes to keep the commit history clean. -### Will you support UEFI? -Maybe some day. What I have so far of the bootloader was a lot of work, so I need to take a break on it for now. - -##Cleaning list +## Cleaning list - [] clean RSDP v1 vs v2+ ugly unison code -- [] clean static paging code if possible +- [] clean static paging code - [] fallback to best compatable video mode if not found - [] find out when and why checksum of binary vs debug binary stripped is occationally diffrent (maybe linker script?) @@ -19,7 +14,7 @@ Maybe some day. What I have so far of the bootloader was a lot of work, so I nee ##debugging - [x] get debugging into into a seperate elf for GDB - [] md5sum of striped binary is the same as one built without debugging info -_Almost_ always, there was one time when it wasn't. Can't seem to reproduce. Check linker sizes. +_Almost_ always, there was one time when it wasn't. Can't seem to reproduce. Check linker sizes and included sections. ##bootloader - [x] make USB bootable as floppy @@ -34,14 +29,15 @@ _Almost_ always, there was one time when it wasn't. Can't seem to reproduce. Che - [x] boot into kernel long mode ##kernel (listed in order of dependency) -###ACPI -- [x] find, check, and parse RSDP -- [x] find, check, and parse RSDT or XSDT +###Memory - [x] static page mapping +- [] dynamic page allocation - 3/24/21, almost done, will likely finish soon. - [] remap paging to higher/more available physical address - [] remap kernel to higher virtual address -- [] re-create page tables to accomidate amount of ram in system without becoming too big -- [] dynamic page allocation + +###ACPI +- [x] find, check, and parse RSDP +- [x] find, check, and parse RSDT or XSDT ###multicpu - [] boot cpus |