Програми

Програма Solana — це акаунт, який містить виконуваний байткод sBPF і має прапорець executable встановлений у true. Програми є безстановими. Весь змінюваний стан зберігається в окремих акаунтах даних, що передаються через інструкції.

Діаграма акаунта програми, його 4 компонентів та програми-завантажувача.Діаграма акаунта програми, його 4 компонентів та програми-завантажувача.

Ключові факти

  • Компіляція в sBPF: програми компілюються в Solana Bytecode Format (sBPF) через LLVM і зберігаються у виконуваних акаунтах.
  • Безстановість: весь змінюваний стан зберігається в окремих акаунтах даних, а не в акаунті програми.
  • Можливість оновлення: програми, розгорнуті з loader-v3 (BPF Loader Upgradeable), можуть бути оновлені, якщо встановлено повноваження на оновлення; відкликання цього повноваження робить програму незмінною.

Обмеження

ОбмеженняЗначенняДжерело
Стандартний розмір купи32 КіБHEAP_LENGTH
Максимальний розмір купи (регульований)256 КіБMAX_HEAP_FRAME_BYTES
Розмір кадру стека4 096 байтівSTACK_FRAME_SIZE
Максимальна глибина викликів sBPF64MAX_CALL_DEPTH
Максимальна глибина стека інструкцій (верхній рівень + CPI)5 (9 з SIMD-0268)MAX_INSTRUCTION_STACK_DEPTH, MAX_INSTRUCTION_STACK_DEPTH_SIMD_0268
Вартість купи8 CU на сторінку 32 КіБDEFAULT_HEAP_COST
Максимальна кількість кешованих програм512MAX_LOADED_ENTRY_COUNT
Затримка видимості розгортання1 слотDELAY_VISIBILITY_SLOT_OFFSET

Is this page helpful?

Зміст

Редагувати сторінку

Керується

© 2026 Фонд Solana.
Всі права захищені.
Залишайтеся на зв'язку