Add a threading syscall API.
This commit is contained in:
parent
e2aad55a8a
commit
ef8eb5d993
14 changed files with 235 additions and 30 deletions
17
zion/capability/capability.cpp
Normal file
17
zion/capability/capability.cpp
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
#include "capability/capability.h"
|
||||
|
||||
template <>
|
||||
Process& Capability::obj<Process>() {
|
||||
if (type_ != PROCESS) {
|
||||
panic("Accessing %u cap as object.", type_);
|
||||
}
|
||||
return *static_cast<Process*>(obj_);
|
||||
}
|
||||
|
||||
template <>
|
||||
Thread& Capability::obj<Thread>() {
|
||||
if (type_ != THREAD) {
|
||||
panic("Accessing %u cap as object.", type_);
|
||||
}
|
||||
return *static_cast<Thread*>(obj_);
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue