Accesos directos a las distintas zonas del curso

Ir a los contenidos

Ir a menú navegación principal

Ir a menú pie de página

DISEÑO Y ADMINISTRACIÓN DE SISTEMAS OPERATIVOS

Curso 2017/2018 Subject code71013012

DISEÑO Y ADMINISTRACIÓN DE SISTEMAS OPERATIVOS

RESULTADOS DE APRENDIZAJE

El objetivo básico de la asignatura Diseño y Administración de los Sistemas Operativos es dar una visión, lo más completa y clara posible, de las estrategias fundamentales para realizar el diseño y la administración de los sistemas operativos. Como resultado del estudio y aprendizaje de los contenidos de esta asignatura el estudiante será capaz de:

- Conocer los elementos y objetivos que se deben considerar en el diseño de un sistema operativo.

- Entender y conocer los diferentes aspectos que se deben tener en cuenta en la  administración de un sistema operativo.

- Conocer en profundidad los aspectos más importantes (estructuras de datos y algoritmos) del núcleo de UNIX como son: gestión y control de procesos de procesos, gestión de memoria, sistemas de archivos y gestión de dispositivos de E/S.

- Ser capaz de manejar las órdenes del shell y programar en lenguaje C aplicando las llamadas al sistema básicas bajo plataforma UNIX (Linux).

TEMA 1: DISEÑO DEL SISTEMA OPERATIVO UNIX

  • RA1.1 Descripción de la arquitectura UNIX.
  • RA1.2 Principales servicios prestados por el núcleo.
  • RA1.3 Cuáles son los dos modos de ejecución un UNIX: modo usuario y modo núcleo.
  • RA1.4 Clasificación de los tipos de procesos en función de modo de ejecución.
  • RA1.5 Introducción a las interrupciones y las excepciones, dos de los principales eventos atendidos en modo núcleo.
  • RA1.6 Descripción de la estructura del sistema operativo UNIX.
  • RA1.7 Descripción de la interfaz de usuario para el sistema de ficheros.
  • RA1.8 Principales funciones de la librería estándar de funciones de E/S de C.
  • RA1.9 Término proceso demonio

TEMA 2: ADMINISTRACIÓN BÁSICA DEL SISTEMA OPERATIVO UNIX

  • RA2.1 Conceptos de consola virtual e intérpretes de comandos (shell).
  • RA2.2 Comandos de UNIX más comunes: para manejo de directorios y ficheros, ayuda, edición de ficheros, y para salir del sistema.
  • RA2.3 Gestión de usuarios en UNIX.
  • RA2.4 Análisis de la configuración de los permisos de acceso a un fichero.
  • RA2.5 Consideraciones generales sobre los intérpretes de comandos: uso de caracteres comodines, redirección de la entrada y salida, encadenamiento de órdenes, asignación de alias a comandos, shell scripts, variables del intérprete de comandos, y variables de entorno.
  • RA2.6 Descripción del control de tareas.

TEMA 3: ESTRUCTURAS DE DATOS DE CONTROL DE PROCESOS EN UNIX

  • RA3.1 Descripción del espacio de direcciones virtuales asociado a un proceso,
  • RA3.2 Identificadores y las estructuras de datos del núcleo asociadas a un proceso.
  • RA3.3 Análisis de los diferentes elementos que constituyen el contexto de un proceso.
  • RA3.4 Tratamiento de las interrupciones por parte del núcleo
  • RA3.5 Interfaz de las llamadas al sistema.
  • RA3.6 Conocimiento y descripción de los posibles estados de un proceso

TEMA 4: ALGORITMOS DE CONTROL DE PROCESOS EN UNIX

  • RA4.1 Cómo se produce la creación de procesos mediante la función fork.
  • RA4.2 Qué son las señales.
  • RA4.3 Descripción de los algoritmos dormir (sleep()) y despertar (wakeup()) a un proceso.
  • RA4.4 Descripción de la terminación de procesos mediante la función exit.
  • RA4.5 Descripción del algoritmo esperar la terminación de un proceso (wait), que permite sincronizar la ejecución de un proceso con la terminación de algunos de sus procesos hijos.
  • RA4.6 Invocación de otros programas.
  • RA4.7 Funciones de librería.
  • RA4.8 Funcionamiento del algoritmo exec().
  • RA4.9 Qué es una hebra y para que sirve.

TEMA 5: PLANIFICACIÓN DE PROCESOS EN UNIX

  • RA5.1 Cómo se tratan las interrupciones del reloj.  
  • RA5.2 Planificación tradicional en UNIX, tareas basadas en consideraciones temporales, tales como callouts y alarmas, así como el estudio de algunas llamadas al sistema asociadas con el tiempo.
  • RA5.3 Análisis en detalle del Planificador del SVR4.
  • RA5.4 Análisis del Planificador del Solaris 2.x.

TEMA 6: COMUNICACIÓN Y SINCRONIZACIÓN DE PROCESOS EN UNIX

  • RA6.1 Conocimiento de los servicios IPC (interprocess comunication) universales: señales y tuberías, y seguimiento de procesos.
  • RA6.2 Conocimiento de los mecanismos IPC del System V: semáforos, colas de mensajes y memoria compartida.
  • RA6.3 Conocimiento de los principales mecanismos de sincronización tradicionales.
  • RA6.4 Descripción del seguimiento de procesos.
  • RA6.5 Conocimiento de los mecanismos de sincronización modernos de UNIX.

TEMA 7: GESTIÓN DE MEMORIA EN UNIX

  • RA7.1 Cuál es la política de demanda de páginas en el SVR3.
  • RA7.2 Cuáles son las estructuras de datos del núcleo asociadas a la gestión de memoria mediante demanda de páginas.
  • RA7.3 Análisis de la realización de la llamada al sistema fork en un sistema con paginación.
  • RA7.4 Análisis de la realización de la llamada al sistema exec en un sistema de paginación.
  • RA7.5 Transferencia de páginas de memoria principal en el área de intercambio
  • RA7.6 Tratamiento de los fallos de página
  • RA7.7 Cómo se realiza el cambio de modo de un proceso desde el punto de vista de la gestión de memoria.
  • RA7.8 Localización y estructura en memoria del área U de un proceso.

TEMA 8: SISTEMAS DE ARCHIVOS EN UNIX

  • RA8.1 Qué es un sistema de ficheros y para qué sirve.
  • RA8.2 Cómo se construye la estructura jerárquica de ficheros (proceso de montaje).
  • RA8.3 Qué es un enlace simbólico y qué tipos de enlaces hay.
  • RA8.4 Cómo se acelera el acceso a los ficheros mediante la caché de bufers de bloques y cuales son las ventajas e inconvenientes de esta técnica.
  • RA8.5 La  interfaz nodo-V/SVF que permite al núcleo gestionar distintos sistemas de archivos.
  • RA8.6 El sistema de ficheros System V file systems s5fs.
  • RA8.7 Cómo se arreglan los errores en un sistema de fichero.
  • RA8.8 El sistema de ficheros FFS o UFS.
  • RA8.9 Algunas de las características de los sistemas de archivos modernos.

TEMA 9: GESTIÓN ENTRADA/SALIDA EN UNIX

  • RA9.1 Qué es la entrada/salida y como se gestiona.
  • RA9.2 Para que sirven las interrupciones de dispositivo.
  • RA9.3 Cuál es el cometido de un driver.
  • RA9.4 Cómo se organiza el subsistema de entradas y salidas.
  • RA9.5 Cómo los procesos se comunican con los drivers a través de streams.