У нас вы можете посмотреть бесплатно Sistemasoperativos - 2026-01-26 или скачать в максимальном доступном качестве, видео которое было загружено на ютуб. Для загрузки выберите вариант из формы ниже:
Если кнопки скачивания не
загрузились
НАЖМИТЕ ЗДЕСЬ или обновите страницу
Если возникают проблемы со скачиванием видео, пожалуйста напишите в поддержку по адресу внизу
страницы.
Спасибо за использование сервиса ClipSaver.ru
📅 Fechas Importantes y Examen Próxima clase (Simulacro de Examen): El profesor indica que la clase siguiente (correspondiente al día 27 de enero) se dedicará a explicar el examen y a realizar un simulacro de examen para que veáis el tipo de preguntas. Examen Final: Menciona que el examen oficial es el lunes siguiente (según la fecha del video, sería el 2 de febrero). Entrega de la Práctica: La fecha límite para entregar la práctica final es el día del examen (2 de febrero) a las 23:59. Se debe subir al campus virtual. 💻 La Práctica Final: "Mi Servidor Web" La explicación detallada de la práctica comienza en el minuto. El objetivo es crear un programa en C llamado mi_servidor_web que simule un gestor de archivos. Funcionamiento General: El programa debe mostrar un prompt (p.ej. primero$) y quedarse en un bucle infinito esperando órdenes hasta que se escriba exit. Restricción Clave: No se pueden utilizar comandos del sistema (como system("mkdir...") o hacer fork + exec de rm). Debes implementar la funcionalidad usando las llamadas al sistema explicadas en el curso (mkdir, unlink, open, read, write, etc.). Las 6 Órdenes a Implementar: El profesor divide las órdenes en tres grupos según cómo deben gestionarse a nivel de procesos/hilos: Hijos Síncronos (El padre espera): addir [nombre]: Crea un directorio. rmdir [nombre]: Borra un directorio. Implementación: El proceso padre hace un fork, el hijo ejecuta la tarea y el padre hace un wait para esperar a que termine antes de pedir la siguiente orden. Hijos Asíncronos (El padre NO espera - Background): add_archivo [nombre_origen]: Copia un archivo externo (de tu ordenador) al directorio del servidor. archivo_ceros [nombre]: Crea un archivo lleno de ceros con un tamaño específico. Implementación: El padre hace fork, el hijo trabaja en segundo plano y el padre inmediatamente vuelve a pedir otra orden (no se bloquea). Nota: Debes gestionar las señales (SIGCHLD) para evitar procesos "zombies" cuando estos hijos terminen. Hebras / Threads (Concurrencia ligera): rm [nombre]: Borra un archivo. get_archivo [nombre]: Copia un archivo del servidor hacia fuera. Implementación: Se debe crear un hilo (pthread_create) para realizar la tarea sin bloquear el programa principal. 📚 Resumen Teórico (Unidad 6) Aunque tu prioridad es la práctica, aquí tienes los conceptos clave explicados que necesitarás para el examen y para programar la práctica: 1. Gestión de Entrada/Salida (E/S) Técnicas de comunicación: E/S Programada: Ineficiente. El procesador pregunta constantemente al dispositivo si ha terminado ("espera activa"). Interrupciones: Mejor. El procesador manda la orden y sigue trabajando. El dispositivo "interrumpe" (avisa) cuando acaba. DMA (Acceso Directo a Memoria): La más eficiente y la usada hoy en día. Una controladora especial mueve los datos del disco a la RAM directamente sin molestar a la CPU. 2. Sistema de Archivos (File System) Inodo: Es la "ficha" de cada archivo. Contiene los metadatos (dueño, permisos, tamaño) y apunta a dónde están los datos reales en el disco. Punteros Indirectos: Se explica cómo un inodo puede gestionar archivos gigantes usando punteros que apuntan a otros bloques de punteros (simples, dobles, triples). Tablas del Sistema: El SO mantiene tres tablas para gestionar archivos abiertos: la de descriptores (por proceso), la de archivos abiertos (global) y la de inodos en memoria. 3. Llamadas al Sistema (Para la práctica) Se explican y ponen ejemplos de las funciones que debes usar en la práctica: open (abrir), close (cerrar), read/write (leer/escribir), lseek (moverse dentro del archivo) y unlink (borrar).