From 2a575545c0e5f65f908ef4a491917ac0c2bd8a04 Mon Sep 17 00:00:00 2001 From: Thadeu Lima de Souza Cascardo Date: Fri, 21 May 2010 08:46:22 -0400 Subject: [PATCH] Memory, flags and kmemcache. --- 09memory/memory | 45 +++++++++++++++++++++++++++++++++++++++------ 1 file changed, 39 insertions(+), 6 deletions(-) diff --git a/09memory/memory b/09memory/memory index 3d79bcb..9a04ca2 100644 --- a/09memory/memory +++ b/09memory/memory @@ -1,14 +1,47 @@ -# kmalloc +%Memory +%Thadeu Cascardo -* flags +# Memory -# slab +* Real (Physical) Address +* Virtual Address +* Bus Address +* Linear Address -* lookaside cache +# Memory Zones + +* Normal Zone +* DMA Zone +* High Memory Zone + +# Flags + +* GFP\\_KERNEL +* GFP\\_ATOMIC +* GFP\\_USER +* GFP\\_HIGHUSER +* GFP\\_NOFS +* GFP\\_NOIO +* \\_\\_GFP\\_ZERO +* \\_\\_GFP\\_DMA +* \\_\\_GFP\\_HIGHMEM +* \\_\\_GFP\\_NOWARN +* \\_\\_GFP\\_REPEAT +* \\_\\_GFP\\_NOFAIL +* \\_\\_GFP\\_NORETRY + +# Slab (lookaside cache) + +* include linux/slab.h +* struct kmem\\_cache +* kmem\\_cache\\_create(name, size, offset, flags, constructor); +* kmem\\_cache\\_destroy(kmc) +* kmem\\_cache\\_alloc(kmc, gfp) +* kmem\\_cache\\_free(kmc, ptr) # vmalloc -# gfp +* Virtual memory with many pages allocated not linearly in the physical space -* get\\_free\\_page +# GFP -- 2.20.1