|
Gestor de Memoria - Práctica 3 OS 1.0
Simulador de gestión de memoria con algoritmos de Primer Hueco y Siguiente Hueco.
|
#include "ficheros.h"#include <stdio.h>#include <stdlib.h>#include <string.h>#include <fcntl.h>#include <unistd.h>#include "../../lib/file_utils.h"
Ir al código fuente de este archivo.
defines | |
| #define | SIZE_BUFFER_LECTURA 4096 |
Funciones | |
| int | cargar_procesos (const char *ruta, Proceso procesos[]) |
| Carga los procesos desde un archivo de texto. | |
| void | guardar_estado (const char *ruta, Memoria *m, int instante) |
| Guarda el estado actual de la memoria en un archivo de log. | |
| void | limpiar_log (const char *ruta) |
| Limpia el contenido de un archivo de log. | |
| #define SIZE_BUFFER_LECTURA 4096 |
Definición en la línea 9 del archivo ficheros.c.
Referenciado por cargar_procesos().
| int cargar_procesos | ( | const char * | ruta, |
| Proceso | procesos[] ) |
Carga los procesos desde un archivo de texto.
Lee el archivo línea por línea y parsea cada proceso con el formato: <nombre> <t_llegada> <mem_requerida> <t_ejecucion>
| [in] | ruta | Ruta del archivo de entrada |
| [out] | procesos | Array donde se almacenarán los procesos cargados |
Definición en la línea 11 del archivo ficheros.c.
Hace referencia a Proceso::en_memoria, Proceso::finalizado, MAX_PROCESOS, Proceso::mem_requerida, read_all(), SIZE_BUFFER_LECTURA, Proceso::t_ejecucion, Proceso::t_llegada y Proceso::t_restante.
Referenciado por main(), run_gui() y test_sim().


| void guardar_estado | ( | const char * | ruta, |
| Memoria * | m, | ||
| int | instante ) |
Guarda el estado actual de la memoria en un archivo de log.
Escribe una línea con formato: <instante>[dir1, nombre1, tam1] [dir2, nombre2, tam2] ...
| [in] | ruta | Ruta del archivo de salida (se crea si no existe) |
| [in] | m | Puntero a la estructura de memoria a guardar |
| [in] | instante | Instante de tiempo actual de la simulación |
Definición en la línea 64 del archivo ficheros.c.
Hace referencia a Memoria::cant_particiones, Particion::dir_inicio, Particion::nombre_proceso, Memoria::particiones, Particion::tamano y write_all().
Referenciado por avanzar_tiempo().


| void limpiar_log | ( | const char * | ruta | ) |
Limpia el contenido de un archivo de log.
Abre el archivo con O_TRUNC para borrar su contenido. Si no existe, lo crea vacío.
| [in] | ruta | Ruta del archivo a limpiar |
Definición en la línea 94 del archivo ficheros.c.
Referenciado por run_gui() y test_sim().
