#include #include #include int main(void) { void *p; int size = 2 * 1023 * 1024 * 1024; // just under 2^31 (2GB) fprintf(stderr, "Attempting too-big malloc()...\n"); p = malloc(size); // way too big! if (p) fprintf(stderr, "huge malloc() succeeded??\n"); fprintf(stderr, "Attempting too-big mmap()...\n"); p = mmap( 0, size, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, -1, 0 ); if (-1 != (int)p) fprintf(stderr, "huge mmap() succeeded??\n"); return 0; }