Curs 2007-2008
Enginyeria en Informàtica
 
Arquitectura i Enginyeria de Computadors II (12462)
 

Descripció
En aquesta assignatura s'amplien alguns dels temes estudiats en assignatures anteriors, en particular la de Sistemes Operatius, amb aspectes com la comunicació entre processos i els sistemes operatius distribuïts. Com que aquesta assignatura inclou la implementació de servidors per a serveis distribuïts, s'estudien també les característiques d'arquitectures de hardware orientades a tipus concrets d'aplicació.

Objectius
Aquesta assignatura té com a principal objectiu estudiar els sistemes distribuïts, en particular el desenvolupament de serveis distribuïts que cada vegada són més importants pel nombre d'ordinadors involucrats en la implementació d'algunes aplicacions. Al final d'aquesta assignatura, l'estudiant haurà de ser capaç de:

1- Implementar programes que permetin la comunicació entre múltiples processos;
2- Dissenyar i implementar aplicacions concurrents;
3- Implementar servidors (software) per a serveis distribuïts

Temari

Part 1. Arquitectures especialitzades

  • Orientades a llenguatges: Java Virtual Machine
  • Orientades a aplicacions: Extensions multimèdia

Part 2. Arquitectures distribuïdes

  • Arquitectures de hardware
  • Arquitectures de software
    +Client/Servidor
    +Peer-to-Peer (xarxes d'iguals)

Part 3. Mecanismes d'aplicacions distribuïdes

  • Sistemes operatius distribuïts

    + Comunicació entre processos
    + Sincronització, consistència y replicació
    + Sistemes de fitxers distribuïts
    + Comunicació multimèdia
    • Protocols multicast
    • Protocols de temps real

  • Aplicacions d'Internet

    + DNS (Domain Name System): sistema de nombres
    + CDNs (Content Delivery Networks): red de distribución de contenido

Organització
Durant l'assignatura, els estudiants desenvoluparan un projecte de sistemes distribuïts. Aquest projecte utilitzarà conceptes vistos durant les classes teòriques. No obstant això, el projecte no cobrirà tots els tòpics vistos en la classe teòrica, i se centrarà en el desenvolupament de serveis distribuïts utilitzant els paradigmes Client-Servidor i Peer-to-Peer.

Pràctiques
Durant les hores de pràctiques, els estudiants treballaran en un projecte en grups. El projecte serà organitzat en diferents etapes i en cada etapa els estudiants treballaran en diferents aspectes del desenvolupament de serveis distribuïts.

Mètode d’avaluació
L'avaluació de l'assignatura serà a través de les notes d'un examen parcial, un examen final, i d'un projecte. La nota final serà la suma ponderada de les dues notes amb els següents pesos:
1- Examen parcial (20%) * Primera i Segona parts
2- Projecte (40%) * Informe del projecte * Presentació
3- Examen final (40%)

Observacions
Es recomana haver cursat Programació II (12407), Computadors II i III (12410, 12411), Sistemes Operatius (12414) i Introducció a les Xarxes d'Ordinadors (12455).

Bibliografia Bàsica:
TANENBAUM, A. S. Distributed Operating Systems. Prentice-Hall, 1995.
TANENBAUM, A. Structured Computer Organization, Prentice Hall
TANENBAUM, A. Distributed Systems: Principles and Paradigms, Prentice Hall
STALLINGS, W. Computer Organization and Architecture, Prentice Hall
COMER, D. Internetworking with TCP/IP, Prentice Hall
RICHARD STEVENS, W. UNIX Network Programming, Prentice Hall
RICHARD STEVENS, W TCP/IP Illustrated, Prentice Hall