[Zion] Add a thread sleep call.

For now this can only sleep in increments of the scheduler quantum
(currently 50ms). It also uses a somewhat ineffecient way of tracking
the sleeping threads - it will scale linearly with the number of
sleeping threads.
This commit is contained in:
Drew Galbraith 2023-12-07 00:19:17 -08:00
parent 66e94ac41b
commit 8adde27d9b
9 changed files with 48 additions and 5 deletions

View file

@ -17,6 +17,7 @@ SYS4(ThreadStart, z_cap_t, thread_cap, uint64_t, entry, uint64_t, arg1,
uint64_t, arg2);
SYS0(ThreadExit);
SYS1(ThreadWait, z_cap_t, thread_cap);
SYS1(ThreadSleep, uint64_t, millis);
SYS5(AddressSpaceMap, z_cap_t, vmas_cap, uint64_t, vmas_offset, z_cap_t,
vmmo_cap, uint64_t, align, uint64_t*, vaddr);