Usted está aquí: Inicio web asignaturas

Fichas de asignaturas 2006-07


  CÓDIGO NOMBRE
Asignatura 1711015 SISTEMAS OPERATIVOS I
Titulación 1711 INGENIERÍA TÉCNICA EN INFORMÁTICA DE SISTEMAS
Departamento C137 LENGUAJES Y SISTEMAS INFORMATICOS
Curso 2  
Duración (A: Anual, 1Q/2Q) 1Q  
Créditos ECTS 4,5  

Créditos Teóricos 3 Créditos Prácticos 3 Tipo Troncal

 

Profesorado
Antonia Estero Botaro, antonia.estero@uca.es (Prof. coordinador)
Juan José Domínguez Jiménez, juanjose.dominguez@uca.es
Eugenio Juárez Clavaín, eugenio.juarez@uca.es
José Antonio Ortega Pérez, joseantonio.ortega@uca.es
Manuel Palomo Duarte, manuel.palomo@uca.es
Situación
prerrequisitos
Es aconsejable que el alumno haya cursado previamente las asignaturas
siguientes:
- Introducción a la programación
- Estructuras de Datos I
- Estructura y Tecnología de Computadores

Contexto dentro de la titulación
Esta asignatura se enmarca en el segundo curso y proporciona al alumno una
visión general del diseño de un sistema operativo multiusuario y
multiprogramado. Asimismo, pretende iniciar al alumnado en el manejo a nivel de
usuario de uno de estos sistemas, en concreto, el sistema operativo LINUX.

Recomendaciones
Para un mejor aprovechamiento de la asignatura los alumnos deberán instalarse
en
su ordenador particular el sistema operativo Linux, que estará disponible a
través de la biblioteca del centro, además de a través de los mirrors
oficiales.
Competencias
Competencias transversales/genéricas
- Capacidad de análisis y síntesis.
- Comunicación oral y escrita.
- Resolución de problemas.
- Trabajo en equipo.
- Capacidad de organización.
- Razonamiento crítico.

Competencias específicas
  • Cognitivas(Saber):

    - Conocer las posibilidades de uso de un sistema operativo LINUX a
    nivel de usuario
    - Comprender los distintos elementos que integran un sistema
    operativo
    - Diferenciar los componentes de planificación de un sistema
    operativo
    - Conocer las diferentes estructuras de sistemas operativos
    existentes
    - Conocimiento de los conceptos básicos de un sistema operativo:
    proceso, multiprogramación, interbloqueo, etc.
    - Conocer las diferentes herramientas y estrategias existentes en un
    sistema operativo para la resolución de problemas de sincronización y
    comunicación
    - Comprender la necesidad de una gestión de memoria, y los métodos
    tradicionales para su implantación
  • Procedimentales/Instrumentales(Saber hacer):

    - Evaluar diferentes soluciones a un problema y determinar la
    solución óptima
    - Resolución de problemas de sincronización de procesos
    - Interpretación de documentación técnica
    
    
  • Actitudinales:

    - Aprendizaje autónomo
    - Planificación de las actividades a desarrollar
    - Toma de decisiones
    
    
Objetivos
Los objetivos específicos de la asignatura son:

- Conocer el papel que juega el sistema operativo en un sistema de computación.
- Conocer los servicios que presta un sistema operativo.
- Conocer las diferentes estructuras que puede presentar el núcleo de un sistema
operativo y las implicaciones que esto tiene.
- Conocer el concepto de proceso y todos los mecanismos relacionados con su
gestión.
- Conocer y saber utilizar los mecanismos que permiter la sincronización y
comunicación de procesos.
- Conocer el concepto de interbloqueo y las diversas estrategias que puede
seguir
un sistema operativo para su tratamiento.
- Conocer las técnicas de gestión de memoria en sistemas de asignación contigua.
- Saber utilizar el sistema operativo Linux desde el punto de vista del
usuario.



Programa
Programa de Teoría

Tema 1:Introducción a los sistemas operativos  (2 horas)
1.1 ¿Qué es un sistema operativo?
1.2 Evolución histórica de los sistemas operativos.
1.2.1 Los primeros sistemas.
1.2.2 Sistemas por lotes.
1.2.3 Sistemas por lotes multiprogramados.
1.2.4 Sistemas de tiempo compartido.
1.3 Sistemas para computadores personales.
1.4 Sistemas de tiempo real.
1.5 Sistemas con más de un procesador.
1.5.1 Sistemas paralelos.
1.5.2 Sistemas en red y distribuidos.
1.6 Aspectos hardware.
1.6.1 Mecanismos hardware de protección.
1.6.2 Técnicas de E/S.

Tema 2: Estructura y funciones de los sistemas operativos.  (3 horas)
2.1 Funciones y componentes de los sistemas operativos.
2.2 Solicitud de servicios.
2.2.1 Llamadas al sistema.
2.2.2 Paso de mensajes.
2.3 Estructura de un sistema operativo.
2.3.1 Estructura simple o monolítica.
2.3.2 Estructura modular.
2.3.3 Máquinas virtuales.
2.3.4 Micronúcleo.
2.4 El sistema operativo LINUX.


Tema 3: Descripción y control de procesos.  (5 horas)
3.1 ¿Qué es un proceso?
3.2 Vida de un proceso.
3.2.1 Creación de un proceso.
3.2.2 Terminación de un proceso.
3.2.3 Estados de un proceso.
3.3 Imagen de un proceso.
3.3.1 Bloque de control del proceso.
3.4 Control de los procesos.
3.5 Gestión de procesos.
3.5.1 Creación de procesos.
3.5.2 Cambio de proceso.
3.6 Hilos de ejecución.
3.7 Procesos en LINUX.

Tema 4: Planificación  (4 horas)
4.1 Introducción.
4.2 Niveles de planificación.
4.2.1 Planificación a largo plazo.
4.2.2 Planificación a medio plazo.
4.3.3 Planificación a corto plazo.
4.4 Algoritmos de planificación.
4.4.1 Primero en llegar, primero en ser servido.
4.4.2 El proceso más corto primero.
4.4.3 Tiempo restante más corto.
4.4.4 Tasa de respuesta más alta.
4.4.5 Asignación por turnos.
4.4.6 Prioridades.
4.4.7 Planificación en varios niveles.
4.4.8 Planificación en varios niveles con realimentación.
4.5 Evaluación de algoritmos de planificación.
4.5.1 Criterios del planificador a corto plazo.
4.5.2 Evaluación analítica.
4.5.3 Simulación.
4.5.4 Implementación.
4.6 Planificación en LINUX.

Tema 5: Sincronización y comunicación  (7 horas)
5.1 Introducción.
5.2 Recursos.
5.3 Interacción entre procesos.
5.3.1 Competencia.
5.3.2 Compartición.
5.3.3 Comunicación.
5.4 Exclusión mutua.
5.4.1 Soluciones software.
5.4.2 Soluciones con ayuda del hardware.
5.5 Semáforos.
5.6 Monitores.
5.7 Paso de mensajes.
5.8 Mecanismos de concurrencia en LINUX.

Tema 6: Interbloqueos  (3 horas)
6.1 Introducción.
6.2 Condiciones necesarias.
6.3 Modelado del interbloqueo.
6.4 Estrategias para tratar los interbloqueos.
6.4.1 Prevención.
6.4.2 Predicción.
6.4.3 Detección y recuperación.

Tema7: Administración de la memoria  (4 horas)
7.1 Traducción de direcciones.
7.2 Funciones del administrador de la memoria.
7.3 Esquemas de asignación de la memoria.
7.4 Sistemas de monoprogramación.
7.5 Sistemas de multiprogramación con particiones fijas.
7.5.1 Selección del tamaño de las particiones.
7.5.2 Algoritmos de colocación.
7.5.3 Elementos de control.
7.5.4 Protección.
7.5.5 Inconvenientes.
7.6 Multiprogramación con particiones variables.
7.6.1 Compactación.
7.6.2 Algoritmos de colocación.
7.6.3 Elementos de control.
7.7 El sistema compañero.

Programa de Prácticas: Uso del sistema operativo LINUX.

Práctica 1: Instalación del sistema operativo LINUX.   (2 sesiones)
Práctica 2: Configuración y manejo del entorno de trabajo.  (1 sesión)
Práctica 3: Las órdenes y la obtención de ayuda en Linux  (1 sesión)
Práctica 4: El sistema de ficheros ext2 (3 sesiones)
Práctica 5: Permisos.  (2 sesiones)
Práctica 6: Aspectos básicos del shell bash.  (1 sesión)
Práctica 7: Redireccionamientos y filtros. (1 sesión)
Práctica 8: Expresiones regulares.  (1 sesión)
Práctica 9: Ejercicios. (1 sesión)

Cada sesión de prácticas es de 2 horas.
Actividades
- Resolución de problemas en grupos
- Ejercicios tipo test
- Debates sobre diferentes aspectos de la materia
- Clases magistrales
Metodología
La metodología que se va a utilizar tanto en las clases de teoría como en las de
prácticas va a estar apoyada fundamentalmente en el trabajo del alumno que
mediante los problemas propuestos por el profesor y bajo la tutoría de éste debe
alcanzar los objetivos de aprendizaje y las competencias transversales indicadas
anteriormente.

El alumno dispondrá de información sobre cada tema (se le proporcionará a través
del campus virtual). Al inicio de cada tema el profesor expondrá los objetivos
de éste así como un breve resumen de su contenido.

El resto de las clases del tema se dedicarán a la resolución de problemas por
parte de los alumnos trabajando en grupos de 4 o 5 miembros. Las soluciones
propuestas por el grupo serán expuestas en clase por un miembro de éste y se
discutirán con el resto de los alumnos.

El trabajo realizado en clase se deberá complementar con el trabajo individual
del alumno, que dispondrá de ejercicios específicos para desarrollar fuera de
las horas de clase.

Los alumnos deberán elaborar un portafolio que debe contener todos los trabajos
que hayan realizado a lo largo del curso. Este portafolio permitirá al alumno
organizar todo el trabajo realizado en la asignatura y proporcionará información
al profesor sobre este trabajo. El portafolio podrá ser solicitado por el
profesor durante el curso para su revisión, y será de obligada entrega al
finalizar el curso para proceder a la evaluación del alumno.
Distribución de horas de trabajo del alumno/a

Nº de Horas (indicar total): 125

  • Clases Teóricas: 7  
  • Clases Prácticas: 26  
  • Exposiciones y Seminarios:  
  • Tutorías Especializadas (presenciales o virtuales):
    • Colectivas: 6 (virtuales)  
    • Individules: 1  
  • Realización de Actividades Académicas Dirigidas:
    • Con presencia del profesorado: 19  
    • Sin presencia del profesorado: 15  
  • Otro Trabajo Personal Autónomo:
    • Horas de estudio: 30  
    • Preparación de Trabajo Personal:  
    • ...
      Elaboración del
      portafolio 17
       
  • Realización de Exámenes:
    • Examen escrito: 3  
    • Exámenes orales (control del Trabajo Personal):  
Técnicas Docentes
Sesiones académicas teóricas:   Exposición y debate:   Tutorías especializadas:  
Sesiones académicas Prácticas:   Visitas y excursiones:No   Controles de lecturas obligatorias:  
Otros (especificar):
Realización de ejercicios en grupos.
Debates sobre temas de la asignatura.

 
Criterios y Sistemas de Evaluación
Se va a realizar una evaluación contínua del trabajo del alumno en la
asignatura en la que se valorarán tanto los conocimientos específicos adquiridos
como las competencias transversales.

Los conocimientos específicos se evaluarán mediante exámenes de tipo test que
se realizarán después de cada tema a través del campus virtual. La nota de los
tests se obtendrá mediante la siguiente fórmula:

(10 / Nº preguntas) × (Aciertos - Errores/(Nº respuestas - 1))

La evaluación de las competencias transversales se llevará a cabo valorando la
participación de los alumnos durante las clases (trabajo en grupo, exposición de
resultados, etc.) así como mediante la valoración del portafolio, que será
revisado, al menos una vez, por el profesor a lo largo del curso previa cita con
el alumno. Esta valoración será ponderada por los siguientes aspectos:
- asistencia a clase - 5%
- participación en los debates - 15%
- trabajo en equipo - 20%
- presentación de resultados - 10%
- elaboración de portafolio - 20%
- asistencia a la tutoría individual de revisión del portafolio - 10%
- controles de lectura previos - 20%

La nota final se obtendrá mediante la siguiente fórmula:


Nota final = 0.3 * NTT + 0.3 * NTP + 0.3 * NCT + 0.1 * EP

donde:

NTT: Nota media tests Teoría
NTP: Nota media tests Prácticas
NCT: Nota Competencias Transversales
EP:  Nota Ejercicios Prácticas

Para poder aplicar estas fórmulas se deberá obtener una nota mínima de 4 puntos
en los componentes NTT y NTP. Aquellos alumnos que no alcancen esta nota tendrán
la posibilidad a final de curso de recuperar aquellos temas que no hayan
superado
inicialmente.

Los alumnos, que aún habiendo seguido el método de evaluación continua no
consigan superar la asignatura en la convocatoria de febrero, podrán realizar
un examen en las convocatoria de junio o septiembre de la parte no superada
(NTP o NTT).

Los alumnos que acrediten estar trabajando y que no puedan asistir a las clases
podrán optar por un modo alternativo de evaluación que consistirá en un examen
final de la asignatura. El plazo para adherirse a esta forma alternativa de
evaluación será el primer mes del curso, para ello deberán entregar un
certificado de la empresa en la que trabajan. En este caso, el método de
evaluación será un examen final.
Recursos Bibliográficos
Estero, A. & Domínguez, J.J.
Sistemas Operativos. Conceptos fundamentales.
Servicio de Publicaciones de la Universidad de Cádiz, 2002.

Silberschatz, A.; Galvin, P. B. & Gagne, G.
Fundamentos de Sistemas Operativos, 7ª Edición
McGraw-Hill, 2006.

Deitel, H.M.; Deitel, P.J. & Choffnes, D.R.
Operating Systems, 3ª ed.
Pearson, 2004.

Stallings, W.
Sistemas Operativos, 5ª ed.
Prentice Hall, 2005.

Carretero, J.; García, F.; De Miguel, P. & Pérez, F.
Sistemas Operativos. Una visión aplicada.
McGraw Hill, 2001.

Tanenbaum, A.S.
Modern Operating Systems, 2ª ed.
Prentice Hall, 2001.

Bibliografía de Teoría de consulta

Ben-Ari, M.
Principles of Concurrent and Distributed Programming.
Prentice Hall, 1990.

Nutt, G.
Sistemas Operativos, 3º ed.
Addison Wesley, 2004.

Editado por Purcell, J. & Robinson A.
LINUX. The complete reference, 4ª ed.
Linux Systems Lab, 1996.

Rusling, D.A.
The LINUX Kernel.
http://www.tldp.org/LDP/tlk/tlk.html

Tanenbaum, A. S. & Woodhull A. S.
Sistemas Operativos: Diseño e Implementación. 2ª ed.
Prentice Hall Hispanoamericana, 1998.

Bibliografía de Prácticas básica


Domínguez, J.J. & Estero, A.
Introducción al sistema operativo GNU/LINUX.
Servicio de publicaciones del Dpto. de Lenguajes y Sistemas
Informáticos, 2004.

Cornes, P.
The Linux A-Z.
Prentice Hall, 1997.

Bibliografía de Prácticas de consulta

Andréasson T. & Skansholm, J.
Getting Started with UNIX and X.
Addison Wesley, 1993.

Newham, C. & Rosenblatt, B.
Learning the bash shell.
O'Reilly Assoc., 1995.

Editado por Purcell, J. & Robinson A.
LINUX. The complete reference, 4ª ed.
Linux Systems Lab, 1996.

Wood, P.H. & Kochan, S.G.
UNIX System Security.
Hayden Books, 1990.

El presente documento es propiedad de la Universidad de Cádiz y forma parte de su Sistema de Gestión de Calidad Docente.