import ovsos
classobj AdmMem def Setup(parar_reloj,enabled) def __init__(self) str __module__ = 'ovsos' def find_proc(self,pid) def gen_report(self) def get_free_frame(self) def get_swap_block(self,pid,frame,page,flags) def if_page_fault(self,proc) def init_mem_list(self,nr_tot_frames) def mem_page_access(self,pid,type,page) def mem_page_fault(self,pid,type,page) def mem_swap_in(self,pid,page,flags) def mem_swap_out(self,pid,victim_frame,page,flags) def mem_tick(self,_time) def mem_touch(self,proc) def put_free_frame(self, frame) def put_swap_block(self,pid,frame,page,flags) def remove_proc(self,pid) def send_log(self,type,nr,pid) def set_page_and_frame(self,pid,page,frame,flags) def virt_to_phys(self,pid_,page_)
Clase encargada de representar la gestion de la memoria principal
Encargada de inicializar las variables.
devuelve el objeto proc del proceso pid
Genera reporte
devuelve un frame libre, si no hay devuelve -1
rescata un bloque de disco aqui se le asigna tiempo aleatorio para la busqueda del bloque
verifica si hay fallo de pagina
inicializa la memoria fisica, self.list_frame
accede a la pagina 'page' del proceso pid
resuelve el fallo de pagina
realiza swap in
realiza el swap out, solo si el bitmod == 1
tick reloj se encarga de buscar los bloques que estan en las lista list_swap_block
libera al frame frame
pone un bloque en disco, hay que hacer que espere un tiempo aleatorio simulando el tiempo de disco
remueve los frames y las paginas asociadas al proceso identificado por pid
asigna el frame a la pagina y la pagina al frame
devuelve la informacion del frame para el pid_ y la page_
Contiene informacion necesaria para la administracion de la memoria del proceso pid
lista de los frames ( 24 por defecto )
lista para la generacion de reporte, este llevara un registro de todos los eventos producidos.
lista que contiene los bloques a guardar
lista que contiene los bloques a rescatar
lista que contiene los frames que van o vienen de swap
cola donde van ingresando los frames por orden en que fueron solicitados
Copyright © M. Python
All Rights Reserved
Comments to author: monty@flying.circus.comb
Generated: Wed Aug 22, 2007