You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This issue contains the global road map for the Infinity OS implementation. It decides the tasks into a small steps, in order to be more organised and easier to measure the development.
0.1.0
The goal of the milestone is start a minimal x86 kernel through Initium. Small steps make us focusing and keep us motivated.
Create the build system base - I don't want use MAKE, so we can check something like scons or raw python scripts
This second milestone focuses on the memory management functions.
Store permanently the information passed by the bootloader
Handle panics
Frame allocator
Page Tables
Implement Heap (dynamic memory)
0.3.0
This third milestone focuses in the catching exceptions, as well handle it properly, and prevent triple faults.
Interrupt Descriptor Table (IDT)
Show useful exception messages (present an error code and a stack frame)
Add a mechanism to recover from an exception
Handle Double Faults
Prevent Triple Faults
Allocate multiple stacks for Kernel, in order to recover from a stack overflow
0.4.0
In this milestone the main goal is handle the external interrupts, from other devices, like keyboard, mouse, etc...
PIC
LAPIC
PIT Fallback - search if this is necessary nowadays
Simple keyboard handler
i8042 (PS/2)
Log system
0.5.0
In this milestone we will focus on the CPU initialisation, read ACPI tables and start APs.
Analise CPU features
Read ACPI tables
Start APs (multi-core support)
Create a mechanism to handle the context switching
0.6.0
Now the things gets more complicated 🙂 The idea is add the kernel the ability to run simple processes. This requires the implementation of a scheduler.
implement a simple scheduler
start a process after the context initialisation
Bring up the VM (Virtual Memory) system
Unorganised planing
This is a list of unorganised TODOs, this only must be implemented after the last planed milestone.
IPC
Implement thread support
Add support to ARM systems
Add support to file system
Implement Scheme (an universal way to access files)
Implement a lock system
Implement a Servers system
Implement a Driver system
Implement a master service that monitors all other services and restart them in case of failure.
Implement "Photon", an future ready user interface and component library for the development of graphical applications.
(...)
The text was updated successfully, but these errors were encountered:
This issue contains the global road map for the Infinity OS implementation. It decides the tasks into a small steps, in order to be more organised and easier to measure the development.
0.1.0
The goal of the milestone is start a minimal x86 kernel through Initium. Small steps make us focusing and keep us motivated.
References
0.2.0
This second milestone focuses on the memory management functions.
0.3.0
This third milestone focuses in the catching exceptions, as well handle it properly, and prevent triple faults.
0.4.0
In this milestone the main goal is handle the external interrupts, from other devices, like keyboard, mouse, etc...
0.5.0
In this milestone we will focus on the CPU initialisation, read ACPI tables and start APs.
0.6.0
Now the things gets more complicated 🙂 The idea is add the kernel the ability to run simple processes. This requires the implementation of a scheduler.
Unorganised planing
This is a list of unorganised TODOs, this only must be implemented after the last planed milestone.
The text was updated successfully, but these errors were encountered: