Está en la página 1de 4

Departamento de Ingeniera Inform

atica
Universidad de Santiago de Chile

Sistemas Operativos
Ingeniera Civil en Inform
atica
Ingeniera de Ejecuci
on en Computaci
on e Inform
atica
1er Semestre 2015
Profesores: Fernando Rannou (fernando.rannou@usach.cl), Crist
obal Acosta (cristobal.acosta@usach.cl)
Ayudantes: Luis Loyola ()

Descripci
on de la asignatura

El curso de Sistemas Operativos ense


na el funcionamiento interno del software que administra un sistema computacional. Construyendo sobre el curso de Arquitectura de Computadores, este curso describe la capa de software
mas cercana al procesador con capacidades de orquestar la ejecuci
on de otros procesos y administrar los recursos
que estos requieran. Para lograr una compresi
on profunda de la interaccion hardware/software, primero se describe
detalladamente el mecanismo de las interrupciones y el rol que ellas juegan en la ejecuci
on del Sistema Operativo.
Luego se describe la estructura, control y sincronizaci
on de procesos y hebras, quienes son los elementos computacionales fundamentales en un sistema computacional. Se ense
na en extenso los problemas de concurrencia que surgen
cuando dos o mas procesos acceden a recursos compartidos sin sincronizaci
on apropiada, y los metodos de hardware
y software para evitar dichos problemas. Uno de los recursos compartidos mas com
un entre procesos es la memoria
fsica. En este sentido, se ense
na la diferencia entre memoria fsica y memoria virtual y el mecanismo de traduccion
de memoria virtual a memora fsica, haciendo enfasis en los aspectos de rendimiento computacional. Finalmente,
el curso ense
na los elementos mas importantes del modulo de Entrada/Salida (I/O), especializado en dispositivos
orientados al bloque, y la estructura de los sistemas de archivos en dichos dispositivos.

Objetivos

2.1

Objetivo general

Compreender que es un sistema operativo. Conocer y coomprender la estructura, funcionalidad e interrelacion de


los distintos componentes que conforman los sistemas operativos modernos. Dominar tecnicas de programacion de
sistemas operativos.

2.2

Objetivos especficos

El alumno alfinal del curso sera capaz de:


1. Describir el mecanismo por el cual el sistema operativo y el sistema computacional se comunican
2. Comprender el efecto de las interrupciones en el rendimiento del sistema computacional
3. Enunciar y describir los componentes principales de los procesos y hebras
4. Escribir programas en C/C++ para crear procesos y hebras
5. Escribir programas utilizando otros llamados al sistema
6. Identificar condiciones de carrera en codigo
7. Escribir soluciones a problemas de sincronizaci
on y deadlock
8. Evaluar comparativamente estrategias para solucionar condiciones de carrera
9. Describir los algoritmos de planificaci
on del procesador y evaluar comparativamente su desempe
no para distintos
tipos de carga de trabajo

10. Distinguir memoria fsica de memoria virtual


11. Aplicar tecnologas de memoria virtual para mapear una direccion fsica a una direccion virtual
12. Evaluar comparativamente distintas estrategias de mapeo de direcciones
13. Evaluar tecnicas de E/S para dispositivos de bloques
14. Describir y evaluar metodos de procuramiento de archivos

Contenidos
1. Introduccion a los SOs
(a) Revision sistemas computacionales.
(b) Interrupciones
2. Procesos I: El concepto de proceso
(a) Descripci
on y control de procesos.
(b) Creaci
on, comunicaci
on y sincronizaci
on de procesos
(c) Manejo de procesos en Linux
3. Planificacion del procesador
(a) Algoritmos de planificaci
on
(b) Planificacion multiprocesador
4. Hebras
(a) Hebras versus procesos
(b) Multiprocesamiento simetrico
(c) Microkernels
(d) Manejo de hebras en Linux
5. Concurrencia de procesos
(a) Principios de concurrencia
(b) Exclusion m
utua
(c) Mecanismos de sincronizaci
on: sem
aforos, monitores
(d) Bloqueos m
utuos e inhanici
on
(e) Sincronizaci
on de procesos y hebras en Linux

6. Deadlock
(a) Condiciones necesarias y suficientes
(b) Como evitar de deadlock
(c) El algoritmo del banquero
(d) Detecci
on de deadlock
7. Sistema de administracion de memoria
(a) Particionamiento de la memoria fsica
(b) Direccionamiento fsico y virtual
(c) Paginaci
on
(d) Segmentaci
on
8. Administracion de dispositivos de I/O
(a) Organizacion de los servicios de I/O
(b) Buffering de I/O
(c) Planificacion de disco
(d) Sistemas RAID
9. Sistemas de archivos
(a) Organizacion y acceso de archivos
(b) Directorios
(c) Administracion almacenamiento secundario
(d) Sistemas de archivos en Linux

Evaluaci
on
PEP1

jueves 16 de abril, 2015

PEP2
PEP3

:
:

jueves 28 de mayo, 2015


jueves 2 de julio, 2015

PER
PAA

:
:

???????, 2015
jueves 9 de julio. 2015

Nota: Todas las PEP y la PAA se tomaran en el modulo 6, es decir desde las 17:10 y 18:40 hrs.
NF

(N T >= 4.0 AND N L >= 4.0)? 0.7 N T + 0.3 N L : min(N T, N L)

Bibliografa

William Stallings, Sistemas Operativos. Quinta edicion. Pearson. 2005


Mark Mitchell, Jeffrey Oldham, and Alex Samuel, Advanced Linux Programming, 2001.
Disponible en: www.advancedlinuxprogramming.com

Otros aspectos relevantes

Los siguientes aspectos son relevantes en este curso de Sistemas Operativos


1. Esta prohibido copiar en pruebas y en trabajos de laboratorio
2. Durante las pruebas no se puede usar telef
ono celular, ni ning
un tipo de tablet
3. Toda respuesta en pruebas debe estar justificada. Una respuesta sin desarrollo o justificaci
on, no tiene puntaje.
4. No se lleva la asistencia a clase, pero si usted decide asistir, por favor guarde el silencio apropiado y respete a
sus compa
neros.
5. La pagina Sistemas Operativos con sabor a Linux de facebook es un medio para que los alumnos realicen
consultas relacionadas con el curso, Esta abierta a toda la comunidad y se recomienda seguirla. Sin embargo,
el medio oficial de comunicaci
on de este curso es el sitio usachvirtual.

También podría gustarte