Skip to content

GSD

Sections
Personal tools
You are here: Home » Teaching » Sistemas Operativos II » 5306O2 - Sistemas Operativos II (2005 - 2006)

5306O2 - Sistemas Operativos II (2005 - 2006)

Document Actions
Up one level

Docente responsável pela disciplina
Francisco Soares de Moura
Docente responsável pelas aulas teóricas
Francisco Soares de Moura
Docentes responsáveis pelas aulas teorico-práticas
Carlos Baquero Moreno

José Orlando Pereira

Rui Carlos Oliveira

Victor Francisco Fonte


Aulas teóricas
3ª-feira, 11H00-13H00
Aulas teórico-práticas
2ª-feira, 14H00-17H00

2ª-feira, 17H00-20H00

3ª-feira, 08H00-11H00

3ª-feira, 16H00-19H00

Atendimento
Francisco Soares de Moura: 3ª-feira, 09H30-10H30, ou a combinar por e-mail.

Victor Francisco Fonte: 3ª-feira, 11H00-13H30, ou a combinar por e-mail.


Exame final (90%) + miniteste (10%)


  • Introdução
  • Gestão de ficheiros: objectivos, concretização, sistemas de ficheiros distribuídos
  • Programação concorrente: modelos baseados em memória partilhada, mensagens, cliente-servidor.
  • Programação em sistemas distribuídos: motivação, problemas, mecanismos de comunicação

  • Introdução
    • Concorrência e distribuição nos sistemas operativos e aplicações
  • Gestão de ficheiros
    • Objectivos, compromissos
    • Concretização em Unix, Windows, etc.
    • RAID e sistemas de ficheiros baseados em "diário".
    • Sistemas de ficheiros distribuídos: NFS
  • Programação concorrente
    • Modelos baseados em memória partilhada, mensagens, e operações remotas
    • Modelo cliente-servidor
    • Resolução de exercícios
  • Programação em sistemas distribuídos
    • Motivação, problemas a resolver
    • Mecanismos de comunicação
    • Exercícios


Esta disciplina surgiu pela primeira vez no ano lectivo de 1995/96, como consequência da restruturação das Licenciaturas em Engenharia de Sistemas e Informática e Matemática e Ciências da Computação. O seu programa é em parte coincidente com o do segundo semestre da antiga disciplina de Sistemas Operativos, embora tenham sido feitas actualizações consideráveis de modo a acompanhar a evolução dos sistemas operativos (e linguagens) actuais, sobretudo no que diz respeito ao suporte a aplicações distribuídas.

Nesta disciplina aprofundam-se os conhecimentos de programação concorrente adquiridos no primeiro semestre em Sistemas Operativos I e entra-se já no desenvolvimento de aplicações distribuídas baseadas no modelo cliente-servidor. Tira-se partido da mudança da componente de gestão de ficheiros do primeiro para o segundo semestre para ilustrar o modelo cliente-servidor e os sistemas de ficheiros para ambientes distribuídos (NFS). Usam-se ainda ficheiros para recordar a necessidade de exclusão mútua no acesso simultâneo a recursos, passando-se depois aos algoritmos clássicos de sincronização tipo "leitores-escritores" com prioridades, que são resolvidos com semáforos, mutexes, mensagens, etc, em sistemas operativos como o Linux, Solaris ou Windows XP. Capitaliza-se nos conhecimentos de processos, threads e mecanismos de comunicação para desenvolver servidores (acesso a bases de dados, impressoras, etc), que posteriormente são distribuídos de uma forma natural à custa da utilização de sockets. A disciplina termina com o desenvolvimento de pequenas aplicações distribuídas em Java.

Esta é uma disciplina cuja componente dita "teórica" é muito reduzida. Cobre essencialmente aspectos de gestão avançada de ficheiros, incluindo a percepção das vantagens da utilização de discos RAID e de sistemas de ficheiros baseados em "diário" (Log-strutured File Systems), descendo ainda ao escalonamento de pedidos de transferência de disco. Por este motivo, procura-se que uma parte das aulas teóricas seja de diálogo e síntese de conceitos, e dedica-se o resto das aulas à discussão de problemas de programação concorrente e distribuída, e à resolução de exames de anos anteriores. Pelo mesmo motivo, a cotação do exame final assenta essencialmente nos exercícios práticos.


Aulas teóricas
21 Fev 2006
Apresentação da disciplina. Inscrição nos turnos práticos.
07 Mar 2006
Gestão de Ficheiros: visão operacional.
17 Mar 2006
Gestão de Ficheiros: Objectivos, questões a resolver. Persistência, eficiência, rapidez, segurança, etc. Exemplos.
24 Mar 2006
Gestão de ficheiros: Estratégias de escalonamento de pedidos de transferência (FIFO, SSTF, SCAN/Elevator, C-SCAN). Caso prático: esboço de algoritmo FIFO. RAID: objectivos, RAID tipo 0, 1 e 5.
28 Mar 2006
Estudo de casos de sistemas de ficheiros: FAT, i-nodes, coerência de sistemas de ficheiros. Log-structured file systems.
04 Abr 2006
Programação Concorrente: Concorrência vs. paralelismo, Interacção (cooperação e competição), Sincronização, Comunicação. Modelos de concorrência, processos e threads. Exemplos de competição por recursos partilhados, tentativas de implementação de mecanismos de exclusão mútua.
11 Abr 2006
Operações sobre semáforos, resolução de problemas de sincronização, exclusão mútua e capacidade.
5306O2 - Sistemas Operativos II (2005 - 2006) Apontamentos das Aulas Teóricas
Pasta com documentos de apoio às Aulas Teóricas
5306O2 - Sistemas Operativos II (2005 - 2006) Exames SOII
Sortido de exames de anos anteriores
5306O2 - Sistemas Operativos II (2005 - 2006) Guiões das Aulas Práticas
5306O2 - Sistemas Operativos II (2005 - 2006) exame de recurso
Notas exame 18 de Julho
Created by gsd
Last modified 2006-04-11 10:31 PM
« March 2015 »
Su Mo Tu We Th Fr Sa
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        
 
 

Powered by Plone

This site conforms to the following standards: