Programmi

Un programma Solana è un account che contiene bytecode sBPF eseguibile e ha il suo flag executable impostato su true. I programmi sono stateless. Tutto lo stato mutabile risiede in account di dati separati passati tramite istruzioni.

Diagramma di un program account, i suoi 4 componenti e il suo loader program.Diagramma di un program account, i suoi 4 componenti e il suo loader program.

Fatti chiave

  • Compilati in sBPF: i programmi sono compilati in Solana Bytecode Format (sBPF) tramite LLVM e memorizzati in account eseguibili.
  • Stateless: tutto lo stato mutabile risiede in account di dati separati, non nell'account del programma.
  • Aggiornabili: i programmi deployati con loader-v3 (BPF Loader Upgradeable) possono essere aggiornati quando è impostata un'autorità di aggiornamento; revocare tale autorità rende il programma immutabile.

Limiti

LimiteValoreFonte
Dimensione heap predefinita32 KiBHEAP_LENGTH
Dimensione heap massima (regolabile)256 KiBMAX_HEAP_FRAME_BYTES
Dimensione stack frame4.096 byteSTACK_FRAME_SIZE
Profondità massima chiamate sBPF64MAX_CALL_DEPTH
Profondità massima stack istruzioni (top-level + CPI)5 (9 con SIMD-0268)MAX_INSTRUCTION_STACK_DEPTH, MAX_INSTRUCTION_STACK_DEPTH_SIMD_0268
Costo heap8 CU per pagina 32 KiBDEFAULT_HEAP_COST
Programmi massimi in cache512MAX_LOADED_ENTRY_COUNT
Ritardo visibilità deployment1 slotDELAY_VISIBILITY_SLOT_OFFSET

Is this page helpful?

Indice dei contenuti

Modifica pagina

Gestito da

© 2026 Solana Foundation.
Tutti i diritti riservati.
Resta connesso