Advertisement
Guest User

Untitled

a guest
Jan 27th, 2014
29
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.51 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <sys/resource.h>
  3. #include <sys/mman.h>
  4. #include <unistd.h>
  5. #include <stdint.h>
  6. #include <x86intrin.h>
  7.  
  8. void * alloc_page(uint64_t flags) {
  9.   return mmap(NULL, 4096, PROT_WRITE | PROT_READ, MAP_PRIVATE | MAP_ANONYMOUS | flags, 0, 0);
  10.  
  11. }
  12. uint64_t get_vmem_limit(void) {
  13.   void *  p = alloc_page(0);munmap(p, 4096);
  14.   return (p - sbrk(0));
  15. }
  16.  
  17. int main(void) {
  18.   uint64_t lim = get_vmem_limit();
  19.   fprintf(stderr, "limit: %luMB - its %ubit\n", lim/(1024*1024), __bsrq(lim));
  20. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement