Profesor | José Luis Torres Rodríguez | ma ju | 18:30 a 20 |
Ayudante | Andrés Leonardo Hernández Bermúdez | lu mi | 19 a 20 |
Ayudante | Diego Alberto Barriga Martínez | lu mi | 19 a 20 |
Ayud. Lab. | Oscar Emilio Cabrera López | mi | 14 a 16 |
José Luis Torres Rodríguez
Andrés Leonardo Hernández Bermúdez
Oscar Emilio Cabrera López
Conocimientos básicos de Linux
Conocimientos de Arquitectura de Computadoras
Conocimientos de programación en un lenguaje estructurado u orientado a objetos
Introducir al estudiante en el estudio de los elementos que conforman un sistema operativo
Presentar al estudiante los elementos necesarios para comprender la forma en que un sistema operativo controla los recursos de un sistemas de cómputo
Proporcionar al estudiante bases que le permitan explotar los recursos de un sistema de cómputo (principalmente Linux)
Estudiar la estructura de los sistemas operativos tradicionales y sentar las bases para entender los sistemas operativos distribuidos
Llevar a cabo la implementación de algunas de las técnicas usadas en los sistemas operativos modernos, abordadas durante el curso, con el objetivo de reforzar la comprensión de las mismas.
Esto incluye el uso de sistemas de archivos actuales, aplicaciones y arquitecturas disponibles en la nube, entre otros
Linux, Windows, Android
C
La primera sesión se llevará a cabo el día 21 de septiembre a las 19:00 horas a través de Google Meet. La liga para conectarse a la sesión se les hará llegar por correo a las direcciones que se tienen registradas en el sistema de la Facultad de Ciencias; estas direcciones se tomarán de la lista oficial del grupo. Se les sugiere consultar el correo de la dirección que tienen registrada para el envío de avisos de la Facultad.
En caso de que no hayan recibido el correo con la liga para la reunión, a más tardar el día 20 de septiembre, pueden enviar un correo a la dirección jluis@ciencias.unam.mx, incluyendo su nombre completo y su número de cuenta.
Profesor: 2 sesiones en video por semana y una sesión en línea para solución de dudas (el día y la hora se les comunicarán durante la primera sesión)
Ayudante: las sesiones de ayudantía se llevarán a cabo en línea, los lúnes y miércoles de 19 a 20 horas, como se indica en el horario.
Laboratorio:
2 sesiones en videollamada de 1 hora y media por semana. En la primera sesión se les indicarán los días en los que se llevarán a cabo esta sesiones y la forma en la que se trabajará.
Se llevarán a cabo una serie de prácticas con el objetivo de que el alumno se familiarice con el lenguaje de programación y para reforzar los temas abordados en las sesiones teóricas.
GitLab para la entrega de proyectos de programación y la documentación correspondiente
Comunicación:
Se hará uso de un grupo en Telegram para comunicación grupal y personal
Se requiere su cuenta de correo personal para el envío de información
Se hará uso de un grupo de correo de Gmail para comunicación grupal (se formará a partir de las cuentas de correo de los integrantes del grupo)
Se utilizará Google Drive para trabajo colaborativo en equipo y para la entrega de documentos
Google Meet para las sesiones en línea
Canal de Youtube para la publicación de videos sobre el curso
Los datos de los recursos mencionados se les proporcionarán en la primera sesión.
Introducción a los sistemas operativos
Conceptos de sistemas operativos
Administración y manejo de recursos
Máquinas virtuales
Elementos y estructura de un sistema operativo
Tipos de sistemas operativos
Breve introducción a GitLab
Procesos
Descripción de un proceso
Creación y finalización de procesos
Estado de un proceso
Comunicación entre procesos
Procesos y máquinas virtuales
Hilos
Revisión del concepto de hilo
Uso e implementación de hilos
Modelos de hilo simple y multihilos
Hilos en sistemas distribuidos
Planificación
Conceptos básicos
Criterios y algoritmos de planificación
Planificación de hilos
Planificación en sistemas distribuidos
Problemas clásicos
Comunicación y sincronización de procesos
Condiciones de carrera
Región crítica
Exclusión mutua y solución de Peterson
Semáforos
Monitores
Problemas y ejemplos
Interbloqueo
Modelado de interbloqueos
Métodos para el manejo de interbloqueos
Prevención y evitación de interbloqueos
Manejo de memoria principal
Conceptos generales
Intercambio
Asignación de memoria contigua
Paginación
Tablas de páginas
Segmentación
Virtualización de la memoria
Manejo de memoria virtual
Introducción
Paginación sobre demanda
Copy-on-write
Reemplazo de páginas
Manejo de marcos
Sistemas de archivos
Conceptos generales
Métodos de acceso
Estructura de directorios y discos
Estructura de un sistema de archivos
Implementación de sistemas de archivos y directorios
Métodos de asignación
Manejo de espacio libre
Recuperación de sistemas de archivos
Archivos compartidos
Contenedores
Se considerarán los siguientes elementos para llevar a cabo la evaluación:
Exámenes: se aplicarán 3 exámenes, de acuerdo al avance que tengamos en el curso.
Requisito para presentar examen: haber entregado puntualmente las tareas anteriores a la fecha del examen. No habrá reposiciones de exámenes
Es requisito indispensable el contar con un promedio aprobatorio en los exámenes y haberlos presentado todos, sin excepción, para tener derecho a obtener una calificación final aprobatoria en el semestre.
No es posible obtener una calificación aprobatoria si no se presentaron los exámenes.
Prácticas, sobre cada uno de los temas principales vistos a lo largo del semestre.
Es requisito indispensable el haber entregado todas las prácticas para tener derecho a obtener una calificación final aprobatoria en el semestre.
No es posible obtener una calificación aprobatoria si no se ha cumplido con la entrega de las prácticas y los proyectos asignados durante el semestre.
Tareas teórico-prácticas. En estas tareas se aplicarán todos los conocimientos vistos a la fecha, complementados con material adicional.
Todos los trabajos duplicados serán evaluados con cero, sin hacer indagaciones.
La calificación final se entregará a más tardar el día de la segunda vuelta de los exámenes finales. Esta fecha también es el límite para solicitar aclaraciones de cualquier trabajo entregado.
.
Sin excepción, no se aceptarán reclamaciones fuera de la fecha señalada en el punto anterior.
Sin excepciones, no se permitirá renunciar a ninguna calificación.
La calificación de NP sólo se asignará a quien no haya entregado ningún trabajo y no haya presentado ningún examen.
De ninguna manera se dará un trato ni una calificación especial a ningún estudiante, por el hecho de tener un promedio alto en su historial académico, contar con algún tipo de beca, por ser su última materia de la carrera o por llevar una cantidad grande de materias. Tampoco se tomarán en cuenta recomendaciones de ninguna persona para asignar la calificación final.
La calificación final se calculará con base en los siguientes porcentajes:
Exámenes 30%
Prácticas 50%
Tareas 20%
Operating System Concepts, 9th edition, 2013
Silverschatz, Abraham; Galvin, Peter; Gagne, Greg
John Wiley & Sons
Sistemas Operativos Modernos, 3a edición, 2009
Tanenbaum, Andrew S.
Pearson/Prentice Hall
Fundamentos de Sistemas Operativos. Primera edición.
Golf, Gunnar; Ruiz, Esteban; Bergero, Federico; Meza, Erwin
Universidad Nacional Autónoma de México, Instituto de Investigaciones Económicas, Facultad de Ingeniería. 2015.
Distribuido libremente bajo los términos de la CC BY-SA versión 4.0.
Sitio web:http://sistop.org/