INF 2 06 - Sistemas Operativos

Regente

Professor Doutor Paulo Alexandre Bressan

Objectivos

Dotar os alunos de conhecimentos teóricos e práticos sobre sistemas operativos, em particular, as funções e estrutura de um sistema operativo, as suas abstracções principais, identificar e usar os serviços de um sistema operativo e compreender os principais algoritmos subjacentes ao funcionamento de um sistema operativo.

Sinopse

Revisão de organização e arquitectura de computadores. Estruturas de sistemas operacionais. Conceitos básicos de processos. Escalonamento de processos. Algoritmos de escalonamento. Comunicação entre processos. Concorrência entre processos. Sincronização via semáforos. Sincronização via monitores. Detecção e prevenção de deadlocks. Gerenciamento de memória: alocação contínua e alocação particionada. Memória virtual: paginação, segmentação, segmentação com paginação e algoritmos de substituição de páginas. Interface de sistemas de arquivos. Implementação de sistemas de arquivos. Organização de sistemas de entrada/saída. Estruturas de armazenamento secundário e terciário. Introdução ao UNIX: noções básicas, estrutura das directorias, comandos e política de permissões. Compilação e debugging em Unix. Entrada e saídas em Unix. Processos. Modelos de comunicação: via Pipes, Sockets Stream e Sockets Datagram. Acesso a estruturas de dados sem sincronização: exclusão mútua e produtores/consumidores. Semáforos: problemas de sincronização.