Planificador

  • Planificador con clase de procesos background

    Modificar el planificador de Linux para que acepte una nueva clase de procesos (SCHED_BACKGROUND). Los procesos de esta clase solo recibirán el recurso procesador cuando no haya ningún proceso de clase RT o NORMAL. La Planificación dentro de esta clase debe ser orden FIFO.

Memoria

  • Administración de memoria del heap a través de los métodos de asignación BF, WF y FF

    Linux ofrece el system call brk para el manejo del Heap. La asignación del espacio en el heap es administrada por la biblioteca glibc. Se pide implementar un par de de system call (tsomalloc y tsofree) que permitan pedir y liberar memoria del heap. Para ello, se deberá elaborar las estrategias de asignación Best Fit, Worst Fit y First Fit dentro del núcleo. A su vez, se deberá seleccionar la estrategía mediante un parámetro que se le pase al núcleo al iniciar (bootear) el sistema. El espacio de asignación puede ser dentro del heap o por fuera utilizando la función mmap.

  • Auditor del uso de memoria de los procesos

    Implementar un auditor del uso de las regiones de memoria de un proceso. El auditor deberá llevar cuenta de el uso de las regiones de memoria virtual hechas por un proceso.

  • Implementación de un sistema de memoria compartida a nivel de usuario

    El proyecto supone un proceso servidor que exporta una porción de su espacio de direccionamiento virtual para ser accedido por los demás procesos. Los procesos (clientes) accederán al espacio en forma explícita a través de un system call, y mapeando, a su espacio virtual, la memoria exportada por el proceso servidor.

  • Estudio del sistema de ASLR (Address Space Layout Randomization)

    Estudiar la implementación de ASLR en Linux. Que tipo de ataques previene, buscar debilidades y eventualmente proponer mejoras. Comentar que soporte precisa del compilador y las posibles pérdidas de eficiencia.

Sistema de archivos

  • Implementación de un sistema de archivos reducido tipo Unix

    Presentado un sistema de archivos bastante reducido, se desea lograr una implementación del mismo para Linux.

  • Auditor de acceso a archivos por parte de los procesos

    Construir un módulo a nivel del núcleo un auditor de los accesos a los archivos por parte de los procesos.

  • Estudio del sistema de archivos JFFS

    Estudiar la implementación y propiedades del sistema de archivos JFFS (Journalling Flash File System) y compararlo con Ext3 / Ext4

  • Estudio del sistema de archivos BTFS

    Estudiar la implementación y propiedades del sistema de archivos BTFS (b-tree file system) y compararlo con Ext3 / Ext4

Última modificación: domingo, 16 de octubre de 2016, 19:50