|
|
auto | zxfoundation::memory::objects::memory_extent_acquire_mapping (memory_object_ref extent) noexcept -> std::expected< void, lib::kernel_error > |
| | Retain/release one live VMA reference to a physical extent.
|
|
auto | zxfoundation::memory::objects::memory_extent_mapping_count (memory_object_ref extent) noexcept -> std::expected< u32, lib::kernel_error > |
|
auto | zxfoundation::memory::objects::memory_extent_release_mapping (memory_object_ref extent) noexcept -> std::expected< void, lib::kernel_error > |
|
auto | zxfoundation::memory::objects::memory_extent_retire (memory_object_ref extent) noexcept -> std::expected< void, lib::kernel_error > |
| | Prevent new VMA references after confirming the extent is idle.
|
|
| memory_object (const memory_object &)=delete |
|
auto | zxfoundation::memory::objects::memory_object_attach_view (memory_object_ref ref, memory_view_kind kind, void *body) noexcept -> std::expected< void, lib::kernel_error > |
| | Attach a typed view descriptor to an existing object.
|
|
auto | zxfoundation::memory::objects::memory_object_create (scoms::kobject::kobject_type type, u32 owner_domain, scoms::kobject::bobject *parent, u64 range_start, u64 range_length, dgp::isolation::isolation_rights authority_rights, memory_object_policy policy) noexcept -> std::expected< memory_object *, lib::kernel_error > |
|
auto | zxfoundation::memory::objects::memory_object_delegate (memory_object_ref source, u32 caller_domain, u32 owner_domain, dgp::isolation::isolation_rights authority_rights) noexcept -> std::expected< memory_object_ref, lib::kernel_error > |
|
auto | zxfoundation::memory::objects::memory_object_destroy (memory_object_ref ref) noexcept -> std::expected< void, lib::kernel_error > |
|
auto | zxfoundation::memory::objects::memory_object_destroy (u32 id) noexcept -> std::expected< void, lib::kernel_error > |
|
auto | zxfoundation::memory::objects::memory_object_detach_view (memory_object_ref ref) noexcept -> std::expected< void, lib::kernel_error > |
| | Detach the typed view descriptor from an object, leaving it as a pure authority.
|
|
auto | zxfoundation::memory::objects::memory_object_find (u32 id) noexcept -> memory_object * |
|
auto | zxfoundation::memory::objects::memory_object_link (memory_object &object, const memory_object &related) noexcept -> std::expected< void, lib::kernel_error > |
|
auto | zxfoundation::memory::objects::memory_object_policy_for (memory_object_ref ref) noexcept -> std::expected< memory_object_policy, lib::kernel_error > |
| | Recover the policy published by one authority object.
|
|
auto | zxfoundation::memory::objects::memory_object_ref_of (const memory_object &object) noexcept -> memory_object_ref |
|
auto | zxfoundation::memory::objects::memory_object_resolve (memory_object_ref ref) noexcept -> std::expected< memory_object *, lib::kernel_error > |
|
auto | zxfoundation::memory::objects::memory_object_resolve_id (u32 id, memory_view_kind expected_kind=memory_view_kind::none) noexcept -> memory_object * |
| | Resolve by raw SCOMS object id (used by frame back-pointer).
|
|
auto | zxfoundation::memory::objects::memory_object_update_policy (memory_object_ref storage, const memory_object_policy &policy) noexcept -> std::expected< void, lib::kernel_error > |
| | Replace the complete policy record on mutable memory authority.
|
|
auto | zxfoundation::memory::objects::memory_object_update_range (memory_object_ref ref, u64 range_start, u64 range_length) noexcept -> std::expected< void, lib::kernel_error > |
|
auto | zxfoundation::memory::objects::memory_objects_init () noexcept -> void |
|
| operator bool () const noexcept |
|
auto | operator= (const memory_object &)=delete |
|
|
u8 | _pad0 [3] {} |
|
u8 | _pad_related [3] {} |
|
std::atomic< u32 > | active_mappings {0} |
|
dgp::isolation::isolation_rights | authority_rights { dgp::isolation::isolation_rights::none} |
|
view_body | body {} |
|
void * | dataset_extent |
| | dataset_extent — reserved.
|
|
void * | device_binding |
| | device_binding — reserved.
|
|
dgp::memory_contract::memory_access | dgp_access {dgp::memory_contract::memory_access::none} |
|
dgp::memory_contract::memory_access | dgp_access {dgp::memory_contract::memory_access::none} |
|
u64 | dgp_generation {0} |
|
u64 | dgp_generation {0} |
|
dgp::isolation::isolation_rights | dgp_rights { dgp::isolation::isolation_rights::none} |
|
dgp::isolation::isolation_rights | dgp_rights { dgp::isolation::isolation_rights::none} |
|
dgp::memory_contract::memory_scope | dgp_scope {dgp::memory_contract::memory_scope::private_domain} |
|
dgp::memory_contract::memory_scope | dgp_scope {dgp::memory_contract::memory_scope::private_domain} |
|
std::atomic_bool | extent_retiring {false} |
|
u32 | generation {0} |
|
void * | generic {nullptr} |
| | none — unused, or opaque pointer.
|
|
u32 | id {scoms::kobject::KOBJECT_ID_INVALID} |
|
dgp::memory_contract::invalidation_scope | invalidate {dgp::memory_contract::invalidation_scope::none} |
|
dgp::memory_contract::invalidation_scope | invalidate {dgp::memory_contract::invalidation_scope::none} |
|
void * | kmem_cache |
| | kmem_cache — slub::kmem_cache*.
|
|
scoms::kobject::bobject | ko {} |
|
u64 | mapping_generation {0} |
|
u64 | mapping_generation {0} |
|
constexpr u32 | zxfoundation::memory::objects::MAX_MEMORY_OBJECTS = 8192U |
|
u8 | numa_node {0} |
|
u8 | numa_node {0} |
|
u32 | owner_domain {scoms::kobject::KOBJECT_ID_INVALID} |
|
void * | policy_server |
| | policy_server — policy::policy_server*.
|
|
u64 | range_length {0} |
|
u64 | range_start {0} |
|
u32 | related_generation {0} |
|
u32 | related_id {scoms::kobject::KOBJECT_ID_INVALID} |
|
scoms::kobject::kobject_type | related_type {scoms::kobject::kobject_type::none} |
|
void * | service_entry |
| | service_entry — sys::service::service_entry*.
|
|
u8 | storage_key {0} |
|
u8 | storage_key {0} |
|
u32 | storage_key_generation {0} |
|
u32 | storage_key_generation {0} |
|
scoms::kobject::kobject_type | type {scoms::kobject::kobject_type::none} |
|
memory_view_kind | view_kind {memory_view_kind::none} |
|
void * | vm_region |
| | vm_region — vm::vm_region*.
|