14.2. Virtual Base Libraries¶
GEISA does not specify which virtual runtime to use for the managed-code memory-safe languages.
For Java ®, a GEISA conformant VEE MUST include support for the following class libraries:
java.io
java.lang
java.lang.annotation
java.lang.ref
java.lang.reflect
java.util
org.eclipse.paho.client.mqttv5
com.google.protobuf
Additional libraries may be provided by platforms if desired.
For C and C++, a GEISA conformant VEE MUST provide support for standard libc C
library with the exception of OS-specific or non-sandbox-friendly functions
such as fork()/exec(), process control, and signals.
The following APIs MUST be supported:
FileSystem:
open,fopen,fdopendir,close,fclose,read,write,fread,fwrite,lseek,stat,fstat,readdir,fstatat,fileno,fflush,accessSockets:
send,recv,shutdown,close,socket,bind,listen,connectClocks:
clock_getres,clock_gettime,gettimeofdayProcess:
exitStdIO:
printfPthreads:
pthread_create,pthread_join,pthread_attr_init,pthread_attr_setstacksize,pthread_attr_destroySemaphores:
sem_wait,sem_post,sem_destroyC++ Standard Library