Departamento de Informática e Estatística

Programas de Ensino
Visitante (Entrar)

Programa de Ensino 20231

Aprovado pelo Departamento em: 31-10-2022

  1. Identificação: Visualizar em PDF
    • Disciplina: INE5424 - Sistemas Operacionais II
    • Carga horária: 72 horas-aula      Teóricas: 18      Práticas: 54
    • Período: 1º semestre de 2023 até a presente data
  2. Curso(s):
    • Ciências da Computação (208)
  3. Requisito(s):
    • Ciências da Computação (208)
      • INE5412 - Sistemas Operacionais I
  4. Ementa:
    • Desenvolvimento de Sistemas Operacionais: projeto lógico, arquitetura, inicialização de Sistemas Computacionais, componentes (processos, threads, escalonador, mecanismos de sincronização, gerenciadores de memória, sistemas de arquivos, drivers de dispositivos de entrada e saída), teste, depuração, estudos de caso.
  5. Objetivo(s):
    • Geral: Projetar, implementar e testar software a nível de sistema operacional, incluindo device drivers, bibliotecas, kernels e middlewares, utilizando técnicas modernas de desenvolvimento de software de sistema.
    • Específicos:
      1. Conhecer, analisar e implementar algoritmos e técnicas de software a nível de sistema operacional.
      2. Entender conceitos pertinentes ao projeto de software de sistema.
      3. Projetar, implementar e validar componentes de software de sistema, incluindo device drivers, bibliotecas, kernels e middlewares.
  6. Conteúdo Programático:
    • Introdução [2 horas-aula]
    • Arquitetura e sistemas operacionais [12 horas-aula]
      • Elementos da organização e arquitetura de computadores pertinentes ao projeto de software de sistema
      • Inicialização de sistemas operacionais
      • Arquiteturas de software de sistemas operacionais
    • Projeto e implementação de software de sistema [12 horas-aula]
      • Metodologias de projeto
      • Técnicas de programação
      • Ferramentas
    • Estudos de casos [6 horas-aula]
    • Projeto, implementação e validação de componentes de software de sistema [36 horas-aula]
    • Discussão [4 horas-aula]
  7. Bibliografia Básica:
    • The RISC-V Instruction Set Manual, volumes I and II, https://riscv.org/technical/specifications.
    • SiFive RISC-V Core IP Documentation, https://www.sifive.com/documentation.
    • Intel 64 and IA-32 Architectures Software Developer’s Manual Combined Volumes: 1, 2A, 2B, 2C, 2D, 3A, 3B, 3C, 3D and 4, https://www.intel.com/content/www/us/en/developer/articles/technical/intel-sdm.html.
    • ARM Architecture Reference Manual for A-profile Architecture, https://developer.arm.com/documentation/ddi0487/latest.
    • ARM Cortex-A Series Programmer's Guide for ARMv8-A, https://developer.arm.com/documentation/den0024/a/.
    • POSIX.1-2017 Standard Documentation, https://pubs.opengroup.org/onlinepubs/9699919799.2018edition.
  8. Bibliografia Complementar:
    • Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein,
    • Introduction to Algorithms, 2022, ISBN 978-0262046305.
    • Adam Drozdek, Data Structures and Algorithms in C++, ISBN 978-1133608424, 2016.
    • Bjarne Stroustrup, The C++ Programming Language, ISBN 978-1691196005, 2019.