Sistemas Operativos

Información Básica

  • Créditos: 3
  • Horas de trabajo acompañado: 5 / semana (3 horas clase, 2 horas taller)
  • Horas de trabajo independiente: 4 / semana
  • Pre-requisitos: Arquitectura de Computador.
  • Tipo de curso: Núcleo de Formación Fundamental.

Descripción del Curso

Objetivos

Al finalizar el curso los participantes podrán: - Conocer - Comparar - Definir

Se desarrollan competencias en

Contenido

- Virtual memory (page table, TLB) - Multimedia support - RAID architectures - Role and purpose of the operating system - Functionality of a typical operating system - Mechanisms to support client-server models, hand-held devices - Design issues (efficiency, robustness, flexibility, portability, security, compatibility) - Influences of security, networking, multimedia, windowing systems - Structuring methods (monolithic, layered, modular, micro-kernel models) - Abstractions, processes, and resources - Concepts of application program interfaces (APIs) - The evolution of hardware/software techniques and application needs - Device organization - Concept of user/system state and protection, transition to kernel mode - States and state diagrams (cross-reference SF/State and State Machines) - Structures (ready list, process control blocks, and so forth) - Dispatching and context switching - The role of interrupts - Managing atomic access to OS objects - Implementing synchronization primitives - Multiprocessor issues (spin-locks, reentrancy) (cross-reference SF/Parallelism) - Preemptive and non-preemptive scheduling (cross-reference SF/Resource Allocation and Scheduling,PD/Parallel Performance) - Schedulers and policies (cross-reference SF/Resource Allocation and Scheduling, PD/Parallel Performance) - Processes and threads (cross-reference SF/Computational paradigms) - Deadlines and real-time issues - Review of physical memory and memory management hardware - Working sets and thrashing - Overview of system security - Policy/mechanism separation - Security methods and devices - Protection, access control, and authentication - Backups - Characteristics of serial and parallel devices - Abstracting device differences - Buffering strategies - Direct memory access - Recovery from failures - Files: data, metadata, operations, organization, buffering, sequential, nonsequential - Directories: contents and structure - File systems: partitioning, mount/unmount, virtual file systems - Standard implementation techniques - Memory-mapped files - Special-purpose file systems - Naming, searching, access, backups - Journaling and log-structured file systems - Multiple simultaneous computations - - Programming constructs for coordinating multiple simultaneous computations - - Need for synchronization - - Data races (simultaneous read/write or write/write of shared state) - - Higher-level races (interleavings violating program intention, undesired non-determinism) - - Lack of liveness/progress (deadlock, starvation) - - Specifying and testing atomicity and safety requirements - - Granularity of atomic accesses and updates, and the use of constructs such as critical sections or transactions to describe them - * Potential for liveness failures and deadlock (causes, conditions, prevention) - Shared vs. distributed memory - Symmetric multiprocessing (SMP) - SIMD, vector processin - - Atomic instructions such as Compare and Set - - Multiprocessor caches and cache coherence - - Non-uniform memory access (NUMA) - - Resource sharing (e.g., buses and interconnects) - Distinction between Application and OS services, Remote Procedure Call - Application-Virtual Machine Interaction - Reliability - Kinds of resources (e.g., processor share, memory, disk, net bandwidth) - Kinds of scheduling (e.g., first-come, priority) - Advantages of fair scheduling, preemptive scheduling - Rationale for protection and predictable performance - Levels of indirection, illustrated by virtual memory for managing physical memory resources - Methods for implementing virtual memory and virtual machines - Distinction between bugs and faults - Redundancy through check and retry - Duplication/mirroring/replicas - Other approaches to fault tolerance and availability

Capítulo 1: Nombre Capítulo 1

Sesión Horas teóricas Prácticas acompañadas Temas Profundidad Bibliografía
1 3 2 Tema 1 Uso [1 caps 1, 3, 4, 8]
2 3 2 Tema 1 Uso [1 caps 1, 3, 4, 8]

Total de Horas: Valor.

Capítulo 2: Nombre Capítulo 2

Sesión Horas teóricas Prácticas acompañadas Temas Profundidad Bibliografía
1 3 2 Tema 1 Uso [1 caps 1, 3, 4, 8]
2 3 2 Tema 1 Uso [1 caps 1, 3, 4, 8]

Total de Horas: Valor.

Integración Curricular

Resultados de Programa (ABET)

(A) La habilidad para aplicar conocimientos de matemáticas, ciencias e ingeniería.

(B) La habilidad para analizar un problema e identificar los requerimientos necesarios para su definición y solución.

(C) La habilidad para diseñar, implementar y evaluar procesos y sistemas computacionales.

(D) La habilidad para funcionar en equipos de trabajo.

(E) El entendimiento de la responsabilidad profesional y ética.

(F) La habilidad para comunicarse efectivamente.

(G) La habilidad para analizar los impactos de la computación y la ingeniería en las personas, organizaciones y la sociedad.

(H) El reconocimiento de la necesidad de, y la habilidad para, continuar con el desarrollo profesional.

(I) La habilidad para usar las técnicas, destrezas y herramientas modernas para la práctica de la computación.

(J) La habilidad para aplicar los fundamentos y principios de las matemáticas y de la computación en el modelamiento y diseño de sistemas computacionales de manera que se demuestre comprensión de las ventajas y desventajas en las decisiones de diseño.

(K) La habilidad para aplicar los principios de diseño y desarrollo de software en la construcción de sistemas de diferente complejidad.

Relevancia del curso con los resultados de programa

Resultados de Programa
A B C D E F G H I J K
Relevancia 5 4 4 1 3 3

Escala: (1) baja relevancia - (5) alta relevancia.

Integración de objetivos, contenido y metodología del curso

Resultados del Programa Indicadores de Desempeño Objetivos/Contenido del Curso Actividades de aprendizaje Instrumentos de medición
(A) Aplicación de Conocimientos (A1) Identificar los fundamentos científicos y los principios de ingeniería que rigen un proceso o sistema. (Conocimiento) (A2) Resolver problemas relacionados con la disciplina y otras áreas por medio de la utilización de conocimientos, modelos y formalismos de las ciencias de la computación, las matemáticas y la ingeniería. (Aplicación) (A3) Analizar conjuntos de datos. (Análisis) Capítulo 1 Exposiciones del profesor, solución de ejercicios y lecturas Exámenes
(C) Diseño (C1) Utilizar estándares de codificación en la implementación de componentes de software. (Aplicación). (C2) Identificar componentes, interacciones, relaciones e interfaces entre componentes. (Análisis). Capítulos 2,3,4 Solución de ejercicios y lecturas Proyectos y tareas
(F) Comunicación efectiva (F1) Producir textos de manera efectiva teniendo en cuenta la estructura, coherencia, flujo, ortografía y correcto uso del lenguaje. (Aplicación). (F2) Comunicarse de manera efectiva de acuerdo al público objetivo haciendo uso correcto del lenguaje, estilo, tiempo y expresión corporal. (Aplicación). (F3) Utilizar recursos gráficos para comunicar y expresar una idea. (Aplicación). (F4) Defender ideas con precisión y claridad. (Evaluación). Capítulos 2,3,4 Proyectos y tareas Presentaciones orales y reportes escritos
(H) Desarrollo profesional. (H1) Reconocer la importancia del conocimiento tanto en amplitud como en profundidad. (Compresión). Capítulo 1 Tareas Tareas
(I) Uso de herramientas y técnicas (I1) Utilizar herramientas de desarrollo de software. (Aplicación). (I2) Utilizar herramientas de diseño, modelamiento y simulación. (Aplicación). (I3) Combinar herramientas de software y hardware para resolver un problema. (Síntesis). (I4) Demostrar flexibilidad para adaptarse a diferentes paradigmas y lenguajes de programación. (Valuación). Capítulos 2,3,4 Laboratorios y lecturas Proyecto y tareas
(J) Modelamiento y diseño de sistemas computacionales (J1) Reconocer la importancia del modelamiento cuando se resuelve un problema. (Compresión). (J2) Relacionar conceptos y principios teóricos para la resolución efectiva de un problema. (Síntesis). Capitulos 2,3,4 Lecturas Proyectos y tareas

Contribución al Desarrollo de Competencias (CNA)

Resultados de Programa
A B C D E F G H I J K
Ciudadanía X X
Comunicación escrita X
Lectura crítica X
Inglés X
Razonamiento cuantitativo X X X X X X

Contribución a los objetivos educacionales

La Carrera de Ingeniería de Sistemas y Computación plantea los siguientes objetivos educacionales, El estudiante graduado de la carrera será capaz de:

  1. Ejercitar la práctica de la Ingeniería de Sistemas y Computación profesionalmente.
  2. Diseñar y operar sistemas de computación que contribuyen a la solución de problemas relacionados a la disciplina, otra área de la ciencia y la ingeniería u otras disciplinas.
  3. Contribuir al bienestar de las comunidades desde posiciones prominentes en la industria, academia, sector público o como un emprendedor.
  4. Ser distinguido por su bases sólidas en computación, su sentido de ciudadanía responsable, su profesionalismo y liderazgo.
  5. Continuar su desarrollo profesional o involucrarse en estudios de posgrado.
Resultados de Programa
A B C D E F G H I J K
Objetivo 1
Objetivo 2
Objetivo 3
Objetivo 4
Objetivo 5

Recomendaciones del Director del Programa

Reglas del curso

Calificación y Balance de Evaluación del Curso

Instrumento Porcentaje A B C D E F G H I J K
Parcial 25 % 25 %
Proyecto 30 % 10 % 5 % 15 %
Reportes 10 % 10 %
Presentación y discusiones 10 % 10 %
Tarea 5 % 5 %
Talleres 20 % 10% 10 %

Uso de material en exámenes

Asistencia

Bibliografía

  1. Libro 1
  2. Artículo 1
  3. URL 1

Instalaciones

Salón de clase con computador y proyector. Laboratorio de Ingeniería de Sistemas y Computación.

Material de este semestre

 
materias/sistemasoperativos.txt · Última modificación: 2016/08/14 01:29 por abuss
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki