[kernel] Move bind_irq syscall to new system object

In order to implement capabilities on system resources like IRQs so that
they may be restricted to drivers only, add a new 'system' kobject type,
and move the bind_irq functionality from endpoint to system.

Also fix some stack bugs passing the initial handles to a program.
This commit is contained in:
2020-10-18 20:45:06 -07:00
parent 2ad90dcb5c
commit 8bb9e22218
14 changed files with 80 additions and 28 deletions

View File

@@ -0,0 +1,18 @@
#pragma once
/// \file system.h
/// Definition of kobject type representing the system
#include "objects/kobject.h"
class system :
public kobject
{
public:
static constexpr kobject::type type = kobject::type::event;
inline static system * get() { return &s_instance; }
private:
static system s_instance;
system() : kobject(type::system) {}
};