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

#include <s0_admission.h>

Inheritance diagram for s0_AdmissionProtocol:
AdmissionProtocol GenericProtocol ParentProtocol

Classes

struct  tmp

Public Member Functions

template<class T >
unsigned alloc_sc (Utcb &utcb, unsigned idx_ec, struct para p, unsigned cpu, T *_obj, char const *name, bool a_sc=false)
unsigned push_scs (Utcb &utcb, unsigned root_sc=~0U, unsigned root_cpu=~0U)
 s0_AdmissionProtocol (unsigned cap_base, bool buffer, unsigned num=32)
- Public Member Functions inherited from AdmissionProtocol
unsigned alloc_sc (Utcb &utcb, unsigned idx_ec, struct para p, unsigned cpu, char const *name)
unsigned get_statistics (Utcb &utcb, cap_sel client, uint64 &con_time, const char *name="")
unsigned rebind_usage_cap (Utcb &utcb, cap_sel client)
unsigned get_usage_cap (Utcb &utcb, cap_sel client)
unsigned get_pseudonym (Utcb &utcb, unsigned client_id)
unsigned set_name (Utcb &utcb, char const *name, unsigned long name_len=~0UL)
 AdmissionProtocol (unsigned cap_base, unsigned instance=0, bool blocking=true)
- Public Member Functions inherited from GenericProtocol
unsigned call_server (Utcb &utcb, bool drop_frame)
 Call the server in a loop to resolve all faults.
unsigned call_server_drop (Utcb &utcb)
unsigned call_server_keep (Utcb &utcb)
template<class T >
void destroy (Utcb &utcb, unsigned portal_num, T *obj)
 Destroy the object.
void close (Utcb &utcb, unsigned portal_num, bool revoke_lock=true, bool _release_pseudonym=true)
 Close the session to the parent.
unsigned get_notify_sm ()
Utcbinit_frame (Utcb &utcb, unsigned op)
 GenericProtocol (const char *service, unsigned instance, unsigned cap_base, bool blocking, unsigned session_base=~0u)
- Public Member Functions inherited from ParentProtocol
 static_assert ((CAP_PT_PERCPU+Config::MAX_CPUS)< (1U<< Config::CAP_RESERVED_ORDER),"Capability Space misconfiguration.")

Private Attributes

struct tmptmp
unsigned tmp_size
unsigned counter

Additional Inherited Members

- Public Types inherited from AdmissionProtocol
enum  {
  TYPE_SC_ALLOC = ParentProtocol::TYPE_GENERIC_END, TYPE_SC_USAGE, TYPE_GET_USAGE_CAP, TYPE_REBIND_USAGE_CAP,
  TYPE_SET_NAME, TYPE_SC_PUSH
}
typedef struct
AdmissionProtocol::para 
sched
- Static Public Member Functions inherited from GenericProtocol
static Utcbinit_frame_noid (Utcb &utcb, unsigned op)
- Protected Attributes inherited from GenericProtocol
const char * _service
unsigned _instance
unsigned _cap_base
 Base of the capability range. This cap refers to CAP_PSEUDONYM.
unsigned _session_base
 Base of the session portals.
Semaphore _lock
bool _blocking
bool _disabled

Constructor & Destructor Documentation

s0_AdmissionProtocol::s0_AdmissionProtocol ( unsigned  cap_base,
bool  buffer,
unsigned  num = 32 
)
inlineexplicit

Member Function Documentation

template<class T >
unsigned s0_AdmissionProtocol::alloc_sc ( Utcb utcb,
unsigned  idx_ec,
struct para  p,
unsigned  cpu,
T *  _obj,
char const *  name,
bool  a_sc = false 
)
inline
unsigned s0_AdmissionProtocol::push_scs ( Utcb utcb,
unsigned  root_sc = ~0U,
unsigned  root_cpu = ~0U 
)
inline

Member Data Documentation

unsigned s0_AdmissionProtocol::counter
private
struct tmp* s0_AdmissionProtocol::tmp
private
unsigned s0_AdmissionProtocol::tmp_size
private

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