1#include <stdio.h>
2#include <barrelfish/barrelfish.h>
3
4static int freemem(void)
5{
6	struct mem_binding *mc = get_mem_client();
7	assert(mc != NULL);
8	errval_t err;
9	genpaddr_t available, total;
10
11	err = ram_available(&available, &total);
12	if(err_is_fail(err)) {
13		DEBUG_ERR(err, "available");
14		return EXIT_FAILURE;
15	}
16
17	printf("Free memory: %"PRIu32" MB (%" PRIu32 " bytes)\n",((uint32_t)available)/1024/1024, (uint32_t)available);
18	printf("Total memory: %"PRIu32" MB (%" PRIu32 " bytes)\n",((uint32_t)total)/1024/1024, (uint32_t)total);
19
20	return EXIT_SUCCESS;
21}
22
23int main(int argc, char *argv[])
24{
25  freemem();
26  printf("freemem done!\n");
27  return EXIT_SUCCESS;
28}
29