SOP-EngTel (Plano de Ensino)

De MediaWiki do Campus São José
Ir para: navegação, pesquisa
LogoIFSCCampusSJ.png

MINISTÉRIO DA EDUCAÇÃO
SECRETARIA DE EDUCAÇÃO PROFISSIONAL E TECNOLÓGICA
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE SANTA CATARINA
CAMPUS SÃO JOSÉ
Curso de Engenharia de Telecomunicações

Plano de Ensino de 2017-1 - atual

Dados gerais
COMPONENTE CURRICULAR: SOP - SISTEMAS OPERACIONAIS
CARGA HORÁRIA: 4 HORAS/SEMANA 72 HORAS. TEÓRICA = 54 HORAS. LABORATÓRIO = 18 HORAS
UCs vizinhas
CÓDIGO: SOP29005
PRÉ REQUISITOS: PRG2, MIC
DISCIPLINAS SUCESSORAS: STE, STD
MÓDULO PROFISSIONALIZANTE
Objetivos
Ao final do curso os alunos deverão ser capazes de:
  • Entender a função de um sistema operacional;
  • Entender os mecanismos internos de um sistema operacional para escalonamento de processos e gerenciamento de recursos (memória, arquivos e dispositivos de entrada/saída);
  • Compreencer os mecanismos de um sistema operacional para segurança e proteção;
  • Desenvolver software utilizando APIs do sistema operacional.
Ementa
Introdução aos sistemas operacionais. Aspectos internos de gerenciamento de processos, do sistema de arquivos, de memória e de dispositivos de entrada/saída. Aspectos de segurança e proteção. Conceito de API. Interfaces com o usuário.
Conteúdo Programático
  1. Introdução aos sistemas operacionais: histórico, revisão de conceitos de hardware, conceitos de sistemas operacionais, chamadas de sistema, estrutura de sistemas operacionais;
  2. Gerenciamento de processos: processos, threads, comunicação entre processos (Troca de mensagens e Memória compartilhada), escalonamento;
  3. Programação concorrente: condições de corrida e regiões críticas, exclusão mútua (mutex), semáforos, monitores, barreiras, deadlock, problemas clássicos de programação concorrente;
  4. Gerenciamento de memória: espaços de endereçamento, memória virtual, paginação e segmentação, proteção de espaços de endereçamento, substituição de páginas, questões de projeto e implementação para sistemas de paginação;
  5. Sistema de arquivos: arquivos, diretórios, implementação do sistema de arquivos, gerenciamento e otimização de sistemas de arquivos (gerenciamento de espaço, backups, consistência, desempenho e desfragmentação, RAID), estudos de caso;
  6. Entrada/saída: princípios do hardware e software de E/S, camadas de software de E/S, implementação de drivers (discos, relógios, teclado, mouse, monitor), gerenciamento de energia;
Estratégias de ensino utilizadas
Aulas expositivas e dialogadas com o uso de lousa e projetor multimídia; roteiros de atividades em laboratório para aquisição de habilidades básicas; provas e projetos baseados no conteúdo programático para verificar aplicação dos conceitos abordados.
Critérios e instrumentos de avaliação
Registro realizado em conceitos numéricos entre 0 e 10.
Provas escritas (P)
  • P0: conteúdos 1, 2 e 3;
  • P1: conteúdos 4, 5, 6 e 7.
Trabalhos de programação (T) - entrega de código fonte e relatório.
  • T0: Uso de chamadas POSIX (e.g., fork/wait/exec);
  • T1: Programação concorrente com pthreads;
  • T2: Sistemas de arquivos;
  • T3: Implementação de driver como módulo do Linux.
Postura, assiduidade e comportamento:
  • C: conceito atribuído pelo professor com base na postura, participação, e comportamento do aluno ao longo do semestre.
Conceito final (F)
  • F := (4*P0 + 4*P1 + 2*T0 + 2*T1 + 2*T2 + 2*T3 + 4*C)/20
Mecanismo de recuperação
  • P: provas ao final do semestre. Será oferecida uma prova de recuperação composta de duas partes. A primeira parte contempla o conteúdo da P0, e o desempenho do aluno nesta parte substitui o conceito conseguido na P0. A segunda parte contempla o conteúdo da P1, e o desempenho do aluno nesta parte substitui o conceito conseguido na P1.
  • T: segunda chance. O aluno terá a oportunidade de apresentar novo trabalho corrigido no prazo de 10 dias após a publicação da correção pelo professor, sendo que o conceito máximo atribuído ao aluno neste caso será 7.
Critérios para aprovação (após recuperações) - ter no mínimo conceito 6 em cada uma das avaliações (P0, P1, T0, T1, T2, T3) e na média final (F).
Atividades Complementares
Serão realizados roteiros de atividades em laboratório para complementar os conhecimentos dos alunos;
Além dos roteiros, os seguintes trabalhos de desenvolvimento de software serão executados:
  • Implementação de um terminal utilizando chamadas POSIX fork/wait/exec
  • Programação concorrente com pthreads
  • Sistemas de arquivos
  • Implementação de driver como módulo do Linux
Bibliografia Básica
  1. Abraham Silberschatz, Peter Baer Galvin, Greg Gagne Fundamentos de sistemas operacionais; 8ª ed. Rio de Janeiro:LTC, 2010. 536p. ISBN 9788521617471
  2. Andrew S. Tanenbaum Sistemas operacionais modernos; 3ª ed. São Paulo:Pearson Education do Brasil, 2010. 672p. ISBN 9788576052371
  3. Rômulo S. Oliveira; Alexandre S. Carissimi; Simão S. Toscani Sistemas Operacionais; 4ª ed. Porto Alegre:Bookman, 2010. 375p. ISBN 9788577805211
Bibliografia Complementar
  1. Johnson M. Hart Windows System Programming; 4ª ed. EUA:Addison-Wesley Professional, 2010. 656p. ISBN 9780321657749
  2. Brian L. Stuart Princípios de sistemas operacionais: projetos e aplicações; 1ª ed. São Paulo:Cengage Learning, 2011. 680p. ISBN 9788522107339
  3. Robert Love Linux System Programming: Talking Directly to the Kernel and C Library; 2ª ed. EUA:O'Reilly Media, 2013. 456p. ISBN 9781449339531
  4. William Stallings Operating systems: internals and design principles; 8ª ed. Upper Saddle River:Prentice Hall, 2014. 840p. ISBN 9780133805918

ANEXOS

Cronograma de atividades
Horário de Aula e Atendimento Paralelo


Curso de Engenharia de Telecomunicações