Go to file
Sam Leffler 43d921eb53 ProcessManager: first cut at proper seL4 support
- replace the opaque memory placeholder with MemoryManager integration
  (e.g. ObjDescBundle's and BundleImage's)
- set CNode headroom so there is space to construct a 4MB application
- arrange to get capabilities for an ASIDPool, the global SchedController,
  and the global DomainController for crafting new TCB's
- arrange for copregions (VSpace holes) for working with BundleImage's
  and spilling arguments to the stack of a new TCB
- integrate with the slot allocator
- accept an ObjDescBundle for the pkg_contents of an install request
- add BundleImplInterface traits in suport of mocking/faking the bundle
  implementation (unit tests not included)
- new error codes: ObjCapInvalid, SuspendFailed, ResumeFailed
- integrate with the kernel so TCB construction honors settings like MCS
- track kata_security_* wrapper additions
- add seL4BundleImpl (derived from kata-os-rootserver)

TODO: build+test only on RISCV32
TODO: verify seL4BundleImpl features all build at least
TODO: cleanup VSpace layout (is probably arch specific)
TODO: review+cleanup error handling (esp resources)
TODO: fault endpoints are not conencted
TODO: SDK runtime is not setup
TODO: scheduling is likely not the way we want
TODO: security eview

Change-Id: I025b008eeb8b47af2fe3894149da6576642bb8ed
GitOrigin-RevId: 539bf11739a9e756936168a9cbd3e2e2e4b0ba11
2022-10-06 18:44:45 +00:00
apps/system ProcessManager: first cut at proper seL4 support 2022-10-06 18:44:45 +00:00
src processmanager: Initial project skeleton 2022-10-06 17:54:12 +00:00
.gitignore Ignores __pycache__ files 2022-10-06 18:34:04 +00:00
CMakeLists.txt Replaces processmanager with a one-app CAmkES assembly for the entire Kata OS 2022-10-06 17:54:23 +00:00
easy-settings.cmake Add MemoryManager service. 2022-10-06 18:41:15 +00:00
README.md Replaces processmanager with a one-app CAmkES assembly for the entire Kata OS 2022-10-06 17:54:23 +00:00
settings.cmake Replaces processmanager with a one-app CAmkES assembly for the entire Kata OS 2022-10-06 17:54:23 +00:00

Kata OS

This is a CAmkES project that assembles the entire Kata OS. It exists outside the seL4 source trees, since it contains code not intended to go to upstream seL4.

This uses the standard CAmkES build system by symlinking CMakeLists.txt. It also symlinks settings.cmake, and so retains the notion of "apps," which enables the build system to switch which assembly it builds using the CAMKES_APP CMake cache value. Kata OS just has one app, system.