Tuesday, October 27, 2009

Manejador de Cache del procesador

Estube trabajando en alguna manera de manejar de forma mas eficiente el Cache del procesador(L1,L2 Y L3) . Para esto he escrito dos procedimientos en la unidad Arch.pas para marcar como cacheable o no-cacheable una pagina. En un primer momento se cachea solo el codigo y datos del kernel y de la aplicacion de usuario, queda en el usuario definir otras posibles regiones de cacheo.
Si es posible saber cuales regiones de memoria son las mas accedidas , sera posible optimizar el uso del cache del micro.
Ya he subido el codigo al SVN , pero todavia me faltan las syscalls para el usuario que implementare en la unidad Memory.pas
Saludos .
Matias E. Vara

Wednesday, August 26, 2009

Compilando Toro sobre Linux II

He subido al SVN las modificaciones al programa Build para dar soporte a ejecutables en el formato ELF y poder crear la imagen booteable desde Linux. Build toma el archivo ejecutable(ya sea PECOFF o ELF) y lo convierte al fichero ToroImage.img.
Los pasos para la compilacion sobre Linux es :
1 - Hacer un UPDATE sobre la carpeta SVN donde se encuentre el codigo de TORO.
2 - Ejecutar en la terminal "sh compile.sh"
3 - Si la compilacion fue correcta el resultado es el fichero ToroImage.img para testear el sistema en una maquina virtual como QEMU. Yo he realizado la compilacion usando fpc 2.2.4 for x86-64 y funciono .
Tal vez sea necesario editar el archivo compile.sh para colocar las rutas a los ejecutables como build y fpc de forma correcta .
Cualquier opinion estoy a la espera .

Saludos .
Matias Vara.

Sunday, August 23, 2009

Compilando TORO sobre Linux .

He subido al SVN las modificaciones necesarias para compilar TORO sobre Linux , usando FPC 2.2.4 for x86_64 . Al correr compile.sh se compila el nucleo y se genera un ELF , todavia me encuentro trabajando sobre el Build para que pase del formato ELF a la imagen, tal como lo hace para ficheros PECOFF64.
Saludos. Matias Vara

Monday, August 10, 2009

Primera implementacion del TCP-Stack con Multiplex IO al nivel del kernel

Como dice en el titulo , he subido la primera version de Stack TCP con sus Apis reescritas de forma de implementacion acceso a los socketes no-bloqueant y reducir el numero de cambios de contextos de forma drastica . Prometo liberar los Manuales de compilacion y programacion pronto.
Saludos.
Matias E. Vara