kalloc.c File Reference

#include "routix/system.h"
#include <routix/kstdio.h>
#include "routix/kalloc.h"
#include "routix/task.h"
#include "error.h"
#include "routix/debug.h"
#include "routix/paging.h"
#include "routix/misc.h"

Go to the source code of this file.

Functions

Variables


Function Documentation

addr_t get_free_page void   ) 
 

Entrega una página de memoria.

Returns:
addr_t dirección de la página

Definition at line 66 of file kalloc.c.

Referenced by kmalloc_page(), and umalloc_page().

void inicializacion_kmalloc int  memoria_fisica,
int  memoria_kernel
 

Bien, supongamos ahora que determinamos la cantidad de memoria del sistema en función de esa cantidad armamos el área de stack necesaria para pushear bloques de 4Kb (memoria física libre)

Definition at line 100 of file kalloc.c.

Referenced by kmain().

int kfree_page addr_t  direccion  ) 
 

Retorna al stack una página que el kernel no utiliza.

Definition at line 47 of file kalloc.c.

Referenced by inicializacion_kmalloc(), init_new_task(), kunmapmem(), sys_exec(), sys_execve(), sys_exit_mm(), sys_waitpid(), ufree_page(), and umalloc_page().

addr_t kmalloc_page void   ) 
 

Definition at line 58 of file kalloc.c.

Referenced by alloc_block(), alloc_header(), inicializarInterrupciones(), init_all_memory(), init_new_task(), kmain(), kmapmem(), levantar_fat(), make_pdt(), morecore(), and start_scheduler().

int kmalloc_page_start addr_t inicio,
addr_t fin
 

Inicializa el stack que almacena las páginas libres.

Definition at line 38 of file kalloc.c.

Referenced by inicializacion_kmalloc().

dword kmem_free void   )  [inline]
 

Retorna la cantidad de poáginas disponibles.

Definition at line 139 of file kalloc.c.

Referenced by sys_exec(), sys_execve(), sys_free_mem(), and sys_show().

void print_free_pages word  cant  ) 
 

Imprime la ubicación de páginas libres.

Parameters:
Cantidad de páginas de las cuales se desea conocer su dirección
Note:
Utilizada para propósitos de debug

Definition at line 87 of file kalloc.c.

struct user_page* ufree_page struct user_page aux  ) 
 

Libera una estructura descriptora de pagina de tarea (solo si no esta siendo utilizada por otro proceso) incluyendo al nodo que contiene su direccion

Definition at line 186 of file kalloc.c.

Referenced by sys_exit_mm().

struct user_page* umalloc_page word  flags,
addr_t  vdir,
addr_t  cr3
 

Pide una pagina, completa la estructura user_page, y la mapea en la dirección lógica.

Parameters:
flags: tipo de pagina
vdir: dirección lógica donde se ubicará la página
cr3: dirección del directorio de páginas

Definition at line 153 of file kalloc.c.

Referenced by sys_exec(), sys_execve(), sys_fork(), and sys_malloc_page().


Variable Documentation

addr_t * _fin
 

Definition at line 19 of file kalloc.c.

addr_t* _inicio
 

Definition at line 19 of file kalloc.c.

addr_t * _sp
 

Definition at line 19 of file kalloc.c.


Generated on Sun May 30 18:38:36 2004 for Routix OS by doxygen 1.3.6