Arquitectura de Computadors i Sistemes
Operatius II
Curs 2008-2009 (Quadrimestre de tardor)
Professors de l’assignatura
Temari
1. Introducció als Sistemes Operatius (2 hores)
1.1. Història
Des de les
primeres màquines sense SO fins els actuals sistemes multiprocés i multiusuari,
passant pels sistemes “batch” (de cues)
1.2. Parts
d’un Sistema Operatiu
§
Espai d’usuari i espai de sistema
§
Disseny monolític, per capes i per components:
micro-kernels i llibreries
§
Principals components del Sistema Operatiu:
gestió de l’execució, gestió de la memoria i gestió de l’entrada/sortida.
2. Intèrpret de comandes a UNIX (Shell) (4 hores)
2.1.
Introducció a UNIX
§
El sistema de fitxers
§
L’interpret de comandes
§
El sistema X Windows.
2.2. Comandes
bàsiques
§
Metacaràcters
§
Control de processos
§
Redirecció de l’entrada/sortida: filtres.
2.3. Programar
en llenguatge del Shell: scripts
§
Variables especials, locals i globals
§
Control de fluxe
§
Iteracions
3. Sistema de Fitxers (4 hores)
3.1.
Introducció als sistemes de fitxers
§
Tipus de fitxers i operacions.
§
Sistemes de fitxers
basats en FAT.
§
Sistemes de fitxers
basats en i-node.
3.2. Crides a
sistema
§
creat()/open()/close().
§
read()/write().
§
dup().
4. Processos (6 hores)
4.1. Introducció
§
Definicio de procés.
§
Espai d’adreces i
assignació de recursos
4.2.
Planificació i gestió de procesos
§
Estats d’un procés: creació, bloqueig i
destrucció
§
Concurrència i
paral.lelisme.
§
Canvi de contexte i
temps compartit
§
Polítiques de planificació: FIFO, round-robin,
prioritats.
4.2. Crides a
sistema
§
fork()
§
wait()/exit().
§
exec().
5. Comunicació entre processos: pipes (4 hores)
5.1. Introducció
§
Comunicació i sincronització entre processos
§
Pas de missatges i memòria compartida.
§
Pipes i rel.lació entre processos.
5.2. Crides a
sistema
§
pipe().
6. Gestió d’events: Signals (6 hores)
6.1. Introducció als events
§
Tipus d’events: hardware i software.
§
Programació d’events
§
Característiques
específiques del treball amb events: herència, reprogramació
6.2. Crides a
sistema
§
signal()/sigaction(), sigprocmask().
§
kill()/alarm()
§
pause()
7. Comunicació remota entre processos: Sockets (8 hores)
7.1. Introducció
§
El model client-servidor.
§
El model OSI i el protocol de comunicació TCP/IP
7.2. Sockets
§
Què és un socket.
§
Tipus de socket
7.3.
Introducció al subsistema de xarxa de Linux
7.4. Crides a
sistema
§
socket().
§
connect()/bind()/listen()
§
send()/receive()
§
close()
Bibliografía bàsica
· Operating
System Concepts. 7th Edition. A. Silberschatz, P.B. Galvin, G. Gagne. John
Wiley & Sons, Inc. 2.004 (Accés a material a
http://codex.cs.yale.edu/avi/os-book/).
·
UNIX y LINUX. Guía práctica. Sebastián Sánchez. Ed. Ra-Ma 1999.
· Linux System
Programming. Robert Love. O’Reilly, 2.007.
· The C
Programming Language. Brian W. Kernighan, Dennis M. Ritchie. 2nd Edition.
Prentice-Hall, 1998.
Bibliografía complementària
· Computer
Systems. A Programmer’s Perspective. Randal E. Bryant, David O’Hallaron. Pearson Educaction, 2.003.
·
The Practice of Programming. Brian W. Kernighan,
Rob Pike. 1st Edition. Prentice-Hall, 1999.
Material de l’assignatura d’anys anteriors:
http://ariso2.ac.upc.edu/