1 /* 2 * Copyright 2008 Haiku, Inc. All rights reserved. 3 * Distributed under the terms of the MIT License. 4 */ 5 #ifndef _SYSTEM_INFO_H 6 #define _SYSTEM_INFO_H 7 8 9 #include <OS.h> 10 11 12 #define B_MEMORY_INFO 'memo' 13 14 struct system_memory_info { 15 uint64 max_memory; 16 uint64 free_memory; 17 uint64 needed_memory; 18 uint64 max_swap_space; 19 uint64 free_swap_space; 20 uint64 block_cache_memory; 21 uint32 page_faults; 22 23 // TODO: add active/inactive page counts, swap in/out, ... 24 }; 25 26 27 #ifdef __cplusplus 28 extern "C" { 29 #endif 30 31 extern status_t get_system_info_etc(int32 id, void *buffer, size_t bufferSize); 32 33 #ifdef __cplusplus 34 } 35 #endif 36 37 #endif /* _SYSTEM_INFO_H */ 38