NOVA User-Level Environment
Version testbox/changed-memory-timing-317-g320d8b5
|
Service that uses portals insted of semaphores as identifiers for sessions. More...
#include <sservice.h>
Public Member Functions | |
unsigned | get_crdt () |
unsigned | create_session_portal (cap_sel pt) |
unsigned | portal_func (Utcb &utcb, Utcb::Frame &input, bool &free_cap, cap_sel pid) |
Public Member Functions inherited from BaseSService< Session, A > | |
virtual cap_sel | alloc_cap (unsigned count=1)=0 |
virtual void | dealloc_cap (cap_sel c)=0 |
virtual cap_sel | create_ec4pt (phy_cpu_no cpu, Utcb **utcb_out, cap_sel ec=~0u)=0 |
unsigned | alloc_crd () |
bool | register_service (const char *service_name, Hip &hip=Global::hip) |
Registers the service with parent. | |
unsigned | open_session (Utcb &utcb, cap_sel pseudonym, bool &free_cap) |
unsigned | close_session (Utcb &utcb, cap_sel session_id) |
unsigned | handle_session (Utcb &utcb, cap_sel session_id, unsigned op, Utcb::Frame &input, bool &free_cap) |
Private Types | |
typedef BaseSService< Session, A > | Base |
Additional Inherited Members | |
Protected Types inherited from BaseSService< Session, A > | |
typedef ClientDataStorage < Session, A > | Sessions |
Protected Member Functions inherited from BaseSService< Session, A > | |
virtual unsigned | new_session (Session *session)=0 |
virtual unsigned | handle_request (Session *session, unsigned op, Utcb::Frame &input, Utcb &utcb, bool &free_cap)=0 |
mword | get_portal_func_addr () |
Protected Attributes inherited from BaseSService< Session, A > | |
Sessions | _sessions |
cap_sel | _worker_ec_base |
char * | flag_revoke |
Service that uses portals insted of semaphores as identifiers for sessions.
|
private |
|
inline |
|
inline |
|
inline |