3. ste documento es una breve guía de la asignatura de Fundamentos de los Sistemas
Operativos, del segundo curso del Grado en Ingeniería Informática impartido por
la ULPGC. Su propósito es informar al estudiante sobre todo aquello que se ha
considerado esencial para un feliz transcurso de la asignatura y se le ofrece como punto
de partida imprescindible.
Incluye el programa de la asignatura, el sistema de evaluación, la planificación del
curso y las referencias al resto de la documentación necesaria.
Esta guía se encuentra disponible en la web de la asignatura
(http://sopa.dis.ulpgc.es/fso).
Contenido
1.!Presentación 2!
2.!Contenidos teóricos 3!
3.!Contenidos prácticos 3!
4.!Evaluación 5!
5.!Instalaciones 7!
6.!Profesorado 8!
7.!Material didáctico 8!
8.!Bibliografía básica 10!
9.!Bibliografía complementaria 11!
10.!Temario detallado 13!
11.!¡No olvidar! 14!
E
4. 2 - Sistemas Operativos
1. Presentación
El sistema operativo es una parte esencial dentro de un sistema informático.
Administra los recursos del sistema y ofrece un entorno de programación y
operación a los usuarios, permitiendo trabajar con la máquina de forma cómoda y
eficaz. Es imprescindible que un titulado universitario en Informática conozca los
conceptos fundamentales vinculados a los sistemas operativos, sus funciones, su
estructura y su implementación.
En consecuencia, el Grado en Ingeniería Informática de la ULPGC contiene
esta asignatura de Fundamentos de los Sistemas Operativos, que se imparte en el
segundo cuatrimestre del segundo año y con una carga docente presencial de
sesenta horas (treinta horas teóricas más treinta prácticas).
1.1 Objetivos de formación
Desde un punto de vista teórico esta asignatura pretende formar al estudiante para
que éste conozca la estructura general, funciones y principios de diseño de los
sistemas operativos.
La práctica de esta asignatura irá encaminada a consolidar los conocimientos
teóricos impartidos en el aula. Las simulaciones ayudarán al estudiante a entender
las políticas de gestión de recursos propias del sistema operativo. El estudiante se
adiestrará en programación de sistemas mediante la utilización de la API del
sistema operativo y el software del sistema, usando para ello el entorno de
programación del lenguaje C bajo Unix (Linux).
En suma, los objetivos docentes de Fundamentos de los Sistemas Operativos
son:
Conceptos generales sobre sistemas operativos
! estructura
! funciones
! diseño
Programación de sistemas
! Operación y programación en entorno Unix/Linux
! Programación básica en lenguaje C
1.2 Requisitos académicos
Para cursar esta asignatura se requieren conocimientos de organización de
computadoras y de informática general a un nivel elemental. También es preciso
un dominio básico de las técnicas de programación estructurada. Por otro lado, el
estudiante tendrá que manejar inevitablemente documentación técnica en inglés,
por lo que es importante tener un nivel intermedio (B1) de comprensión lectora en
este idioma.
5. Guía de la asignatura - 3
2. Contenidos teóricos
Las clases teóricas comprenderán las siguientes unidades temáticas, que se
impartirán en este orden:
1. Conceptos sobre sistemas operativos
2. Procesos
3. Concurrencia
4. Memoria
5. Archivos
Al final de esta guía se muestra el temario detallado de la asignatura. Los textos
por los que se seguirá la parte teórica son:
• Fundamentos de Sistemas Operativos: Teoría y ejercicios resueltos, de S.
Candela, R. García, A. Quesada, F. Santana, J.M. Santos.
• Sistemas Operativos, de A. Silberschatz y P. Galvin.
3. Contenidos prácticos
Las explicaciones teóricas se apoyarán en una serie de actividades prácticas que
pretenden afianzar los conocimientos recibidos y que irán dirigidas a consolidar las
competencias de la asignatura mediante estos cuatro enfoques:
• Uso del SO. Adquirir competencia en programación de sistemas mediante
la utilización de la API del sistema operativo y el software del sistema.
• Simulaciones. Entender las políticas de gestión de recursos propias del
sistema operativo a través de simulaciones.
• Diseño del SO. Desarrollar componentes de software análogos.
• Estudiar el mercado. Profundizar en el conocimiento aplicado de los
conceptos de la asignatura a través de trabajos de investigación sobre las
tecnologías, sistemas y productos que ofrece el mercado.
Los tres primeros enfoques se materializarán en actividades tutorizadas que el
estudiante realizará en el laboratorio y/o en su casa. Se procurará que los
requisitos técnicos del puesto de trabajo y del software permitan la ejecución de los
trabajos desde el domicilio del estudiante y con un equipo informático convencional.
En este sentido se favorecerá el empleo de software libre y contenidos abiertos.
El cuarto enfoque, estudios de mercado, se desarrollará como trabajos tutorizados a
partir del material que se trate en las clases teóricas. Las actividades se
desarrollarán en equipos de trabajo de entre dos y ocho estudiantes dependiendo de
las características de la actividad. En el caso general se evitará la realización de
actividades individuales aunque para atender adecuadamente a los estudiantes con
requisitos especiales se dará la posibilidad del trabajo individual con alguna
penalización. En todos los casos las actividades requerirán sesiones tutorizadas
para que el profesor pueda conocer, guiar y evaluar el trabajo en curso.
6. 4 - Sistemas Operativos
3.1 Actividades prácticas previstas
Las prácticas consistirán en actividades tutorizadas en el laboratorio más algunas
tareas que se propondrán para que el alumno las resuelva por su cuenta, a modo de
autoevaluación. Las actividades prácticas previstas abarcarán estos tópicos:
• Operación en un entorno multiprogramado y multisuario.
• Uso de herramientas de desarrollo para lenguaje C.
• Uso de las llamadas del sistema operativo.
• Manejo de procesos e hilos.
• Mecanismos de sincronización y comunicación entre procesos.
• Resolución de problemas básicos de concurrencia.
• Análisis e implementación de políticas de gestión de memoria.
• Manejo de archivos.
Este conjunto de tópicos no constituyen una lista exhaustiva de trabajos. De esta
lista se extraerá un subconjunto para cada grupo de trabajo.
Las actividades prácticas propuestas como obligatorias deben superarse
para aprobar la asignatura. Adicionalmente se pueden proponer trabajos prácticos
de carácter opcional.
Los trabajos se presentarán a lo largo del semestre en sucesivas entregas,
en los plazos que se establezcan. Las entregas se harán a través de Moodle, y
deberán incluir, al menos, el código fuente y una pequeña memoria/informe. Estas
entregas deberán ser defendidas ante el profesor.
En el caso de que las entregas no se presenten en los plazos establecidos, los
estudiantes tendrán la opción de entregarlas al final del semestre, en el plazo que
se indicará en su momento. Si el estudiante opta por la entrega de final de
semestre, además de superar las prácticas entregadas, deberá realizar un examen
práctico en el laboratorio.
3.2 Prácticas en grupo
Las actividades que tienen como fin el adiestramiento con las herramientas (Linux,
lenguaje C y compilación) se pueden desarrollar de forma individual. Sin embargo,
los trabajos obligatorios se realizarán en grupos de dos o tres personas, ya que
uno de los objetivos de las actividades prácticas es la de fomentar el trabajo en
equipo. Los grupos se configurarán a voluntad de los propios estudiantes, siempre
que pertenezcan al mismo turno de prácticas.
Piénsenlo bien antes de elegir a su compañero, puesto que no se permiten
separaciones ni fusiones de grupos una vez que están formados.
3.3 Repetidores
De acuerdo con la normativa de la ULPGC, los estudiantes que repiten la
asignatura no tendrán que volver a realizar los trabajos prácticos que ya hubieran
superado con éxito en cursos anteriores. Cada uno de estos trabajos se considerará
aprobado con idéntica nota a la que se obtuvo en su momento.
7. Guía de la asignatura - 5
3.4 Turnos de prácticas
De acuerdo con los procedimientos de la ULPGC, cada estudiante es asignado a un
turno de asistencia a prácticas en el momento de la matriculación. En caso de que
deseen cambiar de turno una vez comenzada la actividad docente, tendrán que
solicitarlo formalmente en la Administración del Edificio de Informática y
Matemáticas.
4. Evaluación
La evaluación se realizará mediante tres sistemas básicos:
1. Habrá exámenes escritos y también la posibilidad de celebrar pruebas
prácticas para evaluar la adquisición de habilidades prácticas.
2. Las actividades prácticas se evaluarán por el proceso y por el resultado.
El resultado de cada trabajo debe materializarse en un entregable escrito
(código fuente más informe/memoria) y además debe ser expuesto de forma
oral. Se evaluará la expresión escrita y oral de estos entregables y
exposiciones. En cuanto al proceso se evaluará la capacidad para buscar,
sintetizar y producir información y conocimiento; la capacidad para marcar
objetivos de trabajo y cumplirlos en tiempo y forma; y las habilidades de
trabajo en equipo tanto con los compañeros como con el tutor.
3. La calificación del alumno también abarcará elementos de evaluación
continua del estudiante tales como:
• Participación en las preguntas y ejercicios planteados en las sesiones
presenciales o en el Campus Virtual.
• Sugerencias de corrección o mejora en el material didáctico de la
asignatura.
• Aportaciones críticas a los contenidos de la asignatura y a la metodología
de trabajo.
• Participación en las discusiones en el aula y en laboratorio, en especial
como iniciador de la discusión o como solucionador.
• Aportaciones positivas al proceso de aprendizaje de otros compañeros.
4.1 Exámenes teóricos
Cuando se haya impartido en torno a la mitad de la materia de teoría se celebrará
un examen parcial, cuyo peso en la nota de teoría será del 50%.
Habrá un examen de convocatoria en junio, según lo dispuesto oficialmente. El
examen de junio se dividirá en dos partes: la primera para aquellas personas que
no hayan aprobado el parcial y la segunda, constituida por la materia que no
pertenezca al primer parcial. Para poder aprobar la teoría en junio es necesario
aprobar las dos partes.
Las calificaciones obtenidas en junio en cada una de las partes teóricas NO se
guardan para posteriores convocatorias.
4.2 Trabajos prácticos
Los trabajos prácticos obligatorios serán evaluados mediante la revisión de las
memorias y defensas. Los integrantes de un grupo de prácticas habrán de
8. 6 - Sistemas Operativos
completar con éxito todos los trabajos obligatorios en las fechas que los profesores
determinen. La asignatura prevé la realización de trabajos optativos para subir
nota (hasta un 10% adicional).
4.3 Calificación final
La calificación final se calculará según la siguiente tabla:
Ponderación
Exámenes teóricos 70%
Trabajos prácticos obligatorios 30%
Trabajos prácticos optativos 10%
Evaluación continua y otros 10%
La calificación final resultará de aplicar estos porcentajes a la nota obtenida en
exámenes, trabajos prácticos y en su caso, a la evaluación continua.
Para aprobar la asignatura habrá que obtener más del 50% de la nota máxima de
cada uno de los trabajos obligatorios y de los dos exámenes de teoría. La nota de
teoría será la media aritmética de las notas de los exámenes de teoría, una vez que
se hayan aprobado cada una de las partes.
Aunque los porcentajes suman un 120%, nunca se podrá obtener más de un 10 en
la nota final. El 20 % adicional está concebido para que el estudiante pueda
mejorar su calificación una vez que ha alcanzado la nota mínima para aprobar.
A continuación se muestra el algoritmo detallado de cálculo de la calificación en la
asignatura. En caso de discrepancia de interpretación entre la especificación
algorítmica y lo expresado en los párrafos anteriores prevalecerá el algoritmo.
NT = nota de teoría
NP = nota de prácticas obligatorias
NPV = nota de práctica/s optativa/s
NA = nota adicional (evaluación continua y otros)
NFSA = nota final sin ajustar = ( 70!NT + 30!NP + 10!NPV + 10!NA ) / 100
NFA = nota final ajustada (la que va al acta) que se obtiene así:
si NT >= 5 y NP >= 5: NFA = MIN(10, NFSA)
si NT <= 3 o NP <= 3: NFA = MIN(3, NFSA)
en otro caso: NFA = MIN(4, NFSA)
4.4 Criterios de evaluación. Tipo de exámenes
Se pretende evaluar en el alumno la consecución de los objetivos docentes de la
asignatura, principalmente el dominio de los conceptos fundamentales sobre
sistemas operativos. Los exámenes estarán diseñados de tal forma que se abarque
la mayor cantidad posible de material temático, a fin de explorar los conocimientos
9. Guía de la asignatura - 7
globales que tenga el alumno. Muchas preguntas tratarán de relacionar conceptos
de temas diferentes.
La costumbre de los últimos años ha sido que la duración de un examen está
en torno a las tres horas y media. En los pasados cursos casi siempre los exámenes
contuvieron varias preguntas de desarrollo, preguntas de respuesta corta, algún
desarrollo algorítmico y un test con cuestiones generales.
Los trabajos prácticos se evaluarán de acuerdo con criterios de calidad del
programa, tanto de su diseño general como de su implementación y documentación;
además, se valorarán parámetros como la creatividad y la calidad de la defensa que
el grupo haga de su trabajo. Los criterios de evaluación de prácticas se adjuntarán
a la documentación que se entregará en su momento.
No está de más remarcar que a cualquier alumno universitario se le
presupone un adiestramiento previo en varias disciplinas, como son: la capacidad
para comprender un texto escrito; expresarse con corrección, precisión y claridad; y
en general un bagaje formativo cuya carencia repercutirá en la calificación
definitiva en la asignatura.
5. Instalaciones
Las clases teóricas se impartirán en las aulas correspondientes del Edificio de
Informática y Matemáticas.
Para realizar los trabajos prácticos, se dispone del Laboratorio de Sistemas
Operativos (2-2). El laboratorio cuenta con un servidor de altas prestaciones y una
red local de una veintena de PC que tienen instalado el sistema Linux (distribución
CentOS).
La naturaleza de los trabajos prácticos permite que éstos se realicen en
cualquier equipo con Linux, así que quien lo desee podrá implementarlos en
equipos ajenos al laboratorio 2-2. En cualquier caso, la revisión de los trabajos se
hará en las máquinas del Departamento de Informática y Sistemas.
Cada estudiante dispondrá de una cuenta de usuario exclusiva del
Laboratorio de Sistemas Operativos. A comienzos del semestre se comunicará cómo
pueden obtener su usuario y contraseña.
Con su cuenta de usuario, el estudiante podrá si lo desea acceder de forma
remota al servidor del Laboratorio de SO (sopa.dis.ulpgc.es), con un cliente SSH.
10. 8 - Sistemas Operativos
6. Profesorado
Alexis Quesada Arencibia
Coordinador
Despacho 1-8
Tlfs. 928 454 572 / 928 457 108
Correo: aquesada@dis.ulpgc.es
Francisco J. Santana Pérez
Responsable de prácticas
Despacho S-5
Tlf. 928 458 745
Correo: fsantana@dis.ulpgc.es
José Miguel Santos Espino
Profesor de teoría/prácticas
Despacho 3-2
Tlf. 928 458 742
Correo: josemiguel.santos@ulpgc.es
Eduardo Rodríguez Barrera
Profesor de teoría/prácticas
Despacho seminario-10
Tlf. 928 459 862
Correo: erodriguez@dis.ulpgc.es
Los horarios de tutoría y atención al alumnado estarán publicados en los despachos
respectivos de los profesores, en Moodle y en la página web de la asignatura. Es
recomendable acordar previamente una cita con el profesor. Los profesores
atenderán gustosamente consultas por correo electrónico.
7. Material didáctico
En la asignatura de Fundamentos de los Sistemas Operativos se cuenta con
fuentes documentales de todo tipo, que podemos clasificar en:
Bibliografía básica y complementaria
Guías teóricas y prácticas
Material para las prácticas
Servicios de información en línea
Seguidamente se explicará cada una de estas fuentes, aunque a la bibliografía se la
tratará con más detenimiento en posteriores secciones.
7.1 Bibliografía básica y complementaria
La bibliografía básica de una asignatura son aquellos textos fundamentales que
bastan para que el alumno tenga una visión completa de los contenidos de aquélla. En
la sección de bibliografía básica se incluyen libros sobre sistemas operativos en
general y literatura conveniente para los objetivos prácticos de la asignatura
(programación y operación en Unix, programación en C). Véase a partir de la página
10.
La bibliografía complementaria es el conjunto de textos accesorios, no
imprescindibles, que sin embargo son útiles para profundizar en aspectos particulares
de la asignatura. En la página 11 comienza una relación de títulos que se pueden
considerar bibliografía complementaria.
7.2 Guías teóricas y prácticas
Durante el curso los profesores entregarán material diverso para seguir las clases
teóricas y prácticas. Por ejemplo, hay disponibles transparencias para cada unidad
11. Guía de la asignatura - 9
teórica. Para las prácticas se suministrará material variado, p.ej. trípticos con las
órdenes comunes de UNIX, etc. También pueden encontrar material multimedia,
por ejemplo tutoriales en vídeo de determinados tópicos de la asignatura.
7.3 Material para el laboratorio
La documentación que se suministra para las actividades prácticas y el uso del
laboratorio incluye, entre otras cosas:
• Fichas de prácticas
• Manuales de operación y programación en entorno Unix
• Manuales de programación en C
• Textos de los trabajos prácticos
7.4 Servicios en línea
Desde 1994, la asignatura dispone de servicios online para apoyar al estudiante. El
actual servicio web está accesible en http://sopa.dis.ulpgc.es/fso/. En él se puede
encontrar material didáctico de todo tipo, como las guías de la asignatura, las
presentaciones utilizadas en las sesiones teóricas, material de prácticas, textos y
soluciones de exámenes (ya celebrados, por supuesto) y videotutoriales sobre
algunos tópicos de la asignatura. Toda esta información es de acceso público.
A través del Campus Virtual de la ULPGC también se podrá acceder a
algunos de esos contenidos, así como utilizar los recursos para la participación del
estudiante y la evaluación de los trabajos. Por ejemplo, los trabajos prácticos se
entregarán mediante una tarea Moodle.
El servidor web sopa.dis.ulpgc.es, por tanto, servirá de «biblioteca» de la
asignatura, mientras que el Moodle será el «aula virtual» en la que estudiantes y
profesores participarán en el desarrollo de la asignatura.
Para acceder al Moodle deberán ir a http://mi.ulpgc.es, introducir su usuario
(DNI sin letra) y contraseña (la misma que emplean para el correo institucional) y
dentro del apartado «Mi Campus Virtual», «Enseñanzas de grado y posgrado. Curso
2013/2014» deberán encontrar una entrada para la asignatura de Fundamentos de
los Sistemas Operativos. Si no es así, es posible que aún no figuren matriculados en
la asignatura en el Campus Virtual: contacten con la Administración del Edificio.
7.5 Comunicaciones oficiales
Los comunicados oficiales de la asignatura se enviarán siempre a través del
Moodle, por ejemplo los anuncios de fechas de entrega, las calificaciones, eventos,
imprevistos, etc. El correo electrónico y el Moodle serán los medios de comunicación
preferentes para esta clase de comunicados. Esto quiere decir que los estudiantes
deberán visitar el Moodle con frecuencia, y consultar habitualmente su cuenta de
correo de estudiante en la ULPGC (la que tiene el dominio @alu.ulpgc.es o
@estudiantes.ulpgc.es).
12. 10 - Sistemas Operativos
8. Bibliografía básica
La bibliografía básica es el conjunto de libros que bastan para el aprendizaje
completo de la asignatura, según los temarios teórico y práctico; a continuación se
presentarán indicando para cada una su título, autor y editorial, más un breve
comentario. De todas estas obras existen ejemplares suficientes en la Biblioteca del
Edificio de Informática y Matemáticas.
8.1 Sistemas operativos
Los siguientes libros engloban la práctica totalidad del temario de la asignatura.
Aunque existen suficientes ejemplares en biblioteca, no es mala inversión adquirir
uno de ellos para que engrose las estanterías del estudiante.
FUNDAMENTOS DE SISTEMAS OPERATIVOS: TEORÍA Y EJERCICIOS RESUELTOS
S. Candela, R. García, A. Quesada, F. Santana, J.M. Santos
Thomson Paraninfo, 2007
Este libro es fruto de la experiencia acumulada por los profesores del
Departamento de Informática y Sistemas de la ULPGC, que durante más de
dos décadas han impartido las asignaturas de Sistemas Operativos en las
ingenierías en Informática. Esta obra contiene, además del contenido
teórico, una selección de preguntas y ejercicios resueltos que abarcan todo el
temario de la asignatura y que pueden ser utilizadas por los estudiantes
para afianzar sus conocimientos a través de la autoevaluación.
SISTEMAS OPERATIVOS (SÉPTIMA EDICIÓN)
A. Silberschatz, P. Galvin
McGraw-Hill, 2006
El llamado libro de los dinosaurios es un texto esencial en Sistemas
Operativos, que cubre la mayor parte de los temas de la asignatura.
Imprescindible como libro de texto. Aunque ponemos como referencia la
séptima edición, ediciones anteriores a partir de la cuarta sirven
perfectamente para seguir la asignatura.
8.2 Operación en el sistema UNIX
Como complemento al adiestramiento que se recibirá en las clases prácticas, se
recomiendan estas obras:
GUÍA DE OPERACIÓN EN UNIX
J. M. Santos
Servicio de publicaciones EUI, 1996
Trata a un nivel introductorio-medio la operación en el entorno UNIX,
llegando a nociones sobre la programación de shell scripts. El libro se
complementa con los trípticos o chuletas que se entregarán en las clases
prácticas.
13. Guía de la asignatura - 11
EDICIÓN ESPECIAL LINUX (CUARTA EDICIÓN)
J. Tackett y S. Burnett
Prentice-Hall, 2000
Un libro que cubre la instalación, la administración y el uso cotidiano de
sistemas Linux.
8.3 Programación en C
Este es un título válido para el aprendizaje del lenguaje C que es necesario en la
asignatura:
C: MANUAL DE REFERENCIA
H. Schildt
McGraw-Hill, 2001
Ideal para el aprendizaje del lenguaje C, explica tanto las características del
mismo como bastantes funciones de biblioteca.
9. Bibliografía complementaria
En esta sección se incluyen textos que, o bien sirven para profundizar en materias de
la asignatura, o bien son referencias concretas para algunos temas no suficientemente
cubiertos por la bibliografía básica.
9.1 Fundamentos de sistemas operativos
Los siguientes títulos abarcan todo el temario de la asignatura y se podrían
emplear como libros de texto alternativos al recomendado.
SISTEMAS OPERATIVOS: ASPECTOS INTERNOS Y PRINCIPIOS DE DISEÑO (QUINTA EDICIÓN)
W. Stallings
Prentice Hall, 2005
SISTEMAS OPERATIVOS: TEORÍA Y PROBLEMAS
Joaquín Aranda Almansa... [et al.]
Sanz y Torres, 2002
SISTEMAS OPERATIVOS. UNA VISIÓN APLICADA (SEGUNDA EDICIÓN)
J. Carretero, P. De Miguel, F. García y F. Pérez
McGraw-Hill, 2007
9.2 Programación concurrente
PROGRAMACIÓN CONCURRENTE
José Tomás Palma Méndez, María del Carmen Garrido Carrera, Fernando Sánchez
Figueroa, Alexis Quesada Arencibia
Thomson, 2003
Un texto básico para entender los aspectos de la concurrencia que se
explican en la asignatura.
14. 12 - Sistemas Operativos
CONCURRENT PROGRAMMING
A.Burns, G. Davies
Addison-Wesley, 1993
Un texto básico para entender los aspectos de la concurrencia que se
explican en la asignatura, en particular los capítulos 1, 2, 3, 6 y 7.
PRINCIPLES OF CONCURRENT AND DISTRIBUTED PROGRAMMING
M. Ben-Ari
Prentice-Hall, 1990
Un texto clásico sobre concurrencia. Los primeros capítulos cubren el área
temática de concurrencia de la asignatura.
15. Guía de la asignatura - 13
10. Temario detallado
Este es el temario teórico de la asignatura, con un mayor nivel de detalle en sus
contenidos.
1. Conceptos sobre sistemas operativos
• El sistema operativo como interfaz: API, llamadas al sistema, CLI, GUI,
recursos virtuales.
• El sistema operativo como administrador de recursos: procesos y recursos;
políticas de gestión; objetivos de eficiencia, seguridad y equidad; interbloqueo
e inanición.
• Tipos de sistemas informáticos.
• Arquitectura del hardware para el SO: sistema de interrupciones,
excepciones, modo dual de operación, jerarquía de memorias.
• Componentes del sistema operativo: programas del sistema, núcleo, shell;
arquitecturas de núcleos; máquinas virtuales.
2. Procesos
• Sistemas multitarea: estados de un proceso; colas; cambio de contexto; niveles
de planificación.
• Servicios: procesos pesados e hilos; llamadas al sistema usuales.
• Planificación del procesador: políticas básicas (FCFS, SJF, Round Robin,
prioridades); evaluación de las políticas; métodos multicolas;
multiprocesadores.
3. Concurrencia
• Programación concurrente: especificación algorítmica; beneficios para el
programador.
• Propiedades de los sistemas concurrentes: no determinismo; necesidad de
sincronización; acciones atómicas.
• El problema de la sección crítica.
• Sincronización: problemas clásicos; semáforos; técnicas de solución de
problemas de sincronización.
16. 14 - Sistemas Operativos
4. Memoria
• Elementos comunes: fragmentación; gestión del espacio libre; protección;
espacios de direcciones lógicos y físicos; traducción de direcciones y MMU.
• Gestión de memoria contigua: enlace dinámico; políticas de gestión del
espacio libre; intercambio (swapping).
• Gestión de memoria no contigua: segmentación; paginación; TLB;
compartición y protección de zonas de memoria.
• Memoria virtual: paginación por demanda; algoritmos de reemplazo; modelo
del área activa (working set).
5. Archivos
• Interfaz del sistema: estructura y atributos de los ficheros; operaciones sobre
ficheros; métodos de acceso; organización en directorios.
• Implementación del sistema: estructura de un sistema de ficheros; políticas
de asignación de espacio a archivos; implementación de directorios; cachés;
planificación de operaciones de E/S.
11. ¡No olvidar!
• Consultar el buzón de correo institucional (@estudiantes.ulpgc.es)
• Visitar frecuentemente el Moodle de la asignatura.
• Actualizar el perfil de usuario de Moodle con una foto «reconocible».