Open
Description
Currently, in util::workingset
, we use std::time::Instant
to keep track of time. Instead, we need some mechanism (probably a trait) for keeping track of time that is agnostic to implementation, an implementation of this mechanism for a no-std environment (where OS support is present), and a mechanism for allowing the user to provide their own implementation for no-os environments.
Progress:
- Create a mechanism for abstracting over time, create an implementation of this mechanism that is backed by
std::time::Instant
, and updateutil::workingset
to use this mechanism. - Create an implementation of this mechanism that does not rely on
std
, but only on OS-provided functionality (e.g.,libc
on Unix andkernel32
on Windows). - Modify the slab allocator code to allow the user to provide their own implementation of this mechanism.