bbe7c6e658
VFS: Implement resolve_path and form the initial ramdisk's VFS properly
...
Finally, resolve_path: a function which takes a path (/etc/fstab for example), and walks the VFS:
In this case, it would start with the root FS node, and ask it: "do you have a directory/file named etc?"
The node could say 'yes', 'no', or 'i'm not a directory, I'm a file' (should not be the case for the VFS root, but for the other ones it could be)
If it says yes, we continue and ask the child if it has a file named fstab. Etc...
2022-10-10 18:44:43 +02:00
2be70d0bc1
VFS: Use 64-bit numbers in read()
...
There is no need for any kind of 32-bit compatibility.
2022-10-09 21:30:38 +02:00
b38c52f8c7
more vfs stuff
2022-10-08 21:35:19 +02:00
f3d7e220ac
The beginnings of a VFS implementation!!
2022-10-08 21:22:46 +02:00
8ce58e9e30
Kernel/InitRD: Use %p with printf()
2022-10-08 18:16:55 +02:00
abcf1b6118
Define PAGE_SIZE as 4096 and use it everywhere instead of using 4096 as a magic number
2022-10-08 14:52:28 +02:00
594d79143e
Kernel: enable -Wconversion
2022-10-06 17:13:34 +02:00
8f310dd307
PMM: Map the page bitmap to kernel heap once the PMM and VMM are both initialized
2022-10-04 18:36:09 +02:00
1ecd24f5d6
Kernel: Add SSE support (enable SSE on boot and save context (user tasks only) on task switch)
2022-10-02 18:53:54 +02:00
87cb41e549
Separate the logging stack into toggleable backends, to disable console logging once boot finishes.
2022-10-01 15:35:11 +02:00
53d36be339
Add a much-needed get_blocks_from_size function
2022-10-01 12:13:38 +02:00
3fd1b6773d
Panic: Only dump stack trace if InitRD is initialized
2022-09-25 17:41:34 +02:00
a078a11dde
Move PMM and VMM initialization into MemoryManager::init
2022-09-25 17:38:17 +02:00
3891d0c52e
Rename KernelMemoryManager to MemoryManager
...
Kind of a more catchy name, isn't it?
2022-09-24 21:45:13 +02:00
46b7dab847
Remove RangeAllocator and make a PMM namespace
2022-09-24 21:27:45 +02:00
c3e5251687
Some more userland and font failing
2022-09-23 16:41:43 +02:00
11dd165a8e
Scheduler: add proper support for user tasks (still faults though)
2022-09-22 08:14:04 +02:00
49ddb47ad4
Reorganize structure
2022-09-21 17:56:53 +02:00
d8bfb76eef
Try to make TextRenderer work... still failing
...
I can now safely call try_initialize() in early_init though
2022-09-19 20:17:37 +02:00
86e4fce654
Separate conditions for easier debugging
2022-09-19 19:04:14 +02:00
31460fe148
I.... think I fixed the initrd code?
2022-09-19 17:06:08 +02:00
355ca6ea9f
Change initrd/sys/config
2022-09-15 18:42:59 +02:00
efb28d3258
Randomness and stack protection!!
2022-09-14 18:54:40 +02:00
db4c8e96b8
commit
2022-09-14 17:55:24 +02:00
0cb59ee17f
please work please
2022-09-11 08:23:32 +02:00
f98a45aefe
Updated InitRD to use virtual mappings
2022-09-10 22:15:19 +02:00
6a0cf7cf98
New framebuffer class!!
2022-09-10 18:42:40 +02:00
bd0a24097f
Add a KernelMemoryManager namespace to wrap PMM + VMM
2022-09-06 18:08:15 +02:00
0fbc68ca88
Finish VMM
2022-09-06 13:49:17 +02:00
8bff2ee0f5
Add a RangeAllocator which serves as a physical memory allocator
2022-09-06 13:21:54 +02:00
1b727a66ea
Ready. Set. Go!
2022-09-05 16:13:51 +02:00