- Jan 17, 2013
-
-
Avi Kivity authored
Initial memory is physical; the mmu converts it to virtual addresses, and then it can be added to the memory pool. Right now there is not much difference, but the 1:1 mapping is moving soon.
-
- Jan 16, 2013
-
-
Christoph Hellwig authored
-
- Jan 03, 2013
-
-
Avi Kivity authored
-
Avi Kivity authored
Currently the free memory pool consists of a statically allocated buffer. Replace it with a dynamic query of the amount of memory we actually booted with. (currently limited to 1GB since we haven't mapped anything else yet).
-
- Jan 01, 2013
-
-
Avi Kivity authored
We currently leak a pool page, because we cannot unlink the free objects belonging to the page from the pool's free list. Fix by having a per-page free list (containing objects only from that page). The pages are themselves placed on a doubly linked list. When we identify an empty page, we can now easily drop it since the local free list only point within the page.
-
Avi Kivity authored
Must be large enough to hold a free_object.
-
- Dec 26, 2012
-
-
Avi Kivity authored
This implementation stores small objects in pools of similar-sized objects, while large objects are allocated using a first-fit algorithm. There is also a specialized interface for allocating aligned pages.
-