1 /* 2 * Copyright 2004-2008, Axel Dörfler, axeld@pinc-software.de. 3 * Distributed under the terms of the MIT License. 4 */ 5 #ifndef _KERNEL_SYSTEM_INFO_H 6 #define _KERNEL_SYSTEM_INFO_H 7 8 9 #include <OS.h> 10 11 12 struct kernel_args; 13 14 15 #ifdef __cplusplus 16 extern "C" { 17 #endif 18 19 20 status_t system_info_init(struct kernel_args *args); 21 status_t system_notifications_init(); 22 const char* get_haiku_revision(void); 23 24 status_t _user_get_system_info(system_info *userInfo); 25 status_t _user_get_cpu_info(uint32 firstCPU, uint32 cpuCount, cpu_info* info); 26 status_t _user_get_cpu_topology_info(cpu_topology_node_info* topologyInfos, 27 uint32* topologyInfoCount); 28 29 status_t _user_get_system_info_etc(int32 id, void *buffer, 30 size_t bufferSize); 31 32 status_t _user_start_watching_system(int32 object, uint32 flags, port_id port, 33 int32 token); 34 status_t _user_stop_watching_system(int32 object, uint32 flags, port_id port, 35 int32 token); 36 37 38 #ifdef __cplusplus 39 } 40 #endif 41 42 43 #endif /* _KERNEL_SYSTEM_INFO_H */ 44