⚡ AutomationsAI|Portal de Cursos →

Verificando acesso...

MÓDULO 2.1

🔄 Kernel + SDK e syscalls

A fronteira entre seu agente e o resto do mundo. Camadas, abstração, ponte Cerebrum, fluxo de syscall e as duas interfaces oficiais do AIOS.

6
Tópicos
~60
Minutos
Médio
Nível
Teoria
Tipo
1

🗺️ Visão em camadas — SO clássico vs AIOS

A maior virada conceitual do AIOS é tratar o agente como um processo de SO. No SO clássico você tem aplicações → glibc → kernel → hardware. No AIOS é equivalente: agentes → Cerebrum SDK → AIOS kernel → providers de LLM/storage/tool. Quando você enxerga esse paralelo, todo o resto faz sentido sozinho.

💡 As 3 camadas do AIOS

  • Application Layer — agentes (seu código, ou AutoGen, OpenAGI, MetaGPT).
  • Kernel Layer — AIOS kernel com 6 módulos centrais.
  • OS Layer — Linux/macOS/Windows + GPU/CPU/rede.

📊 Paralelo Linux × AIOS

  • Aplicações Linux ↔ Agentes AIOS
  • glibc / musl ↔ Cerebrum SDK
  • Linux Kernel ↔ AIOS Kernel
  • Hardware ↔ Providers + GPU + disco
  • Syscall read() ↔ Syscall llm.chat()

💡 Dica mental

Quando estiver perdido, pergunte: "se isso fosse Linux, em que camada estaria?". A resposta quase sempre te leva ao módulo certo do AIOS.

2

🛡️ Kernel como abstração — O que ele esconde

O kernel age como abstraction layer sobre os recursos do agente. Você não chama "OpenAI" — você chama "LLM Core" e o kernel resolve o provider. Você não escreve em "disco" — você grava no "Storage Manager". Essa indireção é o que dá multi-provider, isolamento e auditoria de graça.

✓ O que o kernel esconde

  • Qual provider de LLM está sendo chamado
  • Onde a memória está fisicamente
  • Qual scheduler está rodando
  • Se a tool roda local ou via MCP
  • Qual GPU/CPU está executando

✗ O que continua exposto

  • Latência real do LLM
  • Custo por token
  • Limite de context window
  • Erros específicos do provider
  • Qualidade do modelo escolhido

💡 Abstração não é mágica

AIOS abstrai onde dá. Características inerentes ao modelo (latência, qualidade, contexto máximo) continuam responsabilidade do agente entender. Não confunda abstração de interface com abstração de comportamento.

3

🌉 Cerebrum SDK — A ponte do agente

Cerebrum é a biblioteca Python que seu agente importa para falar com o kernel. Paper aceito na NAACL 2025. Oferece classes-base de agente, wrappers de syscall e helpers para tools/memory. Sem Cerebrum, você teria que codar o protocolo de syscall na mão.

# Estrutura típica de uso (esquema)
from cerebrum import Agent, LLMCall, MemoryRead, ToolCall

class ResearchAgent(Agent):
    def run(self, query):
        # syscall: leitura de memória persistente
        ctx = MemoryRead(scope="long_term", query=query).execute()
        # syscall: chamada de LLM
        plan = LLMCall(model="claude-sonnet-4", prompt=f"{ctx}\n\n{query}").execute()
        # syscall: execução de tool (registrada no Tool Manager)
        result = ToolCall(name="web_search", args={"q": plan.steps[0]}).execute()
        return result

📊 O que o SDK te dá

  • Agent base class — ciclo de vida padrão
  • Syscall wrappers — uma classe por tipo (LLM, Memory, Tool, Storage)
  • Decorators — para registrar tools e expor ao kernel
  • Helpers de testing — mock kernel para rodar fora de prod
  • Agent hub client — publicar/baixar agentes da hub
4

📞 Syscalls do agente — A interface fundamental

Toda comunicação agente→kernel passa por syscall. É unidade de trabalho — entra na fila do Scheduler, é despachada para o módulo certo, retorna ao agente. Pensar em syscalls (e não em chamadas diretas) muda como você estrutura o agente: tudo vira request explícito, auditável, schedulável.

Syscall Módulo destino Uso típico
LLMCallLLM CoreGeração de texto, raciocínio
MemoryRead/WriteMemory ManagerCache rápido por agente
StorageRead/WriteStorage ManagerPersistência em disco
ToolCallTool ManagerExecutar ferramenta registrada
ContextSwitchContext ManagerSalvar/restaurar agente

💡 Custo de pensar em syscalls

Os primeiros dias parecem verboso. Depois fica natural: cada ação importante vira uma linha clara, auditável, schedulável. Vale o investimento.

5

⛓️ Chain de syscalls — Como uma query vira N módulos

Uma query do usuário raramente vira uma syscall. Vira uma cadeia: LLM → Tool → Storage → LLM → resposta. Cada elo é uma syscall agendada pelo Scheduler. Ver essa cadeia no log de execução é a forma mais rápida de debugar comportamento estranho do agente.

Cadeia típica de "Faça pesquisa X"

1

LLMCall — planejar

Agente envia query ao LLM Core pedindo um plano. Recebe lista de passos.

2

MemoryRead — checar contexto

Recupera histórico de pesquisas anteriores da Memory Manager.

3

ToolCall — buscar

Executa web_search via Tool Manager. Resultado volta como JSON.

4

StorageWrite — persistir

Salva resultados brutos no Storage Manager para reuso futuro.

5

LLMCall — sintetizar

Segunda chamada ao LLM consolida resultados em resposta final.

💡 Visualizar a cadeia

Ative log verbose no kernel. Cada syscall aparece com timestamp, agente origem e módulo destino. Esse log é o "strace" do AIOS — indispensável para entender o que está acontecendo.

6

🖥️ Terminal UI vs Web UI — Duas portas de entrada

AIOS já vem com duas interfaces oficiais. Terminal UI via scripts/run_terminal.py é a entrada de dev — texto puro, rápido, ótima para debugar. Web UI é a entrada de produção — você expõe pra quem não vai mexer em shell.

# Subir o kernel
$ python -m aios.kernel &        # background
$ tail -f kernel.log               # observa syscalls em tempo real

# Falar via terminal UI
$ python scripts/run_terminal.py
> me explique como funciona o Scheduler

# Servir Web UI (porta padrão)
$ python scripts/run_web.py
# abra http://localhost:8000

Terminal UI — Quando usar

  • Validar setup rapidamente
  • Debugar cadeia de syscalls
  • Pipelines automatizados
  • Sessão pessoal de pesquisa

Web UI — Quando usar

  • Usuário final não-técnico
  • Demonstrações
  • Multi-usuário concorrente
  • Integração com SSO

💡 Recomendação

Em desenvolvimento, viva no Terminal UI — ele te força a ler o log e entender o sistema. Migre para Web UI só quando for entregar pra outra pessoa.

Resumo do Módulo

3 camadas: Application (agentes), Kernel (AIOS), OS (Linux/macOS/Windows).
Kernel abstrai recursos. Esconde provider, storage, scheduling — mantém latência e custo visíveis.
Cerebrum é a ponte. 95% do código que você escreve mora aqui.
Syscalls são unidade de trabalho. Tudo agendável, auditável, debugável.
Terminal UI para dev, Web UI para usuário. Duas interfaces oficiais, ambas livres.

Próximo módulo:

2.2 — 🧩 Os 6 módulos do kernel. LLM Core, Memory, Storage, Tool, Scheduler e Context Manager por dentro.