|
9d318d50aa
|
Use TRY in MMU.cpp
|
2022-11-16 20:37:41 +01:00 |
|
|
2c9329928c
|
Replace page_size (function) with ARCH_PAGE_SIZE (constant)
|
2022-11-16 20:37:32 +01:00 |
|
|
30ac95bcf8
|
Use usize/isize instead of (s)size_t
Since we're using Rust-style integer types already, why not go all in?
|
2022-11-16 20:30:34 +01:00 |
|
|
7fc5a6b753
|
Make kernel rodata and data not executable
|
2022-11-16 20:02:04 +01:00 |
|
|
7f15ba0ac5
|
Add some interrupt handling
|
2022-11-16 17:37:18 +01:00 |
|
|
df8666fd73
|
Remove unneeded label
|
2022-11-15 20:47:50 +01:00 |
|
|
bb46cd890b
|
Add GDT and IDT setup and loading + NX if supported
|
2022-11-15 20:41:59 +01:00 |
|
|
c9feb11366
|
Introduce a check() method (like assert() but always on)
|
2022-11-15 19:36:50 +01:00 |
|
|
c319336e3d
|
Add a CPU interface
|
2022-11-15 19:10:32 +01:00 |
|
|
e16324887f
|
MMU: Properly clear flags
|
2022-11-15 19:10:19 +01:00 |
|
|
3358454833
|
Add getters for free, used and reserved memory
|
2022-11-13 16:56:03 +01:00 |
|
|
6a7097c9ec
|
Add variables for the future
|
2022-11-13 16:54:07 +01:00 |
|
|
ae235e5538
|
MMU: unmap and remap for x86_64
|
2022-11-13 16:51:21 +01:00 |
|
|
ba1bf72e1b
|
Remove unused include
|
2022-11-13 16:32:28 +01:00 |
|
|
d6c56fb512
|
Mapping finally works!!
|
2022-11-13 16:31:32 +01:00 |
|
|
4c4f72b865
|
More MMU stuff, but writing still fails
|
2022-11-13 15:33:53 +01:00 |
|
|
d148e0aff7
|
Initialize MemoryManager instead of MMU directly
|
2022-11-13 14:29:59 +01:00 |
|
|
705c2747de
|
Add memory manager
|
2022-11-13 14:29:15 +01:00 |
|
|
6b95307b54
|
Add init
|
2022-11-13 12:20:53 +01:00 |
|
|
ffbe5260a5
|
Add Framebuffer stuff
|
2022-11-13 11:25:15 +01:00 |
|
|
82c2381ac9
|
Serial printing!!
|
2022-11-13 10:30:10 +01:00 |
|
|
cf758fdfdc
|
Initial commit :)
|
2022-11-13 10:09:09 +01:00 |
|
|
42efc21110
|
Start implementing read and write support in tmpfs
write seems to work fine, read just hangs there, waiting.
|
2022-11-12 20:11:26 +01:00 |
|
|
046065c533
|
Fix tmpfs
|
2022-11-12 19:05:47 +01:00 |
|
|
3451d50a37
|
Try building a tmpfs, but weird stuff happens
|
2022-11-12 18:13:41 +01:00 |
|
|
000ffd1fae
|
Scheduler: Handle weird cases when the task we're iterating on is null
|
2022-11-12 18:12:42 +01:00 |
|
|
37bb3273ce
|
Kernel: Add a C interface to the logging system
|
2022-11-12 18:12:18 +01:00 |
|
|
511bb7a8c1
|
Kernel: Make readdir() available in created InitRD directories
|
2022-11-12 18:11:58 +01:00 |
|
|
fa325072ac
|
Kernel: Add __cxa_atexit and __cxa_finalize
|
2022-11-12 17:43:57 +01:00 |
|
|
de2451e553
|
Kernel: Change up the logging in the kernel's PRNG
|
2022-11-12 12:56:13 +01:00 |
|
|
11ee01f269
|
Kernel: Remove "checkpoint logging" in main.cpp
|
2022-11-12 12:55:47 +01:00 |
|
|
5c51b82f6a
|
Kernel: Remove obtain_user_ref and add copy_typed_to and from_user
|
2022-11-12 12:08:26 +01:00 |
|
|
58fb422161
|
Kernel: Return a Result in MemoryManager and strdup_from_user
|
2022-11-12 11:56:40 +01:00 |
|
|
662afad426
|
Kernel: Add a Result class
|
2022-11-12 11:30:28 +01:00 |
|
|
559d074ce4
|
Kernel: Make a more convenient wrapper for basename() and dirname()
|
2022-11-12 10:39:25 +01:00 |
|
|
4aa3bd3107
|
Next version!
|
2022-11-09 17:25:05 +01:00 |
|
|
078f3f5862
|
Kernel: Add a remainder to refactor the initial ramdisk code
|
2022-11-09 16:07:49 +01:00 |
|
|
d76af10e70
|
Kernel: Move initrd into the fs/ folder
It makes more sense to put it in there.
|
2022-11-09 16:03:16 +01:00 |
|
|
60bd8d9418
|
Kernel: Add an explanatory comment to the end of _start()
|
2022-11-09 15:58:00 +01:00 |
|
|
1ea216dfd1
|
Kernel: Rename assert.h to ensure.h
The macro is named "ensure", the header file should reflect that.
|
2022-11-09 15:28:35 +01:00 |
|
|
da7ad8da5b
|
Kernel: Show the file location when a check fails
|
2022-11-09 15:23:59 +01:00 |
|
|
ea94b331fb
|
Scheduler: Use copy_to_user in a few system calls
|
2022-11-09 15:20:53 +01:00 |
|
|
accf7ee417
|
libc: Add unimplemented st_nlink field
|
2022-11-09 11:36:21 +01:00 |
|
|
033c41cbd7
|
Kernel: Rework the uid/gid system to make it compliant
|
2022-11-09 09:54:07 +01:00 |
|
|
98da473fdc
|
Run clang-format
|
2022-11-08 19:07:43 +01:00 |
|
|
054d5a8bb4
|
Build system: Prettify build
|
2022-11-08 18:03:43 +01:00 |
|
|
6f72f92493
|
Kernel: Start preparing for recursive paging
|
2022-11-08 17:12:59 +01:00 |
|
|
5d94525c7a
|
Kernel: Figure out why a program is misbehaving
|
2022-11-06 18:12:25 +01:00 |
|
|
44815b08c7
|
Kernel: Use copy_from_user() and copy_to_user() in read/write
This is huge. Finally, we can do proper reads/writes with invalid addresses, or big buffers.
|
2022-11-06 15:19:23 +01:00 |
|
|
b2fb740d99
|
Kernel: Refuse to mkdir any directory named . or ..
|
2022-11-05 12:09:01 +01:00 |
|