Hesap, Solana'nın durum depolamak için kullandığı temel veri birimidir. Ağ, tüm durumu her anahtarın 32 baytlık bir adres ve her değerin bir hesap olduğu bir anahtar-değer deposunda saklar.
3 hesap ve adreslerinin diyagramı. Hesap yapısı tanımını içerir.
Hesap yapısı
Hesap adresleri (public key, PDA), her hesabın içerdiği beş alan, rent durum makinesi, interaktif kod incelemesi ile.
Hesap türleri
Program hesapları (çalıştırılabilir kod), veri hesapları (program durumu), sistem hesapları ve sysvar'lar (küme çapında durum).
Değişiklik kuralları
Lamport'lar, veri, sahip, executable bayrağı ve borçlanmalar için çalışma zamanı tarafından uygulanan kurallar.
Hesap çalışma zamanı
Hesap yükleme doğrulaması, BPF serileştirme formatı ve seriden çıkarma.
Temel bilgiler
- Yapı: Her hesap aynı beş alana sahiptir: lamports, data, owner, executable, rent_epoch.
- Adres: Her hesap, benzersiz bir 32 baytlık adresle tanımlanır (ya bir Ed25519 public key ya da bir PDA).
- Sahiplik: Yalnızca hesabın sahibi olan program, verisini değiştirebilir veya lamport'ları borçlandırabilir. Herhangi bir program, yazılabilir herhangi bir hesaba lamport alacaklandırabilir.
- Rent: Her hesap, zincir üzerinde kalabilmek için veri boyutuyla orantılı minimum bir lamport bakiyesi tutmalıdır.
Limitler
| Limit | Değer | Kaynak |
|---|---|---|
| Maksimum hesap veri boyutu | 10 MiB (10.485.760 bayt) | MAX_ACCOUNT_DATA_LEN |
| Talimat başına maksimum veri büyümesi | 10 KiB (10.240 bayt) | MAX_PERMITTED_DATA_INCREASE |
| İşlem başına maksimum veri büyümesi | 20 MiB (20.971.520 bayt) | MAX_ACCOUNT_DATA_GROWTH_PER_TRANSACTION |
| Hesap temel depolama ek yükü | Hesap başına 64 bayt | TRANSACTION_ACCOUNT_BASE_SIZE |
| Adres boyutu | 32 bayt (Ed25519 public key) | -- |
| Rent-exempt minimum (formül) | (account_size + 128) * 3.480 lamport/bayt-yıl * 2 yıl | minimum_balance() |
Is this page helpful?