Este repositório contém os materiais para o curso de Sistemas Operacionais. O curso é composto por aulas expositivas, listas de exercícios e implementações práticas. Cada capítulo aborda um aspecto fundamental dos sistemas operacionais, conforme descrito abaixo.
Neste curso de Sistemas Operacionais, adotaremos uma abordagem diversificada para promover uma compreensão abrangente do tema. A metodologia inclui:
As aulas serão conduzidas de forma expositiva, onde os conceitos fundamentais serão apresentados de maneira clara e organizada. Durante as aulas, serão explicados os princípios teóricos essenciais dos sistemas operacionais, incluindo processos, threads, gerenciamento de memória, sistemas de arquivos, entre outros.
Para reforçar o aprendizado teórico, serão disponibilizadas listas de exercícios. Essas listas abordarão questões conceituais e teóricas relacionadas aos temas discutidos em sala de aula. Os alunos terão a oportunidade de aplicar os conhecimentos adquiridos e desenvolver habilidades analíticas e de resolução de problemas.
Além da teoria, uma parte significativa do curso será dedicada à prática. Os alunos serão desafiados a implementar programas relacionados aos conceitos de sistemas operacionais estudados em sala de aula. Isso inclui o desenvolvimento de algoritmos de escalonamento de processos, alocação de memória, manipulação de arquivos, entre outros.
Para avaliar o entendimento global dos alunos, serão realizadas avaliações formais por meio de provas. As provas abrangerão uma variedade de tópicos, incluindo conceitos teóricos, aplicação prática e resolução de problemas. A avaliação terá um peso significativo na nota final do curso.
- Prova: 60%
- Listas de Exercícios: 20%
- Implementações de Programas: 20%
Essa distribuição de peso visa equilibrar a avaliação do conhecimento teórico e prático, incentivando os alunos a se envolverem tanto na compreensão dos conceitos fundamentais quanto na aplicação prática dos mesmos.
-
Introdução
- Visão geral sobre sistemas operacionais, incluindo sua importância, evolução e conceitos fundamentais.
-
Processos e Threads
- Gestão de processos e threads, abordando criação, execução, sincronização e comunicação entre processos e threads.
-
Gerenciamento de Memória
- Técnicas de gerenciamento de memória, incluindo alocação, paginação, segmentação e memória virtual.
-
Sistemas de Arquivos
- Estrutura e implementação de sistemas de arquivos, técnicas de acesso, armazenamento e recuperação de dados.
-
Entrada e Saída
- Métodos de interação com dispositivos de E/S, estrutura e funcionamento dos sistemas de entrada e saída, drivers de dispositivos e comunicação entre hardware e sistema operacional.
-
Impasses
- Tipos de impasses (deadlocks), condições para sua ocorrência e estratégias de prevenção, evitação e resolução.
-
Virtualização e Nuvem
- Conceitos de virtualização e computação em nuvem, incluindo tipos de virtualização e tecnologias envolvidas.
-
Segurança
- Técnicas de segurança em sistemas operacionais, abordando ameaças, vulnerabilidades e métodos de proteção.
- Aulas Expositivas: Cada capítulo será apresentado em aulas teóricas, explicando os conceitos e técnicas fundamentais.
- Listas de Exercícios: Após cada aula, listas de exercícios serão disponibilizadas para reforçar o aprendizado e praticar os conceitos abordados.
- Implementações: Projetos práticos onde os alunos irão implementar aspectos específicos dos sistemas operacionais para aplicar os conhecimentos adquiridos.
- Cada capítulo do curso possui um diretório específico contendo os materiais de estudo.
- No diretório de cada capítulo, você encontrará:
- Slides: Apresentações utilizadas nas aulas expositivas.
- Notas de Aula: Resumos e explicações dos principais conceitos abordados.
- Listas de Exercícios: Conjunto de questões para praticar e aprofundar o conhecimento.
Para quaisquer dúvidas, entre em contato pelo email: [email protected]