NOVA User-Level Environment  Version testbox/changed-memory-timing-317-g320d8b5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ServiceProgram Class Reference

#include <service.h>

Inheritance diagram for ServiceProgram:
BaseService NovaProgram ProgramConsole BaseProgram CapAllocator InternalCapAllocator PerCpuService VirtualNetService

Protected Member Functions

virtual cap_sel alloc_cap ()
virtual void dealloc_cap (cap_sel c)
cap_sel create_ec (phy_cpu_no cpu, Utcb **utcb_out)
 ServiceProgram (const char *console_name="service")
- Protected Member Functions inherited from BaseService
virtual BaseSessionnew_session ()=0
void garbace_collect (per_cpu &local)
virtual void close_session (per_cpu &local, BaseSession *s)
- Protected Member Functions inherited from NovaProgram
Utcballoc_utcb ()
 Alloc a region of virtual memory to put an EC into.
template<class C >
 __attribute__ ((nonnull(6))) unsigned create_ec_helper(C *tls
 Create an EC and setup the stack.
void init_mem (Hip *hip)
 Init the memory map from the HIP as we get them from sigma0.
void __attribute__ ((noreturn)) block_forever()
 Block ourself.
- Protected Member Functions inherited from ProgramConsole
void console_init (const char *name, Semaphore *sem)

Additional Inherited Members

- Public Member Functions inherited from BaseService
unsigned portal_func (Utcb &utcb, Utcb::Frame &input, bool &free_cap, cap_sel pid)
unsigned alloc_crd ()
bool register_service (const char *service_name)
- Public Member Functions inherited from NovaProgram
 NovaProgram ()
- Static Public Member Functions inherited from NovaProgram
static void exit (const char *msg)
 Default exit function.
- Public Attributes inherited from CapAllocator
unsigned long _cap_
unsigned long _cap_start
unsigned long _cap_order
- Static Public Attributes inherited from BaseProgram
static const unsigned stack_size_shift = 12
static const unsigned stack_size = (1U << stack_size_shift)
- Static Protected Member Functions inherited from BaseService
static unsigned flush_func ()
- Static Protected Member Functions inherited from ProgramConsole
static void putc (void *data, int value)
- Protected Attributes inherited from BaseService
Queue< BaseSession_free_sessions
struct BaseService::per_cpu _per_cpu [Config::MAX_CPUS]
- Protected Attributes inherited from NovaProgram
Hip_hip
unsigned _cap_block
RegionList< 512 > _free_virt
RegionList< 512 > _free_phys
RegionList< 512 > _virt_phys
phy_cpu_no cpunr
phy_cpu_no unsigned excbase
phy_cpu_no unsigned Utcb ** utcb_out
phy_cpu_no unsigned Utcb void * func
phy_cpu_no unsigned Utcb void
unsigned long 
cap = ~0UL
phy_cpu_no unsigned Utcb void
unsigned long bool 
local
- Protected Attributes inherited from ProgramConsole
VgaRegs _vga_regs
struct console_data _console_data
char _vga_console [0x1000]

Constructor & Destructor Documentation

ServiceProgram::ServiceProgram ( const char *  console_name = "service")
inlineprotected

Member Function Documentation

virtual cap_sel ServiceProgram::alloc_cap ( )
inlineprotectedvirtual

Implements BaseService.

cap_sel ServiceProgram::create_ec ( phy_cpu_no  cpu,
Utcb **  utcb_out 
)
inlineprotectedvirtual

Implements BaseService.

virtual void ServiceProgram::dealloc_cap ( cap_sel  c)
inlineprotectedvirtual

Implements BaseService.


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