You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
21 lines
676 B
21 lines
676 B
#include <unistd.h>
|
|
#include <stdbool.h>
|
|
|
|
#ifndef __PAGINGTEST_H__
|
|
#define __PAGINGTEST_H__
|
|
#define USEC_PER_SEC 1000000ULL
|
|
#define mincore_vec_len(size) (((size) + sysconf(_SC_PAGE_SIZE) - 1) / sysconf(_SC_PAGE_SIZE))
|
|
#define ARRAY_SIZE(a) (sizeof(a) / sizeof(*(a)))
|
|
|
|
//Helpers
|
|
int create_tmp_file(char *filename, off_t size);
|
|
unsigned char *alloc_mincore_vec(size_t size);
|
|
bool check_caching(void *buf, unsigned char *vec, size_t size, bool is_cached);
|
|
|
|
//Tests
|
|
int mmap_test(int test_runs, unsigned long long alloc_size);
|
|
int pageinout_test(int test_runs, bool cache, unsigned long long file_size);
|
|
int thrashing_test(int test_runs, bool cache);
|
|
|
|
#endif //__PAGINGTEST_H__
|