Implement domain and endpoint modules with capability management, message passing, and scheduling features
This commit is contained in:
22
crates/domain/src/resource.rs
Normal file
22
crates/domain/src/resource.rs
Normal file
@@ -0,0 +1,22 @@
|
||||
use types::{
|
||||
address::VirtualAddress,
|
||||
bounded::PageCount,
|
||||
generation::Generation,
|
||||
id::{EndpointId, IrqId, ProcessId, RegionId},
|
||||
};
|
||||
|
||||
#[derive(Clone)]
|
||||
pub enum Resource {
|
||||
Memory(RegionId),
|
||||
Endpoint(EndpointId),
|
||||
Process(ProcessId),
|
||||
Interrupt(IrqId),
|
||||
ProcessCreate,
|
||||
}
|
||||
|
||||
pub struct MemoryRegion {
|
||||
id: RegionId,
|
||||
base: VirtualAddress,
|
||||
size: PageCount,
|
||||
generation: Generation,
|
||||
}
|
||||
Reference in New Issue
Block a user