Fundamentos¶
Neste capítulo
Posição no corpus¶
Os fundamentos estabelecem as camadas de abstração exigidas pelos capítulos posteriores de arquitetura, kernel, compiladores, gráficos, redes e emulação.
matéria e modelos físicos
↓
ferramentas matemáticas exigidas pelo modelo físico
↓
carga, campo e potencial elétrico
↓
grandezas de circuito e leis de rede
↓
armazenamento de energia, transientes e comportamento AC
↓
sinalização de alta velocidade, ruído e alimentação
↓
eletrostática de semicondutores
↓
MOSFET e CMOS
↓
níveis lógicos e abstração booleana
↓
aritmética combinacional
↓
estado sequencial, clocks e células de memória
↓
representação
↓
complexidade
↓
estruturas de dados
↓
algoritmos de sistemas
Fundamentos físicos e elétricos¶
A sequência canônica é:
- matéria, átomos e modelos físicos;
- vetores e números complexos necessários posteriormente à análise de campos e circuitos;
- carga, campo, potencial e energia;
- tensão, corrente, resistência, energia e potência;
- lei de Ohm, leis de Kirchhoff e análise de circuitos;
- capacitância e indutância;
- transientes RC, RL e RLC;
- sinais AC, fase, frequência e impedância;
- indução eletromagnética e transformadores;
- linhas de transmissão e sinalização diferencial;
- ruído, grounding e integridade de sinal;
- power delivery, regulação e desacoplamento.
Esses tópicos definem as hipóteses físicas usadas depois para semicondutores e comportamento digital.
Fundamentos de semicondutores e lógica digital¶
A sequência de dispositivos é:
- estrutura cristalina, bandas e dopagem;
- junções p-n;
- eletrostática do capacitor MOS;
- MOSFET e CMOS;
- delay e potência CMOS;
- thresholds lógicos, fan-out e noise margins;
- álgebra booleana;
- sistemas numéricos binários;
- lógica combinacional;
- circuitos aritméticos;
- lógica sequencial;
- latches e flip-flops;
- registradores, contadores e máquinas de estados;
- temporização de clock;
- SRAM e DRAM.
A transição entre faixas elétricas de tensão e estado booleano abstrato permanece explícita.
Representação e algoritmos¶
A sequência de fundamentos de software é:
- matemática discreta: conjuntos, relações e funções;
- prova, invariantes e indução;
- representação de dados, layout e ponteiros;
- complexidade algorítmica e modelos de custo;
- recursão, recorrências e análise amortizada;
- arrays, listas, stacks e queues;
- hash tables;
- trees, heaps e tries;
- grafos e disjoint-set union;
- bitmaps, rings e free lists;
- sorting e searching;
- algoritmos de grafos;
- algoritmos de strings e parsing;
- algoritmos implementados pelo ChrisOS.
Regra de dependência¶
Um capítulo posterior pode assumir um conceito somente quando:
- o conceito foi definido em capítulo curricular anterior;
- o próprio capítulo contém uma derivação local limitada e suficiente;
- o conceito aparece explicitamente como referência futura, sem ser tratado como conhecimento já estabelecido.
Essa regra elimina saltos implícitos entre abstrações físicas, matemáticas e de software.
Ligação com a implementação¶
A teoria fundamental é conectada à implementação atual na primeira fronteira adequada.
| Fundamento | Implementação posterior |
|---|---|
| aritmética de largura finita e flags | semântica aritmética do ChrisCPU |
| registradores e máquinas de estado | ChrisArchitectureState |
| bitmaps | estado de alocação do PMM |
| ring buffers | filas VirtIO e job queues do kernel |
| trees/grafos | estruturas de filesystem, compiler e dependências |
| carga/capacitância/timing | limites físicos sob modelos de memória e CPU |
Um capítulo de fundamentos não afirma que o ChrisOS implementa diretamente o dispositivo físico subjacente.
Regra de evidência¶
Capítulos físicos e matemáticos distinguem:
- equações e definições normativas;
- hipóteses do modelo;
- exemplos numéricos ilustrativos;
- limites do modelo;
- consequências arquiteturais posteriores;
- ligação com o ChrisOS atual.
Afirmações vinculadas ao source são revision-bound. Afirmações de dispositivos físicos usam referências técnicas primárias, não inferências do código do kernel.