4 #ifndef RUDIMENTS_SYS_H
5 #define RUDIMENTS_SYS_H
7 #include <rudiments/private/sysincludes.h>
14 class RUDIMENTS_DLLSPEC
sys {
19 static char *getOperatingSystemName();
24 static char *getOperatingSystemRelease();
29 static char *getOperatingSystemVersion();
33 static char *getOperatingSystemArchitecture();
39 static char *getHostName();
43 static bool setHostName(
const char *hostname);
47 static bool setHostName(
const char *hostname,
48 uint64_t hostnamelen);
53 static bool getLoadAverages(
double *oneminuteaverage,
54 double *fiveminuteaverage,
55 double *fifteenminuteaverage);
71 static bool shutDown();
81 static int64_t getMaxCommandLineArgumentLength();
86 static int64_t getMaxProcessesPerUser();
91 static int64_t getMaxHostNameLength();
96 static int64_t getMaxLoginNameLength();
106 static int64_t getClockTicksPerSecond();
111 static int64_t getMaxOpenFilesPerProcess();
115 static int32_t getPageSize();
120 static int64_t getMaxOpenStreamsPerProcess();
135 static int64_t getMaxSymlinkLoops();
140 static int64_t getMaxTerminalDeviceNameLength();
144 static int64_t getMaxTimezoneNameLength();
150 static int64_t getMaxLineLength();
155 static int64_t getPhysicalPageCount();
160 static int64_t getAvailablePhysicalPageCount();
165 static int64_t getProcessorCount();
170 static int64_t getMaxProcessorCount();
174 static int64_t getProcessorsOnline();
179 static int64_t getMaxSupplementalGroupsPerUser();
184 static int64_t getMaxDelayTimerExpirations();
189 static int64_t getMaxRealtimeSignals();
194 static int64_t getMaxSemaphoresPerProcess();
198 static int64_t getMaxSemaphoreValue();
203 static int64_t getMaxSignalQueueLength();
208 static int64_t getMaxTimersPerProcess();
215 static int64_t getSuggestedGroupEntryBufferSize();
222 static int64_t getSuggestedPasswordEntryBufferSize();
226 static int64_t getMinThreadStackSize();
231 static int64_t getMaxThreadsPerProcess();
236 static int64_t getThreadDestructorIterations();
240 static int64_t getMaxThreadKeys();
245 static int64_t getMaxAtExitFunctions();
250 static int64_t getCPUSetSize();
254 static int64_t getMaxPasswordLength();
258 static int64_t getMaxLogNameLength();
262 static int64_t getMaxProcessID();
266 static int64_t sysConf(int32_t name);
268 #include <rudiments/private/sys.h>