LRM Prof. Mantovani ← Disciplinas

Sistemas Operacionais

Como o sistema operacional gerencia processos, memória, arquivos e dispositivos — dos fundamentos à concorrência, sincronização e memória virtual.

🎓 Ciência da Computação🏫 Presencial💻 Prática em laboratório
48hTeórica
24hPrática
72hTotal
Extensão
Material das aulas

Aulas interativas, simuladores e simulado

Conteúdo completo das 14 aulas — teoria didática, simulações para testar os conceitos direto no navegador, atividades em grupo e um simulado estilo ENADE com gabarito comentado.

📘 Acessar as aulas → 🧪 Laboratório de simulações 🎯 Simulado ENADE
1 · Identificação

Dados da disciplina

Disciplina
Sistemas Operacionais
Curso
Ciência da Computação
Modalidade
Presencial
Carga teórica
48h
Carga prática
24h
Carga total
72h
Pré-requisitos
Nenhum
Competências

O que você vai desenvolver

Compreender os princípios, a arquitetura e o funcionamento dos sistemas operacionais; analisar e comparar políticas de gerência de processos, memória, arquivos e entrada/saída; aplicar mecanismos de concorrência e sincronização; avaliar desempenho, confiabilidade e segurança de sistemas operacionais modernos.

2 · Ementa

Ementa

Fundamentos e estrutura de sistemas operacionais. Gerência de processos, threads e escalonamento. Concorrência, sincronização e deadlocks. Gerência de memória e memória virtual. Sistemas de arquivos e gerência de entrada/saída. Virtualização e tópicos modernos.

3 · Objetivos

Objetivos

Compreender o papel e a arquitetura de um sistema operacional; dominar os mecanismos de gerência de processos, memória, arquivos e E/S; implementar e avaliar soluções de concorrência, sincronização e escalonamento.

4 · Conteúdo Programático

Cronograma de 14 semanas

Uma aula por semana. Clique em cada semana para ver os tópicos.

1Introdução aos sistemas operacionaisSemana 1
  • Funções e objetivos de um SO
  • Evolução histórica e tipos de SO
  • Visão do SO como gerenciador de recursos
2Estrutura do sistema operacionalSemana 2
  • Kernel, modo usuário × modo núcleo
  • Chamadas de sistema
  • Arquiteturas: monolítica, microkernel, camadas
3ProcessosSemana 3
  • Conceito de processo e PCB
  • Estados e transições
  • Criação e término de processos
4Threads e concorrênciaSemana 4
  • Threads de usuário e de núcleo
  • Modelos de multithreading
  • Concorrência × paralelismo
5Escalonamento de processosSemana 5
  • Critérios de escalonamento
  • FCFS, SJF, Round-Robin, prioridades
  • Escalonamento multinível
6Comunicação entre processos (IPC)Semana 6
  • Memória compartilhada e troca de mensagens
  • Pipes, sockets e sinais
7Sincronização · Prova 1Semana 7
  • Exclusão mútua e condição de corrida
  • Semáforos e monitores
  • Avaliação 1 (semanas 1–6)
8DeadlocksSemana 8
  • Condições necessárias
  • Prevenção, evitação (banqueiro), detecção e recuperação
9Gerência de memóriaSemana 9
  • Alocação contígua e particionamento
  • Paginação e segmentação
  • Laboratório: simulação de alocação
10Memória virtualSemana 10
  • Paginação por demanda
  • Algoritmos de substituição (FIFO, LRU, ótimo)
  • Thrashing e working set
11Sistemas de arquivosSemana 11
  • Arquivos, diretórios e atributos
  • Métodos de alocação e gerência de espaço livre
12Gerência de E/S e armazenamentoSemana 12
  • Subsistema de E/S e buffering
  • Escalonamento de disco (FCFS, SSTF, SCAN)
13Virtualização e tópicos modernos (prática)Semana 13
  • Máquinas virtuais e contêineres
  • Segurança e proteção
  • Estudo de caso: Linux
14Apresentações · Revisão geral · Prova 2 / ExameSemana 14
  • Apresentação dos projetos
  • Revisão geral
  • Avaliação 2 e exame, quando aplicável
📌 Ementa e cronograma elaborados pelo professor para o curso de Ciência da Computação (ênfase em conceitos, concorrência e gerência de recursos). Aberto a ajustes conforme o projeto pedagógico do curso.
5 · Metodologia

Como as aulas acontecem

Aulas expositivas, dialogadas e interativas, com práticas em laboratório usando Linux e simuladores de sistemas operacionais.

Atividades
  • Aulas expositivas e dialogadas
  • Questionários escritos (Quiz)
  • Práticas em laboratório (Linux/simuladores)
  • Resolução de exercícios e estudos de caso
Recursos didáticos
  • Textos e artigos digitais
  • Recursos multimídia: vídeos, mapas conceituais e mentais
  • Simuladores de SO e ambiente Linux
  • Plataforma Moodle
6 · Avaliação

Composição da nota

Avaliação processual, diagnóstica, formativa e contínua ao longo de toda a disciplina.

InstrumentoAtividadeNaturezaPeso
AvaliaçãoProva teórica/prática individualConceitual6,0
TrabalhoProjeto / atividades em grupoProcedimental2,0
QuizExercícios / questionamentos individuaisAtitudinal e conceitual2,0
Aprovação direta com média final ≥ 7,0.
Direito a exame com média parcial ≥ 5,0.
Frequência mínima de 75% exigida por lei.
7 · Bibliografia

Referências

Básica

  • TANENBAUM, A. S.; BOS, H. Sistemas operacionais modernos. 4. ed. São Paulo: Pearson, 2016.
  • SILBERSCHATZ, A.; GALVIN, P. B.; GAGNE, G. Fundamentos de sistemas operacionais. 9. ed. Rio de Janeiro: LTC, 2015.
  • STALLINGS, W. Arquitetura e organização de computadores. / Sistemas operacionais. 6. ed. São Paulo: Pearson, 2010.

Complementar

  • MAZIERO, C. A. Sistemas operacionais: conceitos e mecanismos. UFPR, 2019.
  • OLIVEIRA, R. S.; CARISSIMI, A. S.; TOSCANI, S. S. Sistemas operacionais. 4. ed. Porto Alegre: Bookman, 2010.
  • LOVE, R. Linux Kernel Development. 3rd ed. Addison-Wesley, 2010.
  • TANENBAUM, A. S. Sistemas distribuídos: princípios e paradigmas. 2. ed. Pearson, 2007.