Kernel: Implement deletion of SMO objects
This commit is contained in:
@@ -21,6 +21,7 @@ namespace Kernel
|
||||
static SharedMemoryObjectManager& get();
|
||||
|
||||
BAN::ErrorOr<Key> create_object(size_t size, PageTable::flags_t);
|
||||
BAN::ErrorOr<void> delete_object(Key);
|
||||
BAN::ErrorOr<BAN::UniqPtr<SharedMemoryObject>> map_object(Key, PageTable&, AddressRange);
|
||||
|
||||
private:
|
||||
@@ -29,6 +30,8 @@ namespace Kernel
|
||||
private:
|
||||
struct Object : public BAN::RefCounted<Object>
|
||||
{
|
||||
~Object();
|
||||
|
||||
size_t size;
|
||||
PageTable::flags_t flags;
|
||||
BAN::Vector<paddr_t> paddrs;
|
||||
|
||||
@@ -159,6 +159,7 @@ namespace Kernel
|
||||
BAN::ErrorOr<long> sys_msync(void* addr, size_t len, int flags);
|
||||
|
||||
BAN::ErrorOr<long> sys_smo_create(size_t len, int prot);
|
||||
BAN::ErrorOr<long> sys_smo_delete(SharedMemoryObjectManager::Key);
|
||||
BAN::ErrorOr<long> sys_smo_map(SharedMemoryObjectManager::Key);
|
||||
|
||||
BAN::ErrorOr<long> sys_tty_ctrl(int fildes, int command, int flags);
|
||||
|
||||
Reference in New Issue
Block a user