Klim Tsoutsman
Klim Tsoutsman
The only thing I'll add to that is `sleep`, which is currently implemented using PIT interrupts. But that's also in need of a redesign.
> If that's the case, it would make it much more difficult to force the UEFI allocation function to yield the desired address range. UEFI has an API to allocate...
@kevinaboos should be ready for review
> couldn't we just have the shim and libtheseus layers convert to/from those existing ABI-stable FFI types, regardless of whether they came from our lib or another lib? So not...
> Which of the subsystems are fundamental? Is it all the crates in the kernel directory? Mostly just the task subsystem. It's hard to test because everything is a task,...
@ShaunLinTW could you try the `update-docker` branch? It should have a `nasm` version of `2.15`.
I've manually tested all three scenarios in `test_task_cancel` by rerunning `test_task_cancel` and checking log outputs. Not sure about the naming of `start_remote_unwinding`.
Also, as discussed before, this won't be able to unwind all tasks. Should `cancel_task` spawn another task that, after some timeout period (e.g. 5 seconds), checks if the original task...
> I'll make an attempt on this Great! > what does the porting entail? Can you elaborate? We need to implement the [ClockSource](https://github.com/theseus-os/Theseus/blob/20809f37d0ce9d15f2b3a17e9a63d832177fb0c7/kernel/time/src/lib.rs#L205) trait for the clocks. The [TSC](https://github.com/theseus-os/Theseus/blob/theseus_main/kernel/tsc/src/lib.rs) should...
The naming may be confusing. `time::ClockType` differentiates categories of clock sources. It is implemented for `Monotonic` and `WallTime`. The TSC is not a clock type (i.e. it shouldn't implement `ClockType`)...