t_param_plat leer_archivo_plataforma_config() { t_config* config; t_param_plat param; log_in_disk_plat(LOG_LEVEL_TRACE, "comienzo lectura archivo de configuracion plataforma en el %s ", PATH_CONFIG_PLATAFORMA); config = config_create(PATH_CONFIG_PLATAFORMA); param.PUERTO = config_get_int_value(config, "PUERTO"); param.SEGUNDOS_ESPERA = config_get_double_value(config, "SEGUNDOS_ESPERA"); param.CUANTUM = config_get_int_value(config, "CUANTUM"); log_in_disk_plat(LOG_LEVEL_TRACE, "Parametros planificador puerto %d segundos de planificacions %.2f cuantum %d ", param.PUERTO, param.SEGUNDOS_ESPERA, param.CUANTUM); //param.planificador_nivel = config_get_array_value(config, "planDeNiveles"); //solo entro en el loop si el mivel de log es LOG_LEVEL_TRACE // if (LOG_LEVEL_TRACE == 0) { // int i = 0; // while (param.planificador_nivel[i] != '\0') { // log_in_disk_plat(LOG_LEVEL_TRACE, "Niveles de planificador %s ", // param.planificador_nivel[i]); // i++; // } // } return param; }
void test_read_config() { t_config* config = config_create(PATH_CONFIG); CU_ASSERT_EQUAL(config_keys_amount(config), KEYS_AMOUNT); CU_ASSERT_TRUE(config_has_property(config, "IP")); CU_ASSERT_STRING_EQUAL(config_get_string_value(config, "IP"), "127.0.0.1"); CU_ASSERT_TRUE(config_has_property(config, "PORT")); CU_ASSERT_EQUAL(config_get_int_value(config, "PORT"), 8080); CU_ASSERT_TRUE(config_has_property(config, "LOAD")); CU_ASSERT_EQUAL(config_get_double_value(config, "LOAD"), 0.5); config_destroy(config); }
tipoConfigMemoria* cargarArchivoDeConfiguracionDeMemoria( char* rutaDelArchivoDeConfiguracion) { t_config* archivoCfg = config_create(rutaDelArchivoDeConfiguracion); tipoConfigMemoria* cfg = crearConfigMemoria(); validarErrorYAbortar( config_has_property(archivoCfg, PUERTO_ESCUCHA) && config_has_property(archivoCfg, IP_SWAP) && config_has_property(archivoCfg, PUERTO_SWAP) && config_has_property(archivoCfg, MAXIMO_MARCOS_POR_PROCESO) && config_has_property(archivoCfg, CANTIDAD_MARCOS) && config_has_property(archivoCfg, TAMANIO_MARCO) && config_has_property(archivoCfg, ENTRADAS_TLB) && config_has_property(archivoCfg, TLB_HABILITADA) && config_has_property(archivoCfg, RETARDO_MEMORIA) && config_has_property(archivoCfg, ALGORITMO_RAM), "Las claves del archivo de configuracion no coinciden con las que requiere el Administrador de Memoria."); cfg->puertoDeEscucha = config_get_int_value(archivoCfg, PUERTO_ESCUCHA); cfg->ipSWAP = string_duplicate( config_get_string_value(archivoCfg, IP_SWAP)); cfg->puertoSWAP = config_get_int_value(archivoCfg, PUERTO_SWAP); cfg->maximoDeMarcosPorProceso = config_get_int_value(archivoCfg, MAXIMO_MARCOS_POR_PROCESO); cfg->cantidadDeMarcos = config_get_int_value(archivoCfg, CANTIDAD_MARCOS); cfg->tamanioDeMarco = config_get_int_value(archivoCfg, TAMANIO_MARCO); cfg->entradasDeTLB = config_get_int_value(archivoCfg, ENTRADAS_TLB); cfg->TLBHabilitada = string_duplicate( config_get_string_value(archivoCfg, TLB_HABILITADA)); cfg->retardoDeMemoria = config_get_double_value(archivoCfg, RETARDO_MEMORIA); cfg->algoritmoRAM = string_duplicate( config_get_string_value(archivoCfg, ALGORITMO_RAM)); config_destroy(archivoCfg); return cfg; }