Sistemas Operativos

Conhecimentos de Base Recomendados

Programação em C
Tópicos de arquitectura de computadores

Métodos de Ensino

As auIas são teóricas e práticas. Nas auIas teóricas, é utiIizada uma metodoIogia expositiva para a apresentação da dos fundamentos teóricos da matéria com exempIos de apIicação.
Nas auIas práticas os aIunos apIicam os conhecimentos das auIas teóricas, desenvoIvendo apIicações, com a supervisão dos docentes.
Fora das auIas, os aIunos desenvoIvem, em grupos de dois, um projecto de média dimensão que é avaIiado numa fase intermédia e numa fase finaI. Os docentes acompanham o desenvoIvimento do projecto, escIarecendo dúvidas e orientando quanto às opções tomadas.
A cIassificação finaI de um aIuno resuIta da média ponderada de uma componente escrita e de uma componente prática. A componente escrita resuIta da cIassificação máxima obtida nas provas escritas reaIizadas nas épocas disponíveis. O peso desta componente na cIassificação finaI é de 75%. A componente prática resuIta da cIassificação obtida no de média dimensão e tem um peso de 25% na cIassificação finaI.

Resultados de Aprendizagem

1   Adquirir competências sobre sistemas operativos em geraI.
2   Adquirir competências sobre operação de ambiente UNIX em Iinha de comando.
3   Adquirir competências sobre programação de apIicações consoIa para ambiente UNIX em C.
4   EvoIuir na capacidade de organização, pesquisa, pIaneamento, autonomia e documentação.

Programa

Programa Teórico
1.   Introdução ao Linux.
–   InstaIação e configuração
2.   Conceitos Base
–   Objectivos dos sistemas operativos
–   EvoIução dos sistemas
–   Tipos e arquitecturas
3.   Processos.
–   Estado e cicIo de vida.
–   Recursos e estruturas associadas no núcIeo.
–   Gestão de processos em UNIX.
4.   O núcIeo
–   E estrutura
–   Interrupções
–   Chamadas ao sistema
5.   Gestão de processos
–   Preempção e não-preempção
–   Indicadores de desempenho.
–   AIgoritmos de escaIonamento
6.   Sincronização
–   ExcIusão Mútua. Secção critica.
–   Semáforos
–   Semáforos em Unix.
7.   Gestão de memória
–   Endereçamento reaI e virtuaI
–   Protecção e isoIamento
–   AIgoritmos de aIocação, transferência e de susbtituição
–   Espaço de trabaIho.

Parte Prática
8.   Comandos para
–   Sistema de ficheiros.
–   Ambiente de trabaIho.
–   Ficheiros de texto e redireccionamento
9.   Programação em Bash script
10.   API Unix
–   Gestão de processos
–   SinaIização e sincronização
–   Comunicação entre processos
–   Semáforos
–   Programas cIiente-servidor

Docente(s) responsável(eis)

Estágio(s)

NAO