Preventing Linux kernel from taking allocated memory from a process -


i want allocate large portion of memory using malloc() indefinite amount of time. may touch memory long time let 1 minute. how prevent kernel taking memory away process?

i can not re allocate memory because being used device outside of kernels control.

in linux, can allocate memory in user space, such malloc or mmap, pass down kernel, , in kernel, obtain references memory get_user_pages. prevent pages going away, , allow them accessed address space struct page * references (and requiring kmap , kunmap if config_highmem in effect). these pages not contiguous physical memory, however, , may not in suitable range dma.

memory accessed devices allocated in kernel (e.g. using kmalloc gfp_dma. allocations larger page, kmalloc finds consecutive physical pages, too. once obtained, kmalloc-ed memory can mapped user space remap_pfn_range.


Comments

Popular posts from this blog

commonjs - How to write a typescript definition file for a node module that exports a function? -

openid - Okta: Failed to get authorization code through API call -

ios - Change Storyboard View using Seague -