summaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authorBrett Weiland <brett_weiland@bpcspace.com>2021-03-24 15:36:54 -0500
committerBrett Weiland <brett_weiland@bpcspace.com>2021-03-24 15:38:09 -0500
commit14b109ea24dc5cb1db948de57a2a44c80ef4622e (patch)
treee397997d9c8d9c1b50a5a5235d38c6b0e8f24b5b /README.md
parent13000d6f44d66da795e92e4b2ddc37ce879bf275 (diff)
modified: README.md
modified: compiler/create_crosscompiler.sh deleted: notes modified: src/.gdb_history deleted: src/amd64_vol2.pdf modified: src/bootloader/bios_functions/bios_disk.asm modified: src/bootloader/bios_functions/print.asm modified: src/bootloader/bootloader.asm modified: src/bootloader/cpu_check.asm modified: src/bootloader/enter_kernel.asm deleted: src/bootloader/enter_kernel_backup modified: src/bootloader/gdt.asm deleted: src/bootloader/multicore.asm deleted: src/bootloader/notes new file: src/debug/gdbinit.gdb deleted: src/indigo_os modified: src/kernel/include/libc.h modified: src/kernel/include/paging.h modified: src/kernel/include/video.h modified: src/kernel/kernel.c modified: src/kernel/libs/acpi.c modified: src/kernel/libs/drivers/serial.c modified: src/kernel/libs/drivers/video.c modified: src/kernel/libs/libc.c modified: src/kernel/libs/page.c modified: src/link.ld modified: src/makefile new file: tools/README.md modified: tools/page/page.py
Diffstat (limited to 'README.md')
-rw-r--r--README.md26
1 files changed, 11 insertions, 15 deletions
diff --git a/README.md b/README.md
index 34cd96c..5ed8726 100644
--- a/README.md
+++ b/README.md
@@ -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