| Age | Commit message (Collapse) | Author |
|
Signed-off-by: Carlos Maiolino <[email protected]>
|
|
Add infra-structure to enable and manipulate page tables in the
processor.
Signed-off-by: Carlos Maiolino <[email protected]>
|
|
Signed-off-by: Carlos Maiolino <[email protected]>
|
|
So far we've been playing a dangerous game... We enabled interrupts
before we actually had the interrupt descriptor table setup.
Fix this so we prevent IRQs to fire before the table is initialized
and attempt to run garbage instead of code
Signed-off-by: Carlos Maiolino <[email protected]>
|
|
Use the heap API to implement a 100MiB heap to
be used by the kernel code.
Add example usage to src/kernel.c
Signed-off-by: Carlos Maiolino <[email protected]>
|
|
Add a simple API implementing a heap memory area.
This specifies 2 main data structures:
struct heap - Defines a heap:
Holds a table with all entries in the specific heap and
the initial heap memory address
struct heap_table - Describes the usage state of every PAGE
within the specific heap.
Signed-off-by: Carlos Maiolino <[email protected]>
|
|
This is supposed to be compliand with POSIX
Signed-off-by: Carlos Maiolino <[email protected]>
|
|
So far I just need a roundup routine to implement a basic heap manager
Signed-off-by: Carlos Maiolino <[email protected]>
|
|
I've forgotten to commit this when working on interrupts. The OS
won't build without these helpers.
They are used for now mostly to setup PICs.
Signed-off-by: Carlos Maiolino <[email protected]>
|
|
This has only been working so far because vga.h was included only
on source files already including stdint.h.
We should put it direct to the header file
Signed-off-by: Carlos Maiolino <[email protected]>
|
|
Signed-off-by: Carlos Maiolino <[email protected]>
|
|
Move the include files to the toxic/ subdirectory, so it gets a bit more
organized.
Ah, yeah, OS name will be renamed to ToxicOS
Signed-off-by: Carlos Maiolino <[email protected]>
|
|
Add driver to deal with VGA text mode.
Also adds a simple vprintl function while I don't implement a print
library.
Signed-off-by: Carlos Maiolino <[email protected]>
|
|
Create the kernel.c file and its initial start_kernel(), and
jump to it from the ASM.
Also setup the build system to actually build it
Signed-off-by: Carlos Maiolino <[email protected]>
|