Sistemas Operativos

La página de la asignatura es la de Sistemas Operativos en el Campus Virtual. Esta página no se utiliza este curso.


El alumno deberá familiarizarse con los conceptos fundamentales de los sistemas operativos y con su uso de un modo efectivo. Tanto a nivel de llamadas al sistema como a nivel de intérprete de comandos. Ver [1].

Como sistema objeto de estudio vamos a utilizar UNIX (Linux, OpenBSD y OSX son tan sólo una reimplementación de UNIX). No obstante, todos los ejercicios realizados por los alumnos han de funcionar correctamente en los Laboratorios Linux.

Esta es la página de recursos y normativa a la espera de que tengamos acceso al campus virtual. El foro de la asigtura y todos los ejercicios y recursos estarán ubicados en el Campus Virtual de la URJC tan pronto creen los foros necesarios y tengamos acceso a ellos.


Datos generales

Titulaciones:
Grados de Telecomunicación
Curso:
Tercero. Primer cuatrimestre
Profesorado:

Tienes más información en la guía de la asignatura.


Evaluación

Se realizarán las siguientes actividades evaluadoras:

Horario

Se impartirá teoría los lunes (11 a 13) en el aula de teoría (Seminario 127, Dept. I), y prácticas los miércoles (13 a 15) en los laboratorios Linux.

Temario

El temario es el API del sistema operativo UNIX, tanto a nivel de llamadas al sistema como a nivel de shell. El temario consta de los siguientes temas:

Dichos temas se abordarán viendo cómo se programa sobre el sistema operativo y cómo puede utilizarse este de un modo eficaz.

Dispones de


Práctica

A detallar durante el curso en el campus virtual.

IMPORTANTE:

La entrega es presencial, y requiere una modificación en vivo del programa en un tiempo determinado, el día asignado a la última prueba de evaluación en el calendario oficial. Dicho programa debe funcionar en los laboratorios Linux correctamente.


Recursos

Hay diversos recursos que podeis utilizar libremente como apoyo a la asignatura.

Para la bibliografía mira más abajo.

Ejercicios

Durante el curso aparecerán los enunciados en el campus virtual. La entrega se realizará a través del foro en dicho campus virtual.


Bibliografía

1
Introducción a las abstracciones del sistema operativo utilizando UNIX Francisco J Ballesteros, 2016 (tienes enlaces en esta página).

2
The UNIX Programming Environment. Prentice-Hall, 1987. B.W. Kernighan y R. Pike.

3
The C Programming Language. Segunda edición. Prentice-Hall., 1987. Brian W Kernighan, Dennis M. Ritchie

4
The Practice of Programming. Brian W Kernighan, Rob Pike. Addison-Wesley. 1999.

5
Advanced Programming in the UNIX environment. Addison-Wesley. Stevens

Tienes copias en la biblioteca.

Bibliografía complementaria

Mira la básica si no lo has hecho!

1
Introduction to Operating Systems Abstractions Using Plan 9 from Bell Labs. Francisco J Ballesteros en línea y si lo prefieres en libro lo tienes en Lulu.com.

2
Notes on the Plan 9 3rd edition Kernel Source, 2001. Disponible en línea (ps) y (txt). El código fuente descrito en dicho libro corresponde la versión de Junio de la tercera edición de Plan 9. Si aceptas la licencia, puedes descargar un fichero con el código. Esta es la licencia. Dicho fichero es un tar comprimido con gzip. En la biblioteca tienes un CDROM que puedes usar también.

3
Principles of Concurrent Programming. Ben Ari. Prentice Hall. Este libro se puede leer en línea aquí, pero este enlace sólo es accesible desde la universidad con navegadores que soporten Javascript (ni abaco ni links).

4
A.S. Tanenbaum, Distributed Operating Systems, Prentice-Hall, 1995.

5
G. Coulouris, J. Dollimore, T. Kindberg: Distributed Systems Concepts and Design. Addsion-Wesley, second edition, 1994

6
A. Silberschatz y P. Galvin, Operating System Concepts, Addison Wesley, 1998, Quinta Ed.

7
M.J. Rochkind, Advanced UNIX Programming, Prentice-Hall, 1986.

8
A. Frisch, Essential System Administration, O'Reilly & Associates, 1995.

9
Andrew S. Tanenbaum, Modern Operating Systems. Prentice-Hall, 1992

10
Maurice J. Bach: The Design of the Unix Operating System. Prentice-Hall, 1987

11
A. Silberschatz, J. Peterson y P. Galvin, Sistemas Operativos. Conceptos fundamentales, Addison Wesley, 1994, Tercera Ed.