Index: kernel/generic/src/proc/task.c
===================================================================
--- kernel/generic/src/proc/task.c	(revision 33adc6cee65f3348f47bb71ac5a3982b0572e68e)
+++ kernel/generic/src/proc/task.c	(revision e701eb11c1bab3bbb6c9ec77eae0aff69273dfdf)
@@ -75,4 +75,6 @@
 static task_id_t task_counter = 0;
 
+static slab_cache_t *task_slab;
+
 /* Forward declarations. */
 static void task_kill_internal(task_t *);
@@ -83,4 +85,6 @@
 	TASK = NULL;
 	avltree_create(&tasks_tree);
+	task_slab = slab_cache_create("task_slab", sizeof(task_t), 0, NULL,
+	    NULL, 0);
 }
 
@@ -142,5 +146,5 @@
 	int i;
 	
-	ta = (task_t *) malloc(sizeof(task_t), 0);
+	ta = (task_t *) slab_alloc(task_slab, 0);
 
 	task_create_arch(ta);
@@ -230,5 +234,5 @@
 		as_destroy(t->as);
 	
-	free(t);
+	slab_free(task_slab, t);
 	TASK = NULL;
 }
