Skip to content

mrpunkdasilva/learn-operating-system

Repository files navigation

Learn Operating System

Um guia abrangente sobre Sistemas Operacionais, apresentado de forma acessível e prática, com analogias ao Minecraft para facilitar o entendimento de conceitos complexos.

📚 Sobre o Projeto

Este projeto é um material educacional que combina teoria e prática no ensino de Sistemas Operacionais. Utilizamos analogias com o jogo Minecraft para tornar conceitos complexos mais acessíveis e interessantes, além de incluir exercícios práticos e mindmaps para reforçar o aprendizado.

🎯 Objetivos

  • Explicar conceitos fundamentais de Sistemas Operacionais
  • Tornar o aprendizado mais envolvente através de analogias com Minecraft
  • Fornecer exercícios práticos e questões para fixação
  • Oferecer recursos visuais (mindmaps) para melhor compreensão

📋 Conteúdo

O material está organizado nos seguintes capítulos:

  1. Overview

    • Hardware e Software
    • Operação do Computador
    • Estrutura de Armazenamento
    • Estrutura de I/O
    • Arquitetura do Sistema
  2. System Interface

    • Interface Usuário-SO
    • Chamadas de Sistema
    • Programas do Sistema
    • Máquinas Virtuais
    • Boot do Sistema
  3. Process and Scheduler

    • Conceitos de Processos
    • Threads e Multithreading
    • Escalonamento
    • Algoritmos de Escalonamento
  4. Memory

    • Gerenciamento de Memória
    • Conceitos Básicos
    • Associação de Endereços
    • Segmentação
    • Exemplo Pentium
  5. Mass Storage Structure

    • Arquivos e Atributos
    • Operações com Arquivos
    • Estrutura de Arquivos
    • Métodos de Acesso
    • Proteção
  6. File System

    • Implementação de Sistema de Arquivos
    • Partições e Montagem
    • RAID
    • Sistemas de Arquivos Virtuais
  7. Protection and Security

    • Proteção
    • Domínios de Proteção
    • Matriz de Acesso
    • Criptografia
    • Ameaças e Ataques
    • Firewalls

🛠️ Tecnologias Utilizadas

  • Writerside (JetBrains) para documentação
  • Mermaid para diagramas e mindmaps
  • Shell scripts para automação
  • Git para controle de versão

📖 Como Usar

  1. Clone o repositório:
git clone https://github.com/mrpunkdasilva/learn-operating-system.git
  1. Navegue até o diretório do projeto:
cd learn-operating-system
  1. Para gerar a documentação:
./scripts/main.sh

🤝 Contribuindo

Contribuições são bem-vindas! Para contribuir:

  1. Faça um Fork do projeto
  2. Crie uma branch para sua feature (git checkout -b feature/NovaFeature)
  3. Commit suas mudanças (git commit -m 'Adiciona nova feature')
  4. Push para a branch (git push origin feature/NovaFeature)
  5. Abra um Pull Request

Diretrizes de Contribuição

  • Mantenha as analogias com Minecraft relevantes e educativas
  • Siga o padrão de formatação existente
  • Inclua exemplos práticos quando possível
  • Adicione exercícios com soluções detalhadas
  • Mantenha a documentação atualizada

📄 Licença

Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.

✨ Agradecimentos

  • Aos professores e alunos que contribuíram com feedback
  • À comunidade de Minecraft por inspirar analogias criativas
  • Aos autores das referências bibliográficas

🔗 Links Úteis

📊 Status do Projeto

GitHub Stars GitHub Forks GitHub Issues GitHub Pull Requests

🗓️ Roadmap

  • Estrutura básica do conteúdo
  • Analogias com Minecraft
  • Exercícios práticos
  • Soluções detalhadas
  • Vídeos explicativos
  • Ambiente de laboratório virtual
  • Tradução para outros idiomas

Desenvolvido com ❤️ por PunkDomus

Releases

No releases published

Packages

No packages published