Protocolo Base

Heap Memory

The dynamic memory region available to SBF programs during execution, defaulting to 32KB. Programs use heap memory for dynamic allocations (Vec, String, Box). The heap size can be increased up to 256KB by requesting additional compute units via the Compute Budget Program's RequestHeapFrame instruction. Heap exhaustion causes the program to fail with an AccessViolation error. Efficient programs minimize heap usage through zero-copy patterns and stack-allocated buffers.

IDheap-memory

Leitura rápida

Comece pela explicação mais curta e útil antes de aprofundar.

The dynamic memory region available to SBF programs during execution, defaulting to 32KB. Programs use heap memory for dynamic allocations (Vec, String, Box). The heap size can be increased up to 256KB by requesting additional compute units via the Compute Budget Program's RequestHeapFrame instruction. Heap exhaustion causes the program to fail with an AccessViolation error. Efficient programs minimize heap usage through zero-copy patterns and stack-allocated buffers.

Modelo mental

Use primeiro a analogia curta para raciocinar melhor sobre o termo quando ele aparecer em código, docs ou prompts.

Pense nisso como parte da engrenagem que mantém a ordenação, execução ou consenso da rede funcionando.

Contexto técnico

Coloque o termo dentro da camada de Solana em que ele vive para raciocinar melhor sobre ele.

Consenso, rotação de líderes, slots, epochs e o runtime.

Por que builders ligam para isso

Transforme o termo de vocabulário em algo operacional para produto e engenharia.

Este termo destrava conceitos adjacentes rapidamente, então funciona melhor quando você o trata como um ponto de conexão, não como definição isolada.

Handoff para IA

Handoff para IA

Use este bloco compacto quando quiser dar contexto aterrado para um agente ou assistente sem despejar a página inteira.

Heap Memory (heap-memory)
Categoria: Protocolo Base
Definição: The dynamic memory region available to SBF programs during execution, defaulting to 32KB. Programs use heap memory for dynamic allocations (Vec, String, Box). The heap size can be increased up to 256KB by requesting additional compute units via the Compute Budget Program's RequestHeapFrame instruction. Heap exhaustion causes the program to fail with an AccessViolation error. Efficient programs minimize heap usage through zero-copy patterns and stack-allocated buffers.
Relacionados: Orçamento de Computação, SBF (Formato de Bytecode Solana), Runtime
Glossary Copilot

Faça perguntas de Solana com contexto aterrado sem sair do glossário.

Use contexto do glossário, relações entre termos, modelos mentais e builder paths para receber respostas estruturadas em vez de output genérico.

Explicar este código

Opcional: cole código Anchor, Solana ou Rust para o Copilot mapear primitivas de volta para termos do glossário.

Faça uma pergunta aterrada no glossário

Faça uma pergunta aterrada no glossário

O Copilot vai responder usando o termo atual, conceitos relacionados, modelos mentais e o grafo ao redor do glossário.

Grafo conceitual

Veja o termo como parte de uma rede, não como uma definição sem saída.

Esses ramos mostram quais conceitos esse termo toca diretamente e o que existe uma camada além deles.

Ramo

Orçamento de Computação

The maximum compute units a transaction can consume. Default is 200,000 CU per instruction (max 1.4M CU per transaction). Programs can request specific limits via the ComputeBudgetProgram's SetComputeUnitLimit instruction. Under-requesting CU risks transaction failure; over-requesting wastes priority fee budget.

Ramo

SBF (Formato de Bytecode Solana)

Solana Bytecode Format—Solana's customized evolution of BPF. SBF adds Solana-specific syscalls, modifies calling conventions, disables certain eBPF instructions, and adds features like position-independent code. Programs are compiled with `cargo build-sbf` and deployed as SBF ELF binaries. SBF replaced BPF as the canonical bytecode format.

Ramo

Runtime

The component of the SVM responsible for loading programs, enforcing account access rules (ownership, writability, signer checks), managing compute budgets, and executing transactions. The runtime ensures programs can only modify accounts they own, charges rent, and enforces the 10MB per-transaction account data limit.

Próximos conceitos para explorar

Continue a cadeia de aprendizado em vez de parar em uma única definição.

Estes são os próximos conceitos que valem abrir se você quiser que este termo faça mais sentido dentro de um workflow real de Solana.

Modelo de Programação

Orçamento de Computação

The maximum compute units a transaction can consume. Default is 200,000 CU per instruction (max 1.4M CU per transaction). Programs can request specific limits via the ComputeBudgetProgram's SetComputeUnitLimit instruction. Under-requesting CU risks transaction failure; over-requesting wastes priority fee budget.

Protocolo Base

SBF (Formato de Bytecode Solana)

Solana Bytecode Format—Solana's customized evolution of BPF. SBF adds Solana-specific syscalls, modifies calling conventions, disables certain eBPF instructions, and adds features like position-independent code. Programs are compiled with `cargo build-sbf` and deployed as SBF ELF binaries. SBF replaced BPF as the canonical bytecode format.

Protocolo Base

Runtime

The component of the SVM responsible for loading programs, enforcing account access rules (ownership, writability, signer checks), managing compute budgets, and executing transactions. The runtime ensures programs can only modify accounts they own, charges rent, and enforces the 10MB per-transaction account data limit.

Protocolo Base

Jito Validator Client

A modified fork of the Agave validator client maintained by Jito Labs that adds an out-of-protocol block space auction. Jito's modifications include a block engine that accepts transaction bundles with tips, enabling MEV extraction while returning value to stakers. The majority of mainnet-beta stake runs the Jito client.

Termos relacionados

Siga os conceitos que realmente dão contexto a este termo.

Entradas de glossário só ficam úteis quando estão conectadas. Esses links são o caminho mais curto para ideias adjacentes.

Modelo de Programaçãocompute-budget

Orçamento de Computação

The maximum compute units a transaction can consume. Default is 200,000 CU per instruction (max 1.4M CU per transaction). Programs can request specific limits via the ComputeBudgetProgram's SetComputeUnitLimit instruction. Under-requesting CU risks transaction failure; over-requesting wastes priority fee budget.

Protocolo Basesbf

SBF (Formato de Bytecode Solana)

Solana Bytecode Format—Solana's customized evolution of BPF. SBF adds Solana-specific syscalls, modifies calling conventions, disables certain eBPF instructions, and adds features like position-independent code. Programs are compiled with `cargo build-sbf` and deployed as SBF ELF binaries. SBF replaced BPF as the canonical bytecode format.

Protocolo Baseruntime

Runtime

The component of the SVM responsible for loading programs, enforcing account access rules (ownership, writability, signer checks), managing compute budgets, and executing transactions. The runtime ensures programs can only modify accounts they own, charges rent, and enforces the 10MB per-transaction account data limit.

Mais na categoria

Permaneça na mesma camada e continue construindo contexto.

Essas entradas vivem ao lado do termo atual e ajudam a página a parecer parte de um grafo maior, não um beco sem saída.

Protocolo Base

Prova de História (PoH)

A clock mechanism that cryptographically proves the passage of time between events. PoH uses a sequential SHA-256 hash chain where each output becomes the next input, creating a verifiable ordering of events without requiring consensus. The leader produces ~400,000 hashes per slot (~400ms), and any validator can verify the sequence in parallel, enabling Solana's high throughput by removing the need for validators to agree on time.

Protocolo Base

Tower BFT

Solana's custom BFT consensus algorithm built on top of Proof of History. Tower BFT uses PoH as a clock to reduce communication overhead in traditional PBFT from O(n²) to O(n). Validators vote on forks with exponentially increasing lockout periods—each consecutive vote doubles the lockout, making rollbacks progressively more expensive. A fork is finalized when it reaches supermajority (66.7%+ of stake).

Protocolo Base

Slot

A time window during which a designated leader validator can produce a block. Each slot lasts approximately 400 milliseconds. Slots are numbered sequentially from genesis and grouped into epochs of 432,000 slots (~2-3 days). Not every slot produces a block—a skipped slot means the leader was offline or too slow.

Protocolo Base

Bloco

A set of entries produced by a leader during a single slot. A block contains transactions bundled into entries, each with a PoH hash proving ordering. Blocks are broken into shreds for network propagation via Turbine. Maximum block size is limited by compute units (48M CU cap per block) rather than byte size.