quarta-feira, 5 de dezembro de 2007




Conteúdos Teóricos:
1. Introdução
1.1. Conceito de Sistema Operativo
1.2. Sistemas Batch Simples
1.3. Sistemas Batch Multiprogramados
1.4. Sistemas de Time-Sharing
1.5. Sistemas de Computação Pessoal
1.6. Sistemas Paralelos
1.7. Sistemas Distribuídos
1.8. Sistemas de Tempo Real 2. Estruturas do Sistema de Computação
2.1. Operação de sistemas computacionais
2.2. Estrutura de sistemas de E/S
2.3. Estrutura de sistemas de armazenamento
2.4. Hierarquia de armazenamento
2.5. Protecção pelo hardware
2.6. Arquitectura geral do sistema
3. Estruturas do Sistema Operativo
3.1. Componentes de um sistema
3.2. Serviços implementados por sistemas operacionais
3.3. Chamadas ao sistema
3.4. Programas de sistemas
3.5. Estruturas de sistemas
3.6. Máquinas virtuais
3.7. Projecto e implementação de sistemas
3.8. Configuração do sistema
4. Gestão de Processos
4.1. Conceito de processo
4.2. Selecção de processo
4.3. Operações sobre processos
4.4. Processos cooperativos
4.5. Fluxos execução
4.6. Comunicação entre processos
5. Alocação da CPU
5.1. Conceitos básicos
5.2. Critérios de alocação

5.3. Algoritmos de alocação
5.4. Alocação de vários processadores
5.5. Alocação em tempo real
5.6. Avaliação de algoritmos
6. Sincronização entre Processos
6.1. Fundamentos
6.2. O problema das regiões críticas
6.3. Hardware de sincronização
6.4. Semáforos
6.5. Problemas clássicos de sincronização

Conteúdos Práticos:
1. Comandos fundamentais da shell em Linux (revisões).
2. Programação concorrentes em Linux:
2.1. Gestão de processos: primitivas fork, getpid, getppid, exit, exec*, system, wait e waitpid;
2.2. sinais: primitivas kill, sgnal, pause, sleep e alarm;
2.3. memória partilhada: primitivas shmget, shmat, shmdt e shmctl;
2.4. semáforos: primitivas semget, semctl e semop;
2.5. mensagens: primitivas msgget, msgctl, msgsnd e msgrcv;

Bibliografia:

- “Sistemas Operacionais – 5ª edição” – Silberschatz & Galvin, Prentice Hall.
- “Operating System Concepts” – Silberschatz & Galvin, Addison-Wesley;
- “Operating System: A Design Oriented Approach” – Charles Crowley, McGraw Hill;
- “Fundamentos de Sistemas Operativos” – José Alves Marques & Paulo Guedes, Editorial Presença;
- “Sistemas Operacionais Modernos” – Andrew S. Tanenbaum, Prentice-Hall do Brasil;
- “Linux Programmer´s Reference” – Richard Petersen, Osborne McGraw-Hill;
- “Linux Application Development”, Michael K. Johnson, Erik W. Troan, Addison-Wesley.

Nenhum comentário: