The Pedigree Project  0.1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
NativeSyscallManager Class Reference
+ Inheritance diagram for NativeSyscallManager:
+ Collaboration diagram for NativeSyscallManager:

Public Member Functions

void initialise ()
 
uintptr_t call (uintptr_t function, uintptr_t p1=0, uintptr_t p2=0, uintptr_t p3=0, uintptr_t p4=0, uintptr_t p5=0)
 
virtual uintptr_t syscall (SyscallState &state)
 
 NativeSyscallManager ()
 
virtual ~NativeSyscallManager ()
 

Private Member Functions

 NativeSyscallManager (const NativeSyscallManager &)
 
NativeSyscallManageroperator= (const NativeSyscallManager &)
 
NativeBasefactory (uint64_t guid)
 

Private Attributes

Tree< void *, NativeBase * > m_NativeObjects
 

Additional Inherited Members

- Protected Member Functions inherited from SyscallHandler
virtual ~SyscallHandler ()
 

Detailed Description

Definition at line 30 of file NativeSyscallManager.h.

Constructor & Destructor Documentation

NativeSyscallManager::NativeSyscallManager ( )

The constructor

Definition at line 39 of file NativeSyscallManager.cc.

NativeSyscallManager::~NativeSyscallManager ( )
virtual

The destructor

Definition at line 43 of file NativeSyscallManager.cc.

References SyscallManager::instance(), and SyscallManager::registerSyscallHandler().

NativeSyscallManager::NativeSyscallManager ( const NativeSyscallManager )
private

The copy-constructor

Note
Not implemented (singleton)

Member Function Documentation

uintptr_t NativeSyscallManager::call ( uintptr_t  function,
uintptr_t  p1 = 0,
uintptr_t  p2 = 0,
uintptr_t  p3 = 0,
uintptr_t  p4 = 0,
uintptr_t  p5 = 0 
)

Calls a syscall.

Definition at line 52 of file NativeSyscallManager.cc.

References Dec, ERROR, SyscallManager::instance(), and SyscallManager::syscall().

NativeBase * NativeSyscallManager::factory ( uint64_t  guid)
private

Creates native subsystem objects from global unique IDs.

Definition at line 185 of file NativeSyscallManager.cc.

References NOTICE.

NativeSyscallManager& NativeSyscallManager::operator= ( const NativeSyscallManager )
private

The copy-constructor

Note
Not implemented (singleton)
uintptr_t NativeSyscallManager::syscall ( SyscallState &  state)
virtual

Called when a syscall arrives.

New IPC system.

Todo:
check that pointer parameters are mapped.

Implements SyscallHandler.

Definition at line 69 of file NativeSyscallManager.cc.

References Dec, ERROR, ReturnState::meta, NOTICE, Processor::setInterrupts(), ReturnState::success, and NativeBase::syscall().

Member Data Documentation

Tree<void *, NativeBase *> NativeSyscallManager::m_NativeObjects
private

Maps userspace object pointers to their respective kernel object.

Definition at line 60 of file NativeSyscallManager.h.


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