Programy

Program Solana to konto, które zawiera wykonywalny bajtkod sBPF i ma ustawioną flagę executable na true. Programy są bezstanowe. Cały stan możliwy do zmiany przechowywany jest w osobnych kontach danych przekazywanych przez instrukcje.

Diagram konta programu, jego 4 komponentów i programu ładującego.Diagram konta programu, jego 4 komponentów i programu ładującego.

Najważniejsze informacje

  • Kompilowane do sBPF: Programy są kompilowane do Solana Bytecode Format (sBPF) przez LLVM i przechowywane w kontach wykonywalnych.
  • Bezstanowe: Cały stan możliwy do zmiany przechowywany jest w osobnych kontach danych, a nie w program account.
  • Aktualizowalne: Programy wdrożone z loader-v3 (BPF Loader Upgradeable) mogą być aktualizowane, jeśli ustawiono uprawnienia do aktualizacji; cofnięcie tych uprawnień sprawia, że program staje się niezmienny.

Limity

LimitWartośćŹródło
Domyślny rozmiar sterty32 KiBHEAP_LENGTH
Maksymalny rozmiar sterty (regulowany)256 KiBMAX_HEAP_FRAME_BYTES
Rozmiar ramki stosu4 096 bajtówSTACK_FRAME_SIZE
Maksymalna głębokość wywołań sBPF64MAX_CALL_DEPTH
Maksymalna głębokość stosu instrukcji (top-level + CPI)5 (9 z SIMD-0268)MAX_INSTRUCTION_STACK_DEPTH, MAX_INSTRUCTION_STACK_DEPTH_SIMD_0268
Koszt sterty8 CU za każdą stronę 32 KiBDEFAULT_HEAP_COST
Maksymalna liczba programów w cache512MAX_LOADED_ENTRY_COUNT
Opóźnienie widoczności wdrożenia1 slotDELAY_VISIBILITY_SLOT_OFFSET

Is this page helpful?

Spis treści

Edytuj stronę

Zarządzane przez

© 2026 Solana Foundation.
Wszelkie prawa zastrzeżone.
Bądź na bieżąco