Gabriel Parmer
Gabriel Parmer
Scheduler, memory manager, etc... should not pre-allocate all stacks, and have them allocated in an array, per-thread. Make stack handling consistent across the system.
We use the same capability table to lookup the component in, as we do to create the sinv (see, for example [this](https://github.com/gwsystems/composite/blob/ppos/src/kernel/include/inv.h#L60)). We need to decouple these, so that we...
Problem: ``musl` uses TLS to provide the `pthread_` api for accessing TLS. We'd like to avoid the dependency and associated issues with TLS if we can avoid them. Solution: If...
@Others, when porting Rust to composite, has run into an issue with `musl` and `pthread`s. To set up thread local storage (TLS) for each thread, we must execute `pthread` code....
Add document for `docs/issue_process.md` to summarize how we should use issues and do a PR. This should include: - What the labels mean. - What they imply for people's work...
A few changes are required in the style guide due to the auto-formatting support added by @Others. - `for(;;)` spacing rules - `enum` specifics - single-line functions (allowed on same...
Any updates to two memory locations in a single cos_kernel_api operation must take great pains to handle races. For example, if we need to increase both the `vasrange_frontier` and the...
Enable a simple invariant over the manager capability protocols: The use of each capability must be *trappable*, causing an invocation of the manager of the real kernel resources. Concretely, this...
Details on normal component, capabilities protocols summarized in #251. Given that these are "normal" components, we title and denote this as the "component capability protocol", meant to be differentiated from...
Many researchers are converging on needing protocols for regular components, separate from manager components. This issue is an *umbrella project* that includes three broad aspects: - **TODO** Normal components are...