ChorusOS 5.0 Features and Architecture Overview

System Microkernel APIs

The microkernel APIs include the services listed below. For convenience, these services have been divided into the corresponding man page sections.

Microkernel System Calls (2K)

_exit 

actorCreate 

actorDelete 

actorName 

actorPi 

actorPrivilege 

actorSelf 

actorStart 

actorStat 

actorStop 

bbClose 

bbEvent 

bbFilters 

bbFreeze 

bbGetNbb 

bbList 

bbName 

bbProdis 

bbRead 

bbRelease 

bbReset 

bbSeverity 

ethIpcStackAttach 

ethOsiStackAttach 

eventClear 

eventInit 

eventPost 

eventWait 

grpAllocate 

grpPortInsert 

grpPortRemove 

ipcCall 

ipcGetData 

ipcReceive 

ipcReply 

ipcRestore 

ipcSave 

ipcSend 

ipcSysInfo 

ipcTarget 

lapDescDup 

lapDescIsZero 

lapDescZero 

lapInvoke 

lapResolve 

mkStatActorMem 

mkStatActorSvPages 

mkStatActors 

mkStatCpu 

mkStatEvtCtrl 

mkStatEvtWait 

mkStatMem 

mkStatSvPages 

mkStatThreadCpu 

mkStatThreads 

monitor 

monitorGet 

monitorInit 

monitorNotify 

monitorNotifyAll 

monitorRel 

monitorWait 

msgAllocate 

msgFree 

msgGet 

msgPoolStat 

msgPut 

msgQueueStat 

msgRemove 

msgSpaceCreate 

msgSpaceOpen 

mutexGet 

mutexInit 

mutexRel 

mutexTry 

padGet 

padKeyCreate 

padKeyDelete 

padSet 

portCreate 

portDeclare 

portDelete 

portDisable 

portEnable 

portGetSeqNum 

portLi 

portMigrate 

portPi 

portUi 

ptdErrnoAddr 

ptdGet 

ptdKeyCreate 

ptdKeyDelete 

ptdRemoteGet 

ptdRemoteSet 

ptdSet 

ptdThreadDelete 

ptdThreadId 

rgnAllocate 

rgnDup 

rgnFree 

rgnInitFromActor 

rgnMapFromActor 

rgnSetInherit 

rgnSetOpaque 

rgnSetPaging 

rgnSetProtect 

rgnStat 

rtMutexGet 

rtMutexInit 

rtMutexRel 

rtMutexTry 

schedAdmin 

semInit 

semP 

semV 

svAbortHandler 

svActorAbortHandler 

svActorAbortHandlerConnect 

svActorAbortHandlerDisconnect 

svActorAbortHandlerGetConnected 

svActorExcHandler 

svActorExcHandlerConnect 

svActorExcHandlerDisconnect 

svActorExcHandlerGetConnected 

svActorStopHandler 

svActorStopHandlerConnect 

svActorStopHandlerDisconnect 

svActorStopHandlerGetConnected 

svActorVirtualTimeout 

svActorVirtualTimeoutCancel 

svActorVirtualTimeoutSet 

svCopyIn 

svCopyInString 

svCopyOut 

svDdmAudit 

svDdmClose 

svDdmDiag 

svDdmDisable 

svDdmEnable 

svDdmGetInfo 

svDdmGetState 

svDdmGetStats 

svDdmOffline 

svDdmOnline 

svDmOpen 

svDdmShutdown 

svExcHandler 

svFpuContext 

svGetInvoker 

svIntrLevel 

svLapBind 

svLapCreate 

svLapDelete 

svLapUnbind 

svMaskedLockGet 

svMaskedLockInit 

svMaskedLockRel 

svMaskedLockTry 

svMemRead 

svMemWrite 

svMsgHandler 

svMsgHdlReply 

svPagesAllocate 

svPagesFree 

svPreemptable 

svSoftIntrDeclare 

svSoftIntrForget 

svSoftIntrTrigger 

svSpinLockGet 

svSpinLockInit 

svSpinLockRel 

svSpinLockTry 

svSysCtx 

svSysPanic 

svSysTimeout 

svSysTimeoutCancel 

svSysTimeoutSet 

svSysTrapHandler 

svSysTrapHandlerConnect 

svSysTrapHandlerDisconnect 

svSysTrapHandlerGetConnected 

svThreadVirtualTimeout 

svThreadVirtualTimeoutCancel 

svThreadVirtualTimeoutSet 

svTimeoutGetRes 

svTrapConnect 

svTrapDisConnect 

svVirtualTimeoutCancel 

svVirtualTimeoutSet 

sysBench 

sysGetConf 

sysGetEnv 

sysLog 

sysPoll 

sysRead 

sysReboot 

sysSetEnv 

sysShutdown 

sysTime 

sysTimeGetRes 

sysTimer 

sysTimerGetCounterFrequency 

sysTimerGetCounterPeriod 

sysTimerReadCounter 

sysTimerStartFreerun 

sysTimerStartPeriodic 

sysTimerStop 

sysUnsetEnv 

sysWrite 

threadAbort 

threadAborted 

threadActivate 

threadBind 

threadContext 

threadCreate 

threadDelay 

threadDelete 

threadLoadR 

threadName 

threadResume 

threadScheduler 

threadSelf 

threadSemInit 

threadSemPost 

threadSemWait 

threadStart 

threadStat 

threadStop 

threadStoreR 

threadSuspend 

threadTimes 

timerCreate 

timerDelete 

timerGetRes 

timerSet 

timerThreadPoolInit 

timerThreadPoolWait 

uiBuild 

uiClear 

uiEqual 

uiGetSite 

uiIsLocal 

uiLocalSite 

uiSiteBuild 

uiValid 

univTime 

univTimeAdjust 

univTimeSet 

virtualTimeGetRes 

vmCopy 

vmFree 

vmLock 

vmPageSize 

vmPhysAddr 

vmSetPar 

vmStat 

vmUnLock 

wdt_get_interval 

wdt_alloc 

wdt_arm 

wdt_disarm 

wdt_free 

wdt_get_maxinterval 

wdt_get_mininterval 

wdt_is_armed 

wdt_pat 

wdt_realloc 

wdt_set_interval 

wdt_shutdown 

wdt_startup_commit 

 

Data Link Services (2DL)

svDataLink 

svDataLinkAttach 

svInputFrameDeliver 

svLinkFailure 

svOutFrameFree 

 

Monitoring Services (2MON)

KcModule 

svActorMonConst 

svActorPortList 

svActorProbeConnect 

svActorProbeDisconnect 

svActorThreadList 

svPortMonConst 

svPortProbeConnect 

svPortProbeDisconnect 

svSiteActorList 

svSiteMonConst 

svSiteProbeConnect 

svSiteProbeDisconnect 

svThreadMonConst 

svThreadProbeConnect 

svThreadProbeDisconnect 

threadMonUser 

UcModule 

Virtual Memory Segment Services (2SEG)

dcAlloc 

dcCluster 

dcFillZero 

dcFlush 

dcFree 

dcGetPages 

dcIsDirty 

dcPgNumber 

dcPxmDeclare 

dcRead 

dcSync 

dcTrunc 

dcWrite 

lcCap 

lcClose 

lcFillZero 

lcFlush 

lcOpen 

lcPushData 

lcRead 

lcSetRights 

lcStat 

lcTrunc 

lcWrite 

MpCreate 

MpGetAccess 

MpPullIn 

MpPushOut 

MpRelease 

pageIoDone 

pageMap 

pagePhysAddr 

pageSetDirty 

pageSgId 

pageUnmap 

PxmClose 

PxmGetAcc 

PxmOpen 

PxmPullIn 

PxmPushOutAsyn 

PxmRelAccLock 

PxmStat 

PxmSwapOut 

rgnFlush 

rgnInit 

rgnInitFromDtCache 

rgnMap 

rgnMapFromDtCache 

sgFlush 

sgRead 

sgStat 

sgSyncAll 

sgWrite 

vmFlush 

Device Driver Interfaces (9DDI)

ata 

bench 

bus 

busFi 

buscom 

busmux 

diag 

disk 

diskStat 

ether 

etherStat 

flash 

flashCtl 

flashStat 

generic_ata 

gpio 

hsc 

isa 

keyboard 

mii 

mngt 

mouse 

netFrame 

nvram 

pci 

pciFi 

pcimngr 

pciswap 

pcmcia 

phy 

quicc 

ric 

rtc 

timer 

uart 

uartStat 

vme 

wdtimer 

 

Driver to Kernel Interfaces (9DKI)

 

dataCacheBlockFlush 

dataCacheBlockFlush_powerpc 

dataCacheBlockInvalidate 

dataCacheBlockInvalidate_powerpc 

dataCacheFlush 

dataCacheInvalidate 

dataCacheInvalidate_powerpc 

dcacheBlockFlush 

dcacheBlockFlush_usparc 

dcacheFlush 

dcacheFlush_usparc 

dcacheLineFlush 

dcacheLineFlush_usparc 

DISABLE_PREEMPT 

dtreeNodeAlloc 

dtreeNodeChild 

dtreeNodeDetach 

dtreeNodeFind 

dtreeNodeFree 

dtreeNodeParent 

dtreeNodePeer 

dtreeNodeRoot 

dtreePropAdd 

dtreePropAlloc 

dtreePropAttach 

dtreePropDetach 

dtreePropFind 

dtreePropFindNext 

dtreePropFree 

dtreePropLength 

dtreePropName 

dtreePropValue 

eieio 

eieio_powerpc 

ENABLE_PREEMPT 

hrTimerFrequency 

hrTimerFrequency_powerpc 

hrTimerFrequency_usparc 

hrTimerFrequency_x86 

hrTimerPeriod 

hrTimerPeriod_powerpc 

hrTimerPeriod_usparc 

hrTimerPeriod_x86 

hrTimerValue 

hrTimerValue_powerpc 

hrTimerValue_usparc 

hrTimerValue_x86 

hrt 

hrt_powerpc 

hrt_usparc 

hrt_x86 

icacheBlockInval 

icacheBlockInval_usparc 

icacheInval 

icacheInval_usparc 

icacheLineInval 

icacheLineInval_usparc 

imsIntrMask_f 

imsIntrUnmask_f 

instCacheBlockInvalidate 

instCacheBlockInvalidate_powerpc 

instCacheInvalidate 

instCacheInvalidate_powerpc 

ioLoad16 

ioLoad16_x86 

ioLoad32 

ioLoad32_x86 

ioLoad8 

ioLoad8_x86 

ioRead16 

ioRead16_x86 

ioRead32 

ioRead32_x86 

ioRead8 

ioRead8_x86 

ioStore16 

ioStore16_x86 

ioStore32 

ioStore32_x86 

ioStore8 

ioStore8_x86 

ioWrite16 

ioWrite16_x86 

ioWrite32 

ioWrite32_x86 

ioWrite8 

ioWrite8_x86 

load_sync_16_usparc 

load_sync_32_usparc 

load_sync_64_usparc 

load_sync_8_usparc 

loadSwap_16 

loadSwap_32 

loadSwap_64 

loadSwap_sync_16_usparc 

loadSwap_sync_32_usparc 

loadSwap_sync_64_usparc 

loadSwapEieio_16 

loadSwapEieio_16_powerpc 

loadSwapEieio_32 

loadSwapEieio_32_powerpc 

store_sync_16_usparc 

store_sync_32_usparc 

store_sync_64_usparc 

store_sync_8_usparc 

storeSwap_16 

storeSwap_32 

storeSwap_64 

storeSwap_sync_16_usparc 

storeSwap_sync_32_usparc 

storeSwap_sync_64_usparc 

storeSwapEieio_16 

storeSwapEieio_16_powerpc 

storeSwapEieio_32 

storeSwapEieio_32_powerpc 

svAsyncExcepAttach 

svAsyncExcepAttach_usparc 

svAsyncExcepDetach 

svAsyncExcepDetach_usparc 

svDeviceAlloc 

svDeviceEntry 

svDeviceEvent 

svDeviceFree 

svDeviceLookup 

svDeviceNewCancel 

svDeviceNewNotify 

svDeviceRegister 

svDeviceRelease 

svDeviceUnregister 

svDkiClose 

svDkiEvent 

svInitLevel 

svIoRemap 

svDkiOpen 

svDkiThreadCall 

svDkiThreadCancel 

svDkiThreadTrigger 

svDriverCap 

svDriverEntry 

svDriverLookupFirst 

svDriverLookupNext 

svDriverRegister 

svDriverRelease 

svDriverUnregister 

svIntrAttach 

svIntrAttach_powerpc 

svIntrAttach_usparc 

svIntrAttach_x86 

svIntrCtxGet 

svIntrCtxGet_powerpc 

svIntrCtxGet_usparc 

svIntrCtxGet_x86 

svIntrDetach 

svIntrDetach_powerpc 

svIntrDetach_usparc 

svIntrDetach_x86 

svMemAlloc 

svMemFree 

svPhysAlloc 

svPhysFree 

svPhysMap 

svPhysMap_powerpc 

svPhysMap_usparc 

svPhysMap_x86 

svPhysUnmap 

svPhysUnmap_powerpc 

svPhysUnmap_usparc 

svPhysUnmap_x86 

svSoftIntrAttach_usparc 

svSoftIntrDetach_usparc 

svTimeoutCancel 

svTimeoutGetRes 

svTimeoutSet 

svTimerIntrAttach_usparc 

svTimerIntrDetach_usparc 

swap_16 

swap_32 

swap_64 

swapEieio_16 

swapEieio_16_powerpc 

swapEieio_32 

swapEieio_32_powerpc 

usecBusyWait 

vmMapToPhys 

vmMapToPhys_powerpc 

vmMapToPhys_usparc 

vmMapToPhys_x86 

vmMapToPhys_x86 

 

Driver Implementations (9DRV)

amd29xxx 

atadisk 

benchns16550 

bench_softint 

bench_tbDec 

buscom_loopback 

buscom_nexus 

buseth 

busmux 

cheerio 

dec2115x 

dec2155x 

dec21x4x 

ebus 

e100 

el3 

epfpld 

epic100 

falcon 

falcon_flashCtl 

fccEther 

flashdisk 

fpga 

generic_ata 

gpiohsc 

harrier 

hawk 

i8042 

i8254 

i8259 

intel28fxxx 

isabios 

isaFi 

isapci 

m48txx 

mc146818 

muxtst 

ne2000 

ns16550 

openpic 

pcibios 

pcicom_dec2155x_master 

pcicom_dec2155x_slave 

pcicom_host 

pciconf 

pcienum 

pciFi 

pcimngr 

pciswap 

pitTimer 

quicc8260 

quicc8xx 

raven 

raven_wdtimer 

ric 

rio 

sabre 

sccEther 

sccUart 

simba 

siuWdt 

smc1660 

smc91xx 

smcUart 

sym53c8xx 

tbDec 

universe 

univRemCom 

usparchsc 

vt82c586 

vt82c586_ata 

w83c553 

w83c553_ata 

z8536 

z85x30 

Standard C Library Functions (3STDC)

These services are available to applications that do not link with the POSIX subsystem.


Note -

When you are not using the POSIX subsystem, only basic C++ programming is permitted. In particular, the STDC++ library is not available outside the POSIX subsytem, restricting applications from the use of io and exception classes.


abort 

abs 

atexit 

atof 

atoi 

atol 

bcmp 

bcopy 

bsearch 

bzero 

calloc 

div 

exit 

fabs 

ffs 

free 

getchar 

getenv 

getopt 

getsubopt 

getw 

htonl 

htons 

isinf 

isnan 

isprint 

labs 

ldexp 

ldiv 

longjmp 

malloc 

memccpy 

memchr 

memcmp 

memcpy 

memmove 

memory 

memset 

mkstemp 

mktemp 

mktime 

modf 

ntohl 

ntohs 

perror 

printerr 

printf 

putc 

putchar 

putenv 

puts 

putw 

qsort 

rand 

rand_r 

random 

realloc 

realpath 

regcomp 

regerror 

regex 

regexec 

regfree 

remove 

rewind 

rindex 

scandir 

scanf 

setbuf 

setenv 

setjmp 

setstate 

setvbuf 

snprintf 

sprintf 

srand 

srandom 

sscanf 

stdarg 

strcasecmp 

strcat 

strchr 

strcmp 

strcoll 

strcpy 

strcspn 

strdup 

strerror 

strftime 

string 

strlen 

strncasecmp 

strncat 

strncmp 

strncpy 

strpbrk 

strrchr 

strsep 

strspn 

strstr 

strtod 

strtok 

strtok_r 

strtol 

strtoul 

strxfrm 

swab 

sys_errlist 

sys_nerr 

taddr2uaddr 

tempnam 

thread_once 

time 

tmpfile 

tmpnam 

toascii 

tolower 

toupper 

tzset 

uaddr2taddr 

ungetc 

unlocked 

unsetenv 

vfprintf 

vprintf 

vsnprintf 

vsprintf