Objetivos
Conocer los objetivos y funciones del sistema operativo.
Identificar diferentes tipos de sistemas operativos según su utilidad: sistemas multiprogramados de propósito general, de tiempo-real.
Manejar los servicios que ofrece el sistema operativo vía llamadas al sistema, intérpretes de órdenes o programas de utilidad.
Comprender el diseño del diagrama estados por los que pueden pasar los procesos o hilos, y cuales son los eventos que provocan las transiciones entre estados, y como se llevan a cabo esas transiciones.
Describir diferentes formas de asignar memoria a los procesos y al propio sistema operativo, con especial atención a los sistemas paginados y segmentados que utilizan gestión de memoria virtual.
Conocer cuales son las funciones principales del subsistema de entradas/salidas.
Manejar servicios que suministra el sistema operativo, relacionados con el almacenaje persistente, en especial, sobre archivos.
Enumerar los requisitos de seguridad demandados a los sistemas operativos, así como las principales amenazas.
Conocer mecanismos de autenticación y de autorización utilizados en los sistemas operativos.
Contenidos
Programación y procesos. Regiones de memoria. Creación y destrucción de procesos. Sincronizaciones y comunicación. Condiciones de concurso y regiones críticas. Exclusión mutua. Problemas relacionados. Deadlock y livelock. Programación concurrente. Interbloqueos. Formalismos.
Comunicación. Sincronización. Sockets y protocolos de comunicación. Planificación de procesos. Scheduling. Sistemas de archivos. Políticas de alocación y administración de memoria. Sistemas distribuidos. Seguridad y autenticación.
Docentes
MANSILLA, Roberto Alejandro
Profesor adjunto
roberto.mandilla@ingenieria.uncuyo.edu.ar
ELGUETA, Rodrigo Atilio
Jefe de trabajos prácticos
rodrigo.elgueta@ingenieria.uncuyo.edu.ar