| Age | Commit message (Collapse) | Author |
|
Now the system can parse paths to files/directories.
It follows the same Unix standard namespace.
For now, only absolute paths are allowed.
The parse mechanism relies on the struct path_part. Which represents
each component on a single path.
All the components are chain-linked through path_part->next, where the
last path component will have ->next == NULL.
This also introduces path_root struct, which represents the root of
the path.
The first component, linked to path_root->head, is always the "/" component.
The disk_id represents the disk the root directory is found into. This
should actually (and likely will) be a mountpoint not a disk id.
Signed-off-by: Carlos Maiolino <[email protected]>
|
|
Signed-off-by: Carlos Maiolino <[email protected]>
|
|
Enable the kernel to read from an ATA device
Signed-off-by: Carlos Maiolino <[email protected]>
|
|
Add the paging infrastructure to the build system
Signed-off-by: Carlos Maiolino <[email protected]>
|
|
Wire the build of both the heap API and the kernel_heap
in the Makefile
Signed-off-by: Carlos Maiolino <[email protected]>
|
|
Remap master PIC to IOAddress 0x20 to avoid collisions with CPU
exceptions.
Setup a default interrupt handler and map all interrupts to this handler
by default.
Setup a Keyboard interrupt handler for testing purposes
Wire everything up in the Makefile
Signed-off-by: Carlos Maiolino <[email protected]>
|
|
Signed-off-by: Carlos Maiolino <[email protected]>
|
|
Also add a small test to the kernel code
Signed-off-by: Carlos Maiolino <[email protected]>
|
|
Previous patch TARGET variable definition got removed. I forgot
to update its users....
Signed-off-by: Carlos Maiolino <[email protected]>
|
|
Remove some duplicate code by creating a few variables
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]>
|
|
Signed-off-by: Carlos Maiolino <[email protected]>
|
|
Move the code unders [BITS 32] label to its own file to be loaded as a
kernel by the boot loader.
Add a linker script to link the bootloader and the kernel in a single
binary file.
Add a build script to make it easier to use the cross compiler
Update the Makefile to build everything and pack it into the os.bin
Signed-off-by: Carlos Maiolino <[email protected]>
|
|
Signed-off-by: Carlos Maiolino <[email protected]>
|
|
Add a bootloader and a hello message.
Signed-off-by: Carlos Maiolino <[email protected]>
|