ChorusOS 5.0 Features and Architecture Overview

POSIX APIs

POSIX System Calls (2POSIX)

accept 

access 

adjtime 

bind 

chdir 

chflags 

chmod 

chown 

chroot 

close 

connect 

dup 

dup2 

fchdir 

fchflags 

fchmod 

fchown 

fcntl 

flock 

fpathconf 

fstat 

fstatfs 

fsync 

ftruncate 

getdirentries 

getdomainname 

getegid 

geteuid 

getfh 

getfsstat 

getgid 

gethostname 

getpeername 

getpgid 

getpgrp 

getpid 

getppid 

getrlimit 

getsid 

getsockname 

getsockopt 

gettimeofday 

getuid 

hostname 

ioctl 

issetugid 

kill 

link 

listen 

lseek 

lstat 

mkdir 

mkfifo 

mknod 

mmap 

mount 

mq_close 

mq_getattr 

mq_open 

mq_receive 

mq_send 

mq_setattr 

mq_unlink 

munmap 

nfssvc 

nvramapi 

open 

pathconf 

pipe 

poll 

posix_spawn 

posix_spawnp 

read 

readlink 

readv 

recv 

recvfrom 

recvmsg 

rename 

rmdir 

select 

send 

sendmsg 

sendto 

setdomainname 

setegid 

seteuid 

setgid 

sethostname 

setpgid 

setpgrp 

setrlimit 

setsid 

setsockopt 

settimeofday 

setuid 

shm_open 

shm_unlink 

shutdown 

sigaction 

sigpending 

sigprocmask 

sigqueue 

sigsuspend 

sigtimedwait 

sigwait 

sigwaitinfo 

socket 

socketpair 

stat 

statfs 

swapon 

symlink 

sync 

truncate 

umask 

unlink 

unmount 

utimes 

wait 

write 

writev 

 

FTP Daemon Library (3FTPD)

ftpdGetCnx 

ftpdHandleCnx 

ftpdOob 

ftpdStartSrv 

lreply 

perror_reply 

reply 

systemAsciiOff 

systemBeany 

systemBesuper 

systemBeuser 

systemChdir 

systemCommand 

systemDelete 

systemFileSize 

systemGunique 

systemListFiles 

systemLog 

systemLogwtmp 

systemMkdir 

systemPass 

systemReceiveAscii 

systemReceiveBin 

systemRename 

systemRmdir 

systemSendAscii 

systemSendBin 

systemSetThreadTitle 

systemSleep 

systemUser 

systemVlog 

  

Mathematical Libraries (3M)

acos 

acosh 

asin 

asinh 

atan 

atan2 

atanh 

cabs 

cbrt 

ceil 

copysign 

cos 

cosh 

drem 

erf 

erfc 

exp 

expm1 

finite 

floor 

fmod 

gamma 

hypot 

ieee 

infnan 

j0 

j1 

jn 

lgamma 

log 

log10 

log1p 

logb 

pow 

rint 

scalb 

sin 

sinh 

sqrt 

tan 

tanh 

y0 

y1 

yn 

 

POSIX Library Functions (3POSIX)

Clocks and Timers 

 

 

 clock_gettime clock_settime clock_getres
 timer_create timer_delete timer_getoverrun
 timer_gettime timer_settime nanosleep

Threads 

 

 pthread_attr_destroy pthread_attr_getdetachstate
 pthread_attr_getinheritsched pthread_attr_getschedparam
 pthread_attr_getschedpolicy pthread_attr_getscope
 pthread_attr_getstackaddr pthread_attr_getstacksize
 pthread_attr_init pthread_attr_setdetachstate
 pthread_attr_setinheritsched pthread_attr_setschedparam
 pthread_attr_setschedpolicy pthread_attr_setscope
 pthread_attr_setstackaddr pthread_attr_setstacksize
 pthread_cond_broadcast pthread_cond_destroy
 pthread_cond_init pthread_cond_signal
 pthread_cond_timedwait pthread_cond_wait
 pthread_condattr_destroy pthread_condattr_init
 pthread_create pthread_equal
 pthread_exit pthread_getschedparam
 pthread_getspecific pthread_join
 pthread_key_create pthread_key_delete
 pthread_kill pthread_mutex_destroy
 pthread_mutex_init pthread_mutex_lock
 pthread_mutex_trylock pthread_mutex_unlock
 pthread_mutexattr_destroy pthread_mutexattr_init
 pthread_self pthread_setschedparam
 pthread_setspecific pthread_yield
 pthread_once 

Baud RateFunctions 

 

 cfgetispeed cfgetospeed
 cfmakeraw cfsetispeed
 cfsetospeed cfsetspeed

 Terminal Interface Control

 

 tcgetattr tcsetattr

Execution Scheduling 

 

 sched_get_priority_max sched_get_priority_min
 sched_rr_get_interval sched_yield

Synchronization 

 

 sem_destroy sem_getvalue
 sem_init sem_post
 sem_trywait sem_wait

Other POSIX Library Functions 

 

err 

closedir 

directory 

getcwd 

getwd 

opendir 

readdir 

rewinddir 

seekdir 

sysconf 

sysctl 

sysctlbyname 

telldir 

 

Other 

 

btree 

cancellation 

dbopen 

endnetent 

endnetgrent 

endprotoent 

endservent 

getdiskbyname 

getmntinfo 

getnetbyaddr 

getnetbyname 

getnetent 

getnetgrent 

getprotobyname 

getprotobynumber 

getprotoent 

getservbyname 

getservbyport 

getservent 

glob 

globfree 

hash 

innetgr 

link_addr 

link_ntoa 

mpool 

ns_addr 

ns_ntoa 

 

recno 

setnetent 

setnetgrent 

setprotoent 

setservent 

verr 

verrx 

vwarn 

vwarnx 

warn 

warnx 

RPC Services (3RPC)

auth_destroy 

authnone_create 

authsys_create 

authsys_create_default 

clnt_call 

clnt_control 

clnt_create 

clnt_create_timed 

clnt_create_vers 

clnt_create_vers_timed 

clnt_destroy 

clnt_dg_create 

clnt_freeres 

clnt_geterr 

clnt_pcreateerror 

clnt_perrno 

clnt_perror 

clnt_raw_create 

clnt_send 

clnt_spcreateerror 

clnt_sperrno 

clnt_sperror 

clnt_tli_create 

clnt_tp_create 

clnt_tp_create_timed 

clnt_vc_create 

endnetpath 

endrpcent 

getnetpath 

getrpcbyname 

getrpcbynumber 

getrpcent 

getrpcport 

rpc 

rpc_broadcast 

rpc_broadcast_exp 

rpc_call 

rpc_clnt_auth 

rpc_clnt_calls 

rpc_clnt_create 

rpc_control 

rpc_createerr 

rpc_reg 

rpc_svc_calls 

rpc_svc_create 

rpc_svc_err 

rpc_svc_reg 

rpc_xdr 

rpcb_getaddr 

rpcb_getmaps 

rpcb_gettime 

rpcb_rmtcall 

rpcb_set 

rpcb_unset 

rpcbind 

setnetpath 

setrpcent 

svc_add_input 

svc_auth_reg 

svc_control 

svc_create 

svc_destroy 

svc_dg_create 

svc_dg_enablecache 

svc_done 

svc_exit 

svc_fd_create 

svc_fdset 

svc_freeargs 

svc_getargs 

svc_getreq_common 

svc_getreq_poll 

svc_getreqset 

svc_getrpccaller 

svc_max_pollfd 

svc_pollfd 

svc_raw_create 

svc_reg 

svc_run 

svc_sendreply 

svc_tli_create 

svc_tp_create 

svc_unreg 

svc_vc_create 

svcerr_auth 

svcerr_decode 

svcerr_noproc 

svcerr_noprog 

svcerr_progvers 

svcerr_systemerr 

svcerr_weakauth 

xdr 

xdr_accepted_reply 

xdr_admin 

xdr_array 

xdr_authsys_parms 

xdr_bool 

xdr_bytes 

xdr_callhdr 

xdr_callmsg 

xdr_char 

xdr_complex 

xdr_control 

xdr_create 

xdr_destroy 

xdr_double 

xdr_enum 

xdr_float 

xdr_free 

xdr_getpos 

xdr_hyper 

xdr_inline 

xdr_int 

xdr_long 

xdr_longlong_t 

xdr_opaque 

xdr_opaque_auth 

xdr_pointer 

xdr_quadruple 

xdr_reference 

xdr_rejected_reply 

xdr_replymsg 

xdr_setpos 

xdr_short 

xdr_simple 

xdr_sizeof 

xdr_string 

xdr_u_char 

xdr_u_hyper 

xdr_u_int 

xdr_u_long 

xdr_u_longlong_t 

xdr_u_short 

xdr_union 

xdr_vector 

xdr_void 

xdr_wrapstring 

xdrmem_create 

xdrrec_create 

xdrrec_endofrecord 

xdrrec_eof 

xdrrec_readbytes 

xdrrec_skiprecord 

xdrstdio_create 

xprt_register 

xprt_unregister 

Standard C Library Functions (3STDC)

These services are available to applications using the POSIX subsystem.

_assert 

_ldexp 

_stdc_assert 

abort 

abs 

addr2ascii 

alarm 

alphasort 

ascii2addr 

asctime 

asctime_r 

assert 

atexit 

atof 

atoi 

atol 

bcmp 

bcopy 

bsearch 

bstring 

byteorder 

bzero 

calloc 

cgetcap 

cgetclose 

cgetent 

cgetfirst 

cgetmatch 

cgetnext 

cgetnum 

cgetset 

cgetstr 

cgetustr 

clearerr 

closelog 

crypt 

ctime 

ctime_r 

ctype 

difftime 

div 

dn_comp 

dn_expand 

endgrent 

endhostent 

endnetconfig 

endpwent 

errno 

ether_aton 

ether_hostton 

ether_line 

ether_ntoa 

ether_ntohost 

ethers 

exit 

fabs 

fclose 

fdopen 

feof 

ferror 

fflagstostr 

fflush 

ffs 

fgetc 

fgetpos 

fgets 

fileno 

flockfile 

fopen 

fprintf 

fputc 

fputs 

fread 

free 

freenetconfigent 

freopen 

fscanf 

fseek 

fsetpos 

ftell 

ftrylockfile 

funlockfile 

fwrite 

gai_unlocked 

getaddrinfo 

getbsize 

getc 

getc_unlocked 

getchar 

getchar_unlocked 

getenv 

getgrent 

getgrid 

getgrnam 

gethostbyaddr 

gethostbyname 

gethostbyname2 

gethostent 

getnetconfig 

getnetconfigent 

getopt 

getpwent 

getpwname 

getpwuid 

gets 

getsitebyaddr 

getsitebyname 

getsubopt 

getw 

gmtime 

gmtime_r 

herror 

htonl 

htons 

if_freenameindex 

if_indextoname 

if_nameindex 

if_nametoindex 

index 

inet 

inet6_option_alloc 

inet6_option_append 

inet6_option_find 

inet6_option_init 

inet6_option_next 

inet6_option_space 

inet6_rthdr_add 

inet6_rthdr_getaddr 

inet6_rthdr_getflags 

inet6_rthdr_init 

inet6_rthdr_lasthop 

inet6_rthdr_reverse 

inet6_rthdr_segments 

inet6_rthdr_space 

inet_addr 

inet_aton 

inet_lnaof 

inet_makeaddr 

inet_netof 

inet_network 

inet_ntoa 

inet_ntop 

inet_pton 

initstate 

isalnum 

isalpha 

isascii 

isatty 

iscntrl 

isdigit 

isgraph 

isinf 

islower 

isnan 

isprint 

ispunct 

isspace 

isupper 

isxdigit 

killpg 

labs 

ldexp 

ldiv 

localtime 

localtime_r 

longjmp 

malloc 

memccpy 

memchr 

memcmp 

memcpy 

memmove 

memory 

memset 

mkstemp 

mktemp 

mktime 

modf 

nc_perror 

nc_sperror 

netdir 

netdir_free 

netdir_getbyaddr 

netdir_getbyname 

netdir_mergeaddr 

netdir_options 

netdir_perror 

netdir_sperror 

ntohl 

ntohs 

openlog 

pause 

pclose 

perror 

popen 

printerr 

printf 

putc 

putc_unlocked 

putchar 

putchar_unlocked 

putenv 

puts 

putw 

qsort 

rand 

rand_r 

random 

realloc 

realpath 

regcomp 

regerror 

regex 

regexec 

regfree 

remove 

res_init 

res_mquery 

res_query 

res_search 

res_send 

resolver 

rewind 

rindex 

scandir 

scanf 

setbuf 

setenv 

setgrent 

setgroupent 

sethostent 

setjmp 

setlogmask 

setnetconfig 

setpassent 

setpwent 

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 

strtofflags 

strtok 

strtok_r 

strtol 

strtoul 

strxfrm 

swab 

sys_errlist 

sys_nerr 

syslog 

taddr2uaddr 

tempnam 

thread_once 

time 

tmpfile 

tmpnam 

toascii 

tolower 

toupper 

tzset 

uaddr2taddr 

ungetc 

unlocked 

unsetenv 

vfprintf 

vprintf 

vsnprintf 

vsprintf 

vsyslog 

 

 

Telnet Services (3TELD)

inetAccept 

inetBind 

inetClient 

inetClose 

telnetdFlush 

telnetdFree 

telnetdGetTermState 

telnetdInit 

telnetdPasswd 

telnetdRead 

telnetdReadLine 

telnetdSetTermState 

telnetdUser 

telnetdWrite