Ir para o conteúdo principal
Voltar ao Catálogo de Projetos
Ambiente Prático & Simuladores de Kernel

Laboratório Interativo de Sistemas Operacionais

Bancadas visuais interativas para demonstrar na prática os conceitos teóricos mais complexos de SO: escalonamento de processos na CPU com diagrama de Gantt, alocação de memória RAM e arquitetura de barramentos de dados.

Bancada 1: Escalonador de Processos da CPU (Diagrama de Gantt)

Simulação de time-sharing, preempção por quantum e cálculo de tempos médios de espera (AWT) e retorno (TAT).

Métricas AWT & TAT
Processos de Teste do Laboratório:
P1Chegada: 0s | Burst: 6s
P2Chegada: 1s | Burst: 4s
P3Chegada: 2s | Burst: 8s
P4Chegada: 3s | Burst: 3s
📊 Diagrama de Linha do Tempo (Gráfico de Gantt):
📜 Rastreamento Passo a Passo do Kernel:
    Fundamentação Teórica

    O Escalonador da CPU (Scheduler) é o núcleo do Sistema Operacional multitarefa, responsável por decidir qual processo pronto na fila (Ready Queue) assume a CPU.

    ⏱️ CPU Burst: Tempo ativo que o processo requer da CPU para processar instruções antes de realizar Entrada/Saída.

    📐 Fórmulas Matemáticas:
    • AWT: Σ(Início - Chegada) / N
    • TAT: Σ(Fim - Chegada) / N
    Dicas Acadêmicas & Comparativo
    • Round Robin: Base do Linux e Windows. O Quantum define a fatia máxima antes da preempção.
    • SJF: Menor tempo de espera médio, mas pode causar Starvation em processos longos.
    • FCFS: Simples (FIFO), sujeito ao Efeito Comboio.

    Bancada 2: Alocação Contígua de Memória RAM & Fragmentação

    Simulação de particionamento dinâmico, comparação de estratégias e diagnóstico de fragmentação externa.

    RAM Física: 1700 KB
    Fila de Processos Requisitando Memória RAM:
    P1212 KB
    P2417 KB
    P3112 KB
    P4426 KB
    🗺️ Mapa Físico da Memória RAM (5 Partições Contíguas):
    📜 Rastreamento de Alocações pelo Gerenciador de RAM:
      Gestão de Memória & Partições

      O SO aloca blocos de memória contíguos na RAM para a execução de programas. A escolha da estratégia determina a eficiência e a fragmentação.

      🧩 3 Estratégias Clássicas:
      • First Fit: Aloca no primeiro bloco compatível (mais rápido).
      • Best Fit: Varre toda a tabela para encontrar o menor resíduo livre.
      • Worst Fit: Aloca no maior espaço livre disponível.
      Fragmentação & Paginação
      • Fragmentação Externa: Ocorre quando o total livre seria suficiente, mas a memória está dispersa em blocos pequenos.
      • Paginação Moderna: SOs atuais usam Memória Virtual em páginas de 4 KB (frames), eliminando a necessidade de contiguidade física.

      Bancada 3: Arquitetura de Barramento, Bits & Registradores (1 Byte)

      Representação binária, LEDs clicáveis em tempo real, conversão multi-base e complemento a 2.

      8 Bits / 1 Byte (0 a 255)
      💡 Painel de Bits (Clique nos LEDs para alternar 0 e 1):
      Decodificação Multi-Base Simultânea:
      Binário (Base 2)
      10101000
      Hex (Base 16)
      0xA8
      Octal (Base 8)
      0o250
      Compl. a 2 (Sinal)
      -88
      Arquitetura de Dados & Barramentos

      Um Byte é composto por 8 bits ($2^8 = 256$ combinações possíveis). Cada bit possui um peso posicional exponencial na base 2:

      🔢 Pesos Posicionais (MSB ao LSB):
      $2^7(128) + 2^6(64) + 2^5(32) + 2^4(16) + 2^3(8) + 2^2(4) + 2^1(2) + 2^0(1)$
      Complemento a 2

      Para representar números inteiros negativos em circuitos lógicos, o bit mais significativo (Bit 7) atua como bit de sinal com peso $-128$.