|
1ebd892c16
|
Convert uses of u64 to usize
Not all of them, but if you're measuring a size it's more appropriate to use usize than u64.
|
2022-12-07 10:55:47 +01:00 |
|
|
8598b1e8fc
|
Replace the _noreturn macro with the C++ native attribute [[noreturn]]
continuous-integration/drone/push Build is passing
|
2022-12-06 19:40:35 +01:00 |
|
|
c099877c35
|
Remove unnecessary error propagation in Log.cpp
continuous-integration/drone/push Build is passing
Serial and TextConsole always succeed, no need to act as if they could fail
|
2022-12-06 19:35:34 +01:00 |
|
|
314acbfe21
|
Change the serial log to display only milliseconds
continuous-integration/drone/push Build is passing
|
2022-12-06 19:31:41 +01:00 |
|
|
39b310b6b9
|
Make alignment a template parameter to help the compiler optimize
continuous-integration/drone/push Build is passing
|
2022-12-06 19:27:58 +01:00 |
|
|
d48eb85d1d
|
Heap: Avoid magic numbers
continuous-integration/drone/push Build is passing
|
2022-12-06 19:05:00 +01:00 |
|
|
b5c6ae253d
|
Make LinkedList a lot better
continuous-integration/drone/push Build is passing
|
2022-12-06 18:41:35 +01:00 |
|
|
09e447d9d2
|
Heap: Use LinkedList instead of doing things manually
|
2022-12-06 18:28:04 +01:00 |
|
|
d8f75f1d3c
|
LinkedList: Add an append_after() method
Can be used to append an item after another one instead of at the end of the list.
With doubly linked lists, this is extremely easy to achieve (O(1)).
|
2022-12-06 18:25:08 +01:00 |
|
|
146da13e43
|
LinkedList: Make sure to explicitly mark the first node's next and last nodes as nullptr
|
2022-12-06 18:23:19 +01:00 |
|
|
07e6ebd3cc
|
LinkedList: Fix nonnull_or_error
|
2022-12-06 18:22:45 +01:00 |
|
|
2734353a5d
|
Heap: Just align it on a 16-byte boundary if it's not aligned
|
2022-12-06 18:21:19 +01:00 |
|
|
cccf89dd16
|
Heap: Remove outdated FIXME
|
2022-12-06 18:20:18 +01:00 |
|
|
87fb195202
|
Add DoublyLinkedList data structure
continuous-integration/drone/push Build is passing
|
2022-12-06 17:37:43 +01:00 |
|
|
dd29156c85
|
Alloc: make() now takes variadic arguments, to forward to the constructor
|
2022-12-06 17:36:20 +01:00 |
|
|
eef74e2897
|
Add a generic error code (ENONE)
|
2022-12-06 17:35:38 +01:00 |
|
|
a021e7a309
|
Move make and destroy to luna
continuous-integration/drone/push Build is passing
|
2022-12-06 16:41:22 +01:00 |
|
|
1fa99f4f64
|
Make {add,sub,mul}_will_overflow more compiler-independent
continuous-integration/drone/push Build is passing
|
2022-12-06 15:53:06 +01:00 |
|
|
26b44e651d
|
Change safe_{sub,add,mul} so they perform the operation only once
continuous-integration/drone/push Build is passing
|
2022-12-06 15:47:59 +01:00 |
|
|
b338126854
|
Heap: Use safe_mul in kcalloc()
|
2022-12-06 15:44:21 +01:00 |
|
|
e91c04b1d1
|
luna: Introduce safe arithmetic operations, which return an error if an operation would overflow
|
2022-12-06 15:40:18 +01:00 |
|
|
8ff9cb4b96
|
x86_64: Add a friendlier handler for page faults
continuous-integration/drone/push Build is passing
|
2022-12-05 21:02:21 +01:00 |
|
|
1d0dd8fa93
|
Use KernelVM in kmalloc() and friends
Much better now!!
|
2022-12-05 21:02:05 +01:00 |
|
|
ba758bcef8
|
Initialize the KernelVM
|
2022-12-05 21:01:18 +01:00 |
|
|
6c3024d4ee
|
Heap: Count the heap blocks' size in the size required for an allocation
|
2022-12-05 21:01:06 +01:00 |
|
|
0edabd6d87
|
Heap: Add a new block to the end of the linked list
*facepalm*
This was causing page faults when having two blocks and the first one (oldest one) being freed first.
|
2022-12-05 21:00:21 +01:00 |
|
|
d445b29477
|
Add a virtual memory allocator for the kernel
|
2022-12-05 20:36:24 +01:00 |
|
|
a8fb4ca739
|
Move CI badge
|
2022-12-05 19:57:41 +01:00 |
|
|
eaf8a8aafe
|
Make sure the OS used in CI is Linux
continuous-integration/drone/push Build is passing
|
2022-12-05 19:26:27 +01:00 |
|
|
bf7bcd7d56
|
Rename CI pipeline
continuous-integration/drone/push Build is passing
|
2022-12-05 19:19:50 +01:00 |
|
|
20eeecb3e1
|
Run CI on push
continuous-integration/drone/push Build is passing
|
2022-12-05 19:16:58 +01:00 |
|
|
4ec6442ba0
|
Add build status badge
|
2022-12-05 19:16:11 +01:00 |
|
|
2677fca5b7
|
Remove formatting step
|
2022-12-05 19:09:33 +01:00 |
|
|
f767d98037
|
Please work
|
2022-12-05 19:07:01 +01:00 |
|
|
adf6844d49
|
Update drone.yml
|
2022-12-05 19:03:06 +01:00 |
|
|
999d90d588
|
Update check-formatting.sh
|
2022-12-05 19:02:23 +01:00 |
|
|
62e4ed824d
|
Update drone.yml
|
2022-12-05 18:50:01 +01:00 |
|
|
ac2da14319
|
Update config for CI
|
2022-12-05 18:48:40 +01:00 |
|
|
bd7b9ad237
|
Update drone.yml
|
2022-12-05 18:44:44 +01:00 |
|
|
ca0e47b8e4
|
Update drone.yml
|
2022-12-05 18:26:31 +01:00 |
|
|
744d39c27b
|
Update drone.yml
|
2022-12-05 18:24:34 +01:00 |
|
|
0c9b822304
|
Update drone.yml
|
2022-12-05 18:22:52 +01:00 |
|
|
f21d153077
|
Update drone.yml
|
2022-12-05 18:21:30 +01:00 |
|
|
82eda5d6aa
|
Update drone.yml
|
2022-12-05 18:19:55 +01:00 |
|
|
d8a3d74779
|
Actual steps
|
2022-12-05 18:13:12 +01:00 |
|
|
08b4c078dd
|
Will it work now?
|
2022-12-05 18:11:22 +01:00 |
|
|
8f3e80ae47
|
Try to get it right?
|
2022-12-05 18:08:50 +01:00 |
|
|
4074835185
|
Update drone.yml
|
2022-12-05 18:06:30 +01:00 |
|
|
e6c56172d3
|
Try adding a drone.yml
|
2022-12-05 18:00:05 +01:00 |
|
|
95d969ed25
|
Add message to inform of prebuilt toolchains
|
2022-12-05 17:48:26 +01:00 |
|