wash
30d9c011f3
sandbox: memblock: add documentation and license
2023-01-31 13:11:35 +00:00
wash
caf4d2b969
sandbox: btree: add documentation and license
2023-01-30 20:57:55 +00:00
wash
07e2e5099d
sandbox: queue: add queue_delete_all() and QUEUE_INIT
2023-01-29 20:11:02 +00:00
wash
077237c4cf
sandbox: extra page stats output
2023-01-29 20:10:35 +00:00
wash
c0c930e5a9
sandbox: vm: fix incorrect region/zone limit addresses
2023-01-29 20:10:15 +00:00
wash
8fb71ccb77
sandbox: vm: add page attribute getters
2023-01-29 20:09:15 +00:00
wash
66afb5ca28
sandbox: vm: fix block reservation status for regions with one homogeneous set of pages
2023-01-29 11:17:09 +00:00
wash
885ed7d765
sandbox: memblock: abort on unsatisfiable alloc request
2023-01-29 11:15:43 +00:00
wash
a7ebdeba73
sandbox: increase memblock heap area size
2023-01-29 11:14:33 +00:00
wash
a3c6018d96
sandbox: vm: enforce alignment requirements for multi-page blocks
2023-01-29 11:03:53 +00:00
wash
d0341a5e35
sandbox: vm: organise pages into zoned blocks
2023-01-28 19:24:28 +00:00
wash
0227cb822b
sandbox: add double linked-list data structure
2023-01-27 21:04:26 +00:00
wash
350a3da18d
sandbox: re-organise test functions
2023-01-26 20:36:11 +00:00
wash
44836149cd
sandbox: btree: add in-order tree traversal
2023-01-26 20:35:56 +00:00
wash
e2fbc4e40b
sandbox: btree: add macros to define custom btree inserter
...
tree keys are no longer stored in btree_node_t. The tree user is responsible for
defining their own node type that includes btree_node_t, and a comparator for the nodes.
2023-01-26 18:30:14 +00:00
wash
c35f06e191
sandbox: increase number of nodes in btree test
2023-01-25 18:17:34 +00:00
wash
2b099142e3
sandbox: btree: fix replace_node_with_one_subtree() not updating tree root
2023-01-24 21:35:32 +00:00
wash
dbf3ad101d
sandbox: btree: deletion fixup bugfix
2023-01-24 21:26:22 +00:00
wash
bf8da4dbb5
sandbox: AVL tree deletion bugfixes and testing
2023-01-22 20:21:29 +00:00
wash
cd217186a2
sandbox: btree_test() now checks that constructed tree is a valid AVL tree
2023-01-21 21:42:54 +00:00
wash
09ce964190
sandbox: added some AVL tree insertion stress testing
2023-01-21 17:36:37 +00:00
wash
4eba81eb09
Removed debug messages from generate_compile_commands
2023-01-19 20:53:12 +00:00
wash
1bd9576a8d
Implemented more memory manager and btree tests in sandbox
2023-01-19 20:52:56 +00:00
wash
a53edf230f
AVL tree is now fixed after node is deleted
2023-01-19 20:51:59 +00:00
wash
a275ca0955
Started implementing btree deletion
2023-01-18 19:45:58 +00:00
wash
1c0a4bc708
Implemented AVL tree insertion
2023-01-15 08:24:51 +00:00
wash
a97b2da73e
Started implementing a self-balancing binary tree data structure
2023-01-13 18:31:52 +00:00
wash
a84355a063
generate_compile_commands.py can now handle different make-output path delimiters
2023-01-10 20:59:14 +00:00
wash
18157925e7
Updated gitignore
2023-01-10 20:54:16 +00:00
wash
39c2ee0e0f
Added a memory map to sandbox memblock test
2023-01-10 20:53:50 +00:00
wash
44cd04c57a
Fixed directory change parsing in generate_compile_commands.py
2023-01-10 20:53:07 +00:00
wash
bfb0b98a80
Added more tests for memblock_alloc()
2023-01-09 18:26:33 +00:00
wash
34faa01b8e
Fixed bounded memblock iteration including negative-sized regions
2023-01-09 18:25:35 +00:00
wash
2f6845692a
Updated gitignore
2023-01-08 14:17:36 +00:00
wash
bbb09b2549
Created separate memblock functions for virtual and physical memory allocation
2023-01-08 12:21:13 +00:00
wash
0d77d97561
memblock can now self re-allocate its internal buffers
...
memory allocated by memblock_alloc() can now be limited to a certain region.
2023-01-08 12:13:59 +00:00
wash
02211e6eba
Implemented memblock_alloc()
2022-12-29 20:53:39 +00:00
wash
d9daeae384
Fixed an arithmetic bug causing reserved memory regions at address 0x00 to be ignored
2022-12-29 20:53:24 +00:00
wash
677661b115
Updated compiler database generator to handle multiple target executables
2022-12-29 20:17:06 +00:00
wash
2ac3e8602f
Re-factored sandbox into a single executable
2022-12-29 19:47:25 +00:00
wash
2b59afcaf3
Started building the kernel memory manager in userspace
2022-12-29 19:22:16 +00:00
wash
7f51b0755b
Added a status field to memory regions to differentiate allocated and reserved regions
2022-12-29 19:21:59 +00:00
wash
02b3be636b
Added header containing kernel typedefs for sandbox programs
2022-12-29 10:25:50 +00:00
wash
84efc44710
memblock region iteration can now be bounded to a certain memory range
2022-12-29 10:20:58 +00:00
wash
e922a776c3
Added stubs for the kernel memory manager
2022-12-28 23:04:09 +00:00
wash
fac31086f5
Implemented a status return type
2022-12-28 23:03:49 +00:00
wash
d0091a4df7
Implemented macros for iterating over memblock regions, including free regions
2022-12-28 23:03:30 +00:00
wash
5a2b81c8b9
Sandbox programs are now compiled with debug symbols
2022-12-28 18:41:50 +00:00
wash
30ffc429fc
Started implementing a boot-time memory manager
2022-12-28 18:41:04 +00:00
wash
fe6b7220df
Kernel is now compiled with -Wall -Werror -pedantic
2022-12-28 18:40:41 +00:00