diff --git a/proyectos/1/FloresEvelyn-VeraMarisol/Proyecto1_FM_VM.pdf b/proyectos/1/FloresEvelyn-VeraMarisol/Proyecto1_FM_VM.pdf new file mode 100644 index 00000000..ac4d1c62 Binary files /dev/null and b/proyectos/1/FloresEvelyn-VeraMarisol/Proyecto1_FM_VM.pdf differ diff --git a/proyectos/1/FloresEvelyn-VeraMarisol/Proyecto1_FM_VM.py b/proyectos/1/FloresEvelyn-VeraMarisol/Proyecto1_FM_VM.py new file mode 100644 index 00000000..d39b4d13 --- /dev/null +++ b/proyectos/1/FloresEvelyn-VeraMarisol/Proyecto1_FM_VM.py @@ -0,0 +1,176 @@ +""" +Created on Mon May 19 + +@author: Flores Melquiades Evelyn Jasmin + Vera Garmendia Miriam Marisol + +""" +import os +import struct +import threading + +TAMANO_CLUSTER = 512 +TAM_ENTRADA = 64 +# Cluster +DIRECTORIO_INICIO = TAMANO_CLUSTER +# 4 sectores +DIRECTORIO_TAMANO = 4 * TAMANO_CLUSTER +# Tomando en cuenta que el tamaño total es 1440KB +MAXIMO_CLUSTERS = 1440 // 4 +#Semaforo para sincronizar la lectura de archivos +semaforo = threading.Semaphore(value=1) +#Sincronizar hilos +lock = threading.Lock() + +def ENTERO(DIRECTORIO_INICIO, TAM_ENTRADA): + with open(fiunamfs_img, "rb") as f: + f.seek(DIRECTORIO_INICIO) + DATA = f.read(TAM_ENTRADA) + E = struct.unpack("= cluster_libre: + cluster_libre = cluster_ini + 1 + print(f"Clouster libre: {cluster_libre}") + + if posicion_entrada_libre is None: + raise Exception("No hay espaciosuficiente") + else: + print(f"Entrada libre en: {posicion_entrada_libre}, Cluster libre para el archivo: {cluster_libre}") + + with open(archivo_origen, 'rb') as archivo_origen_f: + with look: + f.seek(cluster_libre * TAMANO_CLUSTER) + f.write(archivo_origen_f.read()) + + f.seek(posicion_entrada_libre) + f.write(b'-' + nombre_destino.ljust(15).encode('ascii')) + f.write(struct.pack('