/** Check system requirements. * * @author Steffen Vogel * @copyright 2014-2015, Institute for Automation of Complex Power Systems, EONERC * This file is part of S2SS. All Rights Reserved. Proprietary and confidential. * Unauthorized copying of this file, via any medium is strictly prohibited. *********************************************************************************/ #ifndef _CHECKS_H_ #define _CHECKS_H_ /** Checks for realtime (PREEMPT_RT) patched kernel. * * See https://rt.wiki.kernel.org * * @retval 0 Kernel is patched. * @reval <>0 Kernel is not patched. */ int check_kernel_rt(); /** Check if kernel command line contains "isolcpus=" option. * * See https://www.kernel.org/doc/Documentation/kernel-parameters.txt * * @retval 0 Kernel has isolated cores. * @reval <>0 Kernel has no isolated cores. */ int check_kernel_cmdline(); /** Check if kernel is version is sufficient * * @retval 0 Kernel version is sufficient. * @reval <>0 Kernel version is not sufficient. */ int check_kernel_version(); /** Checks if a kernel module is loaded * * @param module the name of the module * @retval 0 Module is loaded. * @reval <>0 Module is not loaded. */ int check_kernel_module(char *module); /** Check if program is running with super user (root) privileges. * * * @retval 0 Permissions are sufficient. * @reval <>0 Permissions are not sufficient. */ int check_root(); #endif /* _CHECKS_H_ */