The Pedigree Project  0.1
Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | List of all members
SyscallManager Class Referenceabstract

#include <SyscallManager.h>

+ Inheritance diagram for SyscallManager:
+ Collaboration diagram for SyscallManager:

Public Member Functions

virtual bool registerSyscallHandler (Service_t Service, SyscallHandler *pHandler)=0
 
virtual uintptr_t syscall (Service_t service, uintptr_t function, uintptr_t p1=0, uintptr_t p2=0, uintptr_t p3=0, uintptr_t p4=0, uintptr_t p5=0)=0
 

Static Public Member Functions

static EXPORTED_PUBLIC SyscallManagerinstance ()
 

Protected Member Functions

 SyscallManager ()
 
virtual ~SyscallManager ()
 

Private Member Functions

 SyscallManager (const SyscallManager &)
 
SyscallManageroperator= (const SyscallManager &)
 

Detailed Description

The syscall manager allows syscall handler registrations and handles syscalls

Definition at line 34 of file include/pedigree/kernel/processor/SyscallManager.h.

Constructor & Destructor Documentation

SyscallManager::SyscallManager ( )
protecteddefault

The constructor

SyscallManager::~SyscallManager ( )
protectedvirtualdefault

The destructor

SyscallManager::SyscallManager ( const SyscallManager )
private

The copy-constructor

Note
Not implemented (singleton)

Member Function Documentation

SyscallManager & SyscallManager::instance ( )
static
SyscallManager& SyscallManager::operator= ( const SyscallManager )
private

The copy-constructor

Note
Not implemented (singleton)
virtual bool SyscallManager::registerSyscallHandler ( Service_t  Service,
SyscallHandler pHandler 
)
pure virtual

Register a syscall handler

Parameters
[in]Servicethe service number you want to register
[in]pHandlerthe interrupt handler
Returns
true, if successfully registered, false otherwise

Implemented in MIPS32InterruptManager, X86InterruptManager, PPC32InterruptManager, ARM926EInterruptManager, ARMV7InterruptManager, X64SyscallManager, and HostedSyscallManager.

Referenced by KernelCoreSyscallManager::~KernelCoreSyscallManager(), NativeSyscallManager::~NativeSyscallManager(), PedigreeCSyscallManager::~PedigreeCSyscallManager(), and PosixSyscallManager::~PosixSyscallManager().

+ Here is the caller graph for this function:

virtual uintptr_t SyscallManager::syscall ( Service_t  service,
uintptr_t  function,
uintptr_t  p1 = 0,
uintptr_t  p2 = 0,
uintptr_t  p3 = 0,
uintptr_t  p4 = 0,
uintptr_t  p5 = 0 
)
pure virtual

The documentation for this class was generated from the following files: