CI215: Sistemas Operacionais

Segundo Semestre de 2009
Prof. Wagner M. Nunan Zola



Ementa:
Componentes de um sistema. Administração dos recursos: memória principal e secundária. Administração dos processos: prioridades, interrupção, filas. Comunicação entre processos: semáforos e mensagens. Segurança.

Objetivo: Apresentar ao aluno os fundamentos da implementação e operação de sistemas operacionais. Discutir formas de gerenciamento dos recursos do hardware tais como processador, memória e dispositivos de entrada e saída. Discutir problemas inerentes ao compartilhamento de recursos e suas soluções.

Pré-requisito(s): CI057 - Algoritmos e Estruturas de Dados III, CI212 - Organização e Arquitetura de Computadores


Livro texto:
    A Silberschatz, P Galvin, G Gagne. Operating Systems Concepts, 6a. edição, Wiley, 2003, na biblioteca C&T - UFPR

Referências adicionais:

  1. Abraham Silberschatz, Peter Galvin, Greg Gagne, Sistemas Operacionais - Conceitos, Ed. Pearson Education do Brasil Ltda., 2001, (tradução de quinta edição por Camarão, Carlos ; FIGUEIREDO, L., na biblioteca C&T UFPR)
  2. A S Tanenbaum. Sistemas Operacionais Modernos, 2a. edição, Pearson, 2003, ISBN 858791857-5.
  3. W Stallings. Operating Systems - Internals and Design Principles, 4a. edição, Prentice-Hall, 2001.
  4. A S Tanenbaum. Distributed Operating Systems, Prentice-Hall, 1994.

Material de apoio:
  1. Dennis M. Ritchie, Ken Thompson,  The UNIX Time-Sharing System
  2. Dennis M. Ritchie, The Evolution of the Unix Time-sharing System
  3. GORMAN, Mel; Understanding the Linux Virtual Memory Manager. <http://www.informit.com/content/images/0131453483/downloads/gorman_book.pdf>

Avaliações e trabalhos:
AVISO:
Notas de Aula :


Assunto
(OBS: Cronograma ainda em construcao)
Aula
Aula
Slides
Apresentação 25/ago
31/jul
-
Histórico, Função e propósito. Estrutura dos sistemas operacionais. Princípios de projeto de sistemas operacionais. 28/ago
01/set
4/ago
7/ago
a
Mecanismos necessários para suporte a proteções. 04/set
11/ago
b
Processos.
11/set
15/set
18/set
14/ago
18/ago
21/ago

Discutir dúvidas sobre trabalho 1. 22/set 25/ago
Threads. 25/set
29/set
02/out
06/out
28/ago
1/set
4/set

Sincronização entre processos: parte 1, incluindo semáforos (matéria da prova 1)
06/out
09/out
13/out
16/out
08/set
11/set
15/set

reserva de aula sobre sincronização (fim da parte 1 ou início da parte 2 de sincronização entre processos com monitores, que será matéria da prova 2)
20/out

18/set
Entrega do trabalho 1. (entrega eletrônica, em diretório padrão ver aqui!) 23/out

Aula de exercícios. 23/out 22/set
Prova 1. 27/out 25/set
Sincronização entre processos: parte 2, monitores e outros (esse módulo fica para prova 2) 30/nov 29/set
02/out

Gerenciamento de processos e escalonamento do processador. 03/nov
06/nov
06/out
09/out
13/out

Deadlocks. 10/nov
13/nov
16/out
20/out

Aula de exercícios. 13/nov 23/out
Prova 2. 17/nov 27/out

Gerenciamento de memória. Esquemas de gerenciamento de memória. 20/nov 30/out
Memória virtual. 20/nov 3/nov
Paginação, segmentação, princípio da localidade e do conjunto de trabalho. 24/nov 06/nov
Sistema de arquivos. Memória secundária. Mapeamento de arquivos. 27/nov
10/nov
Dispositivos de entrada e saída. Projeto, interface e desempenho de sistemas de entrada e saída. 27/nov 13/nov
Segurança e proteção.
27/nov 16/nov
Sistemas operacionais distribuídos. (Noções). 01/dez
20/nov
Entrega do código fonte e makefile do trabalho 2 (em diretório a ser definido)
01/dez
--/nov

Aula de exercícios. 01/dez
24/nov
Prova 3. 04/dez
27/nov

Trabalho 2:
  • Entrega eletrônica da documentação (relatório em html) do trabalho 2 (em diretório a ser definido
07/dez
--/nov
Defesa de trabalhos. 08/dez

Exame final. 18/dez
--/Dez



Listas de Exercícios:

ENTREGA de TRABALHOS: (ver aqui!)