3b3c68a203
feat: objects: tcb: update states
2024-06-09 15:40:26 +08:00
9f4be01153
feat: add debug support for cnode
2024-06-09 15:38:46 +08:00
a58110f013
chore: kmem: make clippy happy
2024-06-09 14:01:19 +08:00
d36c534a92
chore: objects/cnode: adapt to new uapi
2024-06-09 00:19:38 +08:00
9c1b39b6d7
chore: format
2024-06-09 00:18:24 +08:00
a007e299d2
chore: kmem: make memory reserving rules more robust
2024-06-09 00:16:27 +08:00
95713e2af4
feat: arch/vspace: kmem: exclude initrd
2024-06-02 16:13:20 +08:00
d53fa7b93e
chore: vspace: split vspace functions
2024-06-02 15:38:45 +08:00
d4b2f78505
chore: add conversion between PageError
and SysError
2024-05-22 14:45:48 +08:00
b37fef3e26
chore: objects: tcb: unify names about time to time_tick
2024-05-20 16:27:04 +08:00
32e21b3468
chore: entry: store N_CPUS
2024-05-20 16:16:03 +08:00
5d5c18592f
feat: scheduler: rewrite
2024-05-20 16:15:36 +08:00
8897e6467c
feat: objects: add initial support for TcbObj
2024-05-20 16:15:00 +08:00
f005c8254b
chore: logging: print time ticks in metadata
2024-05-20 16:06:41 +08:00
001550b387
feat: vspace: addr: add is_kernel
2024-05-20 13:50:58 +08:00
0d0a5471af
feat: add idle thread
2024-05-20 13:18:38 +08:00
7d5875cb0c
feat: objects: adapt to new vspace
2024-05-19 17:07:29 +08:00
36b061d9a1
feat: refactor vspace
2024-05-19 14:01:05 +08:00
a56c481970
feat: split lib/vspace:
...
1. `addr` move to `utils`
2. prepare to refactor `vspace`
[skip_ci]
2024-05-07 23:50:52 +08:00
248a985bab
fix: use sscratch to judge trap source
2024-05-07 20:39:32 +08:00
0ee2b996e4
feat: add TableCap
2024-05-06 01:13:24 +08:00
c710cdcd15
chore: FrameCap: fix typo and rename func
2024-05-06 01:02:33 +08:00
f0891ff87d
feat: table: add TABLE_SIZE
2024-05-06 01:01:58 +08:00
e46ca5a288
chore: simplify SysResult
2024-05-06 00:30:41 +08:00
2db111e730
feat: add FrameCap
2024-05-06 00:30:22 +08:00
aaf9cfc5a0
chore: remove unused features
2024-05-06 00:20:44 +08:00
5dfe3888e9
fix: untyped: retype: return SlotNotEmpty
2024-05-05 22:41:25 +08:00
f577370ee7
chore: rename api to uapi
2024-05-05 21:28:34 +08:00
a65176bc57
feat: record time ticks
2024-05-05 15:38:41 +08:00
d2155ed7cf
feat: utils: linked_list: do not require clone trait
2024-05-05 00:16:27 +08:00
0c3ece6fdc
feat: switch to new linked_list
2024-05-04 23:29:42 +08:00
93df10c5a2
chore: make clippy happy
2024-04-28 21:57:44 +08:00
95dc7144c6
feat: add tests for untyped
2024-04-28 21:52:31 +08:00
5ea8a56611
fix: untyped retype: check null
2024-04-28 20:45:10 +08:00
18240fec26
feat: add tests for cnode address resolving
2024-04-25 01:03:07 +08:00
4647d1fd2a
feat: add backtrace support
2024-04-24 16:33:02 +08:00
e6abb50f86
feat: adjust Cell granularity for CapEntry
2024-04-23 01:03:04 +08:00
cadfafca12
feat: refactor cap
2024-04-23 00:48:46 +08:00
7d34dfc2cd
chore: make clippy happy
2024-04-22 21:08:49 +08:00
615dac5f5c
feat: add initial cnode and untyped support
2024-04-22 21:02:07 +08:00
5c1e73a4ee
feat: refactor cap
2024-04-21 20:22:48 +08:00
c371fd543f
feat: add utils/bin
2024-04-20 18:17:56 +08:00
ea80bd3e8d
feat: template for scheduler
2024-04-19 23:57:58 +08:00
c67a771500
chore: make clippy happy
2024-04-19 23:38:54 +08:00
8218f87765
chore: use global FDT
2024-04-19 19:49:09 +08:00
c53dd8b930
chore: adjust warning and remove unused imports
2024-04-13 16:48:29 +08:00
3b02a14aeb
fix: virt: lowlevel: test_device should translate address
2024-04-12 23:42:30 +08:00
32759ef037
feat: drop riscv32
2024-04-12 23:33:12 +08:00
1a924738f0
feat: move boot page table into board
2024-04-12 22:39:48 +08:00
5da6447f6c
feat: switch to cargo xtask
2024-04-12 22:21:08 +08:00
456ee51d36
feat: add kernel pagetable support
2024-04-12 18:48:36 +08:00
beb792d426
chore: adjust max_width
2024-04-12 01:17:36 +08:00
f41664e7cd
feat: fixup use in kernel
2024-04-09 01:11:54 +08:00
4d090c0478
feat: move allocator into lib
2024-04-09 00:10:28 +08:00
bed9baac4b
feat: move utils into lib
2024-04-08 23:07:44 +08:00
6267f8449d
feat: move vspace into lib
2024-04-08 23:04:37 +08:00
774cabc513
fix: some parts of physical memory is not mapped
2024-04-08 17:47:37 +08:00
1d026d8053
feat: map kernel
...
1. initial riscv32 support
2. fix bug in table.rs: cur level order is reversed
3. introduce global kernel_{phys, virt}_to_{virt, phys} for address translating
4. remove unused riscv/mm
5. initial early_memory management through RamBlock
6. initial kernel space mapping support
2024-04-08 16:23:10 +08:00
13e331f4d2
chore: introduce PAGE_LAYOUT
2024-04-07 20:10:08 +08:00
70ca917778
chore: rename symbol name from linker script
2024-04-07 19:38:26 +08:00
e469b99cb5
chore: sync partial changes
2024-04-07 01:04:04 +08:00
9710132b3e
feat: allocator: block: implement reserver function
2024-04-07 01:02:23 +08:00
e9751585fe
fix: allocator: freelist: reserve is not handling overlapped situations
2024-04-07 00:21:13 +08:00
0bb447ca28
feat: allocator: add block allocator
2024-04-07 00:20:02 +08:00
ced2b85b63
feat: utils: add Then for bool type
2024-04-06 21:12:41 +08:00
2aa88154b4
feat: allow to reserve space in freelist
2024-04-06 20:40:38 +08:00
bca4e37ef2
feat: add allocator
2024-04-04 19:28:21 +08:00
120e5087e3
feat: refactor vspace
2024-04-01 16:56:21 +08:00
668c9b142c
feat: utils: add size.rs
2024-04-01 16:53:47 +08:00
cc5049353a
chore: move vspace to kernel and rename features
2024-04-01 15:37:47 +08:00
77d02a128b
fix: entry.rs: test console deadlock
2024-03-24 21:25:12 +08:00
fa5dca137d
chore: log on shutdown failed
2024-03-24 21:24:53 +08:00
ea15acb8f6
feat: add sifive serial driver
2024-03-24 21:24:33 +08:00
5032711022
feat: rewrite console init logic
2024-03-24 19:12:04 +08:00
284e12348d
chore: logger: show caller
2024-03-23 21:46:14 +08:00
c3d59bc9a4
feat: provide infrastructure for TLS
2024-03-23 21:38:02 +08:00
c210a049cd
chore: move mm into vspace
2024-03-23 16:45:24 +08:00
daf96a0c64
feat: drop legacy flags for riscv-sbi
2024-03-20 22:13:21 +08:00
dd5325db2a
fix: add missing bound for KernelObject
2024-03-20 21:21:56 +08:00
ee6166c657
feat: add initial caps
2024-03-20 21:16:54 +08:00
f11e3781d3
chore: cleanup
2024-03-20 21:11:27 +08:00
d9ccd4ef84
chore: avoid using assembly directly
2024-02-16 22:35:05 +08:00
d8fce18960
feat: use cfg_if! to avoid conflicting features
2024-02-16 21:00:08 +08:00
613512e329
feat: use workspace
2024-02-16 19:22:06 +08:00