Ezequiel ZorzalEzequiel ZorzalEzequiel ZorzalEzequiel Zorzal
  • Home
  • Disciplinas
  • Projetos
  • Blog
  • Vídeos
  • CV Lates
Next

Sistemas Operacionais

Ezequiel 10 março, 2015

Nome do Componente Curricular: Sistemas Operacionais

Período: 5o semestre – BCC/UNIFESP

Carga horária total: 72 h

Objetivos

Geral: Apresentar os conceitos básicos de sistemas operacionais, analisando os principais componentes de um sistema operacional convencional: gerência de processador, gerência de memória, gerência de entrada e saída e sistemas de arquivos.

Específicos: Ao final do curso o aluno deve estar familiarizado com a estrutura e os conceitos básicos e funcionamento de sistemas operacionais. Deve estar apto a desenvolver soluções de gerência de memória e processos, controle de entrada e saída e organização de sistemas de arquivos.

Ementa: Conceitos básicos de sistemas operacionais: processos, organizações de sistemas operacionais, chamadas de sistema. Gerência do processador: estados de processo, escalonamento. Entrada e saída: dispositivos e controladores, software de E/S, interrupções, dependência e independência. Gerência de memória: partições fixas e variáveis, paginação, segmentação, memória virtual. Gerência de arquivos.

Conteúdo Programático: Apresentação da disciplina. Introdução a sistemas operacionais. Chamadas de sistema. Programas de sistema. Conceitos básicos. Tipos de sistemas operacionais. Conceito de multiprogramação: processo, ciclo CPU e E/S, estados. Suporte de hardware: interrupções, modos do processador. Implementação de processos: representação de processos, bloco descritor do processo, filas. Modelo de processo. Relacionamentos entre processos. Suporte de hardware para multiprogramação: proteção de memória, proteção de periféricos, proteção de CPU. Programação concorrente: conceito, seção crítica. Exclusão mútua: propriedades, mecanismos. Primitivas: mutex e semáforos. Deadlock. Gerência do processador: escalonamento, eventos, chaveamento de contexto, níveis de escalonamento. Tipos de escalonador. Threads: conceitos, implementação, modelo N:1, modelo 1:1 e modelo M:N. Gerência de memória: memória lógica e física. Endereço lógico e físico. Função de mapeamento. MMU. Ferramentas de desenvolvimento de programas: montadores, compiladores, carregadores e ligadores. Amarração estática e dinâmica. Gerência de E/S: conceitos básicos. Organização lógica do software: device driver, subsistema de E/S, independência do dispositivo, E/S em nível de usuário. Bufferização. Chamadas bloqueantes, não bloqueantes e assíncronas. Sistema de arquivos: requisitos básicos. Estrutura hierárquica. Arquivos: conceito, nomes, tipos, organização lógica, operações. Diretório: conceito, linear, dois níveis, árvore, grafo. Aliases.

Metodologia de Ensino Utilizada: O curso será baseado em aulas expositivas com auxílio do quadro e projetor multimídia. A participação dos alunos em sala de aula será estimulada através de perguntas e sessões de exercícios. Para fixação dos tópicos estudados, os alunos receberão, ao longo do curso, listas de exercícios para entrega em sala de aula. Por fim, destacam-se as aulas práticas nos laboratórios de informática para fixação dos conteúdos através de do uso de ambientes de desenvolvimento de software.

Recursos Instrucionais Necessários: Quadro branco, projetor multimídia e laboratório de informática.

 Critérios de Avaliação: O sistema de avaliação será definido pelo docente responsável pela UC no início das atividades letivas e divulgado aos alunos. O sistema adotado deve contemplar o processo de ensino e aprendizagem estabelecido neste Projeto Pedagógico, com o objetivo de favorecer o progresso do aluno ao longo do semestre. Para isto, as avaliações deverão ser ponderadas de maneira crescente ou, ainda, propiciar alternativas de recuperação, como provas substitutivas e/ou aplicação de trabalhos adicionais. A promoção do aluno na UC obedecerá aos critérios estabelecidos pela Pró-Reitoria de Graduação, tal como discutido no projeto pedagógico do curso.

Bibliografia

Básica:

  1. SILBERSCHATZ, Abraham et al. Fundamentos de sistemas operacionais. 6.ed. Rio de Janeiro: LTC, 2004. 580 p. ISBN 978-85-216-1414-2.
  2. TANENBAUM, Andrew S. Sistemas operacionais modernos. 2.ed. São Paulo: Pearson, 2006. 693 p. ISBN 979-85-87918-57-3.
  3. TOSCANI, Simão Sirineo; CARISSIMI, Alexandre da Silva; OLIVEIRA, Rômulo S. de. Sistemas operacionais. 4.ed. Porto Alegre: Bookman, 2010. 374 p. ISBN 978-85-7780-521-1.

Complementar:

  1. TORTELLO, João Eduardo N; WOODHULL, Albert S; TANENBAUM, Andrew S. Sistemas operacionais: projeto e implementação. 3.ed. Porto Alegre: Bookman, 2008. 990 p. ISBN 978-85-7780-057-5.
  2. STALLINGS, William. Operating systems: internal and design principles. 6.ed. Upper Saddle River: Pearson, c2009. 822 p. ISBN 978-0-13-600632-9.
  3. SILBERSCHATZ, Abraham et al. Fundamentos de sistemas operacionais. 8.ed. Rio de Janeiro: LTC, 2010. 515 p. ISBN 978-85-216-1747-1.
  4. Carissimi, Alexandre da Silva; Oliveira, Rômulo S. de. Sistemas operacionais. 3 ed. Säo Paulo: Bookman, 2008. 259 p. ISBN 978-85-7780-337-8.
  5. Mauerer, Wolfgang. Professional Linux Kernel architecture. Canadá: wrox, c2008. 1337 p. ISBN 978-0-470-34343-2.

 

AULAS:

  1. Introdução (download)
    • Apresentação do curso
  2. Visão Geral (download)
    • Apresentar os fundamentos e conceitos básicos sobre Sistemas Operacionais
  3. Estruturas dos Sistemas Operacionais (download)
    • Descrever os serviços que um sistema operacional oferece aos usuários e outros sistemas
    • Discutir as várias maneiras de estruturar um sistema operacional
  4. Processos (parte 1) (download)
    • Introduzir conceitos de processo
    • Descrever as diversas características dos processos, inclusive o scheduling, a criação e o encerramento e a comunicação
  5. Processos (parte 2) (download)
    • Descrever a comunicação em sistemas cliente-servidor
  6. Threads (download)
    • Introduzir o conceito de thread
    • Discutir as APIs das bibliotecas de threads Pthreads, Win32 e Java
    • Examinar questões relacionadas à programação multithreaded
  7. Scheduling (download)
    • Introduzir o Scheduling da CPU
    • Descrever vários algoritmos de scheduling da CPU
    • Discutir critérios de avaliação para a seleção de um algoritmo de scheduling da CPU para um sistema específico
  8. Sincronismo (download)
    • Introduzir o problema da seção crítica, cujas soluções podem ser usadas para garantir a consistência de dados compartilhados
    • Apresentar soluções tanto de software quanto de hardware para o problema da seção crítica
  9. Deadlocks (download)
    • Desenvolver uma descrição de deadlocks
    • Apresentar diversos métodos para impedir ou evitar deadlocks em um sistema computadorizado
  10. REVISÃO – Parte I (download)
  11. Gerência de Memória (download)
    • Fornecer uma descrição de várias maneiras de organizar o hardware de memória.
    • Discutir diversas técnicas de gerência de memória, incluindo paginação e segmentação.
  12. Memória Virtual (download)
    • Descrever os benefícios de um sistema de memória virtual.
    • Explicar os conceitos de paginação por demanda, algoritmos de substituição de página e alocação de frames de página.
  13. Sistemas de Arquivos (download)
    • Explicar conceitos e descrever as características do Sistema de Arquivos.
  14. Gerência de dispositivos (download)
    • Explorar a estrutura do subsistema de E/S de um sistema operacional.
    • Discutir os princípios do hardware de E/S e sua complexidade.
    • Oferecer detalhes dos aspectos de desempenho do hardware e software de E/S.
  15. Segurança (download)
    • Discutir aspectos de proteção e segurança em SOs.
    • Discutir ameaças e ataques à segurança.
    • Explicar os fundamentos da criptografia.
    • Examinar as aplicações da criptografia na computação.
  16. REVISÃO – Parte II (download)

EXERCÍCIOS:

Lista de Exercícios

RESUMO DAS AULAS EM VÍDEO:

Últimos Posts

  • Realidade Aumentada Adaptativa Móvel com Técnicas de Gamificação Aplicada no Ensino

    By Ezequiel | 0 comment

    Este projeto tem como objetivo principal a exploração da Realidade Aumentada móvel como suporte a aprendizagem e o desenvolvimento de uma ferramenta

  • Realidade Aumentada

    By Ezequiel | 0 comment

    O uso de técnicas de Realidade Aumentada pode permitir a exploração de todos os sentidos humanos e proporciona ao usuário uma interação segura, sem necessidade de treinamento, uma vez que ele pode trazer para o seu ambiente real objetos virtuais, incrementando e aumentando a visão que ele tem do mundo real. O sentido de presença em um sistema de Realidade Aumentada não é totalmente controlado pelo sistema, diferentemente da Realidade Virtual em que o usuário se desloca completamente do mundo real para interagir no ambiente virtual.

  • O Mundo é móvel e digital

    By Ezequiel | 0 comment

    O uso de smartphones tem sido indispensável para nosso cotidiano. Já sabemos que esta tecnologia vem alterando o comportamento do consumidor, ajudando os usuários a navegarem

Blog

  • Realidade Aumentada
  • O Mundo é móvel e digital
  • Dica rápida: Marketing digital
  • Melhore a experiência do usuário com Interfaces Adaptativas

Disciplinas

  • Realidade Virtual e Aumentada
  • Algoritmos e Estruturas de Dados I
  • Sistemas Operacionais

Canal

Inscreva-se no Canal

  • Home
  • Disciplinas
  • Projetos
  • Blog
  • Vídeos
  • CV Lates

  • You may also like

    Algoritmos e Estruturas de Dados I

    Read now
  • You may also like

    Realidade Virtual e Aumentada

    Read now
  • You may also like

    Melhore a experiência do usuário com Interfaces Adaptativas

    Read now
  • You may also like

    Dica rápida: Marketing digital

    Read now
  • You may also like

    O Mundo é móvel e digital

    Read now
  • You may also like

    Realidade Aumentada

    Read now
  • You may also like

    Realidade Aumentada Adaptativa Móvel com Técnicas de Gamificação Aplicada no Ensino

    Read now
  • Home
  • Disciplinas
  • Projetos
  • Blog
  • Vídeos
  • CV Lates
Copyright 2015 Ezequiel Zorzal | All Rights Reserved
  • Home
  • Disciplinas
  • Projetos
  • Blog
  • Vídeos
  • CV Lates
Ezequiel Zorzal