TON Sanal Makinesi (TVM) Nedir? Tam Kılavuz (2026)
— By Tony Rabbit in Tutorials

TVM, her TON akıllı sözleşmesini çalıştıran motorudur. Bu kılavuz, yığın modelini, asenkron mesaj iletimini, hücre tabanlı veri düzenini, gaz ölçümünü ve TVM'nin EVM ile nasıl karşılaştırıldığını açıklar.
TVM (TON Sanal Makinesi), The Open Network üzerindeki her akıllı sözleşmeyi çalıştıran yürütme motorudur. EVM, SVM ve diğer büyük sanal makinelerden gerçekten farklıdır, çünkü TON'un tasarım felsefesi asenkron: sözleşmeler, senkron işlev çağrıları yapmak yerine mesajlar iletir. TVM'yi anlamak, TON geliştirmeyi bir kara kutu olarak ele almak ile ağın paralelliği ile iyi çalışan sözleşmeler yazmak arasındaki farktır.
Hızlı cevap: TVM, TON akıllı sözleşmelerini yürüten yığın tabanlı bir sanal makinedir. Her şeyin küçük parçalar (1023 bite kadar) olarak depolandığı hücre tabanlı bir veri düzeni kullanır ve diğer hücrelere kadar dört referansa kadar sahip olabilir. Yürütme asenkron: bir sözleşme bir mesaj alır, tamamlanana kadar çalışır ve yeni mesajlar yayabilir. Sözleşmeler arasında senkron çağrılar yoktur. Gaz ölçümü, sözleşme başına mesaj başınadır ve kullanılmayan gaz iade edilir.
- Yığın tabanlı. İşlemler, kayıtları adreslemek yerine bir yığından değerleri itip çeker.
- Hücre tabanlı veri. Depolama, her biri dört referansa kadar olan küçük parçalar olan hücreleri kullanır.
- Asenkron yürütme. Sözleşmeler, senkron çağrılar değil, mesajlar aracılığıyla iletişim kurar.
- Mesaj başına gaz ölçümü. Her mesaj kendi gaz bütçesini taşır.
- Diller TVM bytecode'a derlenir. FunC, Tact ve diğerleri aynı yürütme katmanını hedef alır.
TVM nedir ve neden var
TVM, akıllı sözleşme kodunu gerçek zincir içi işlemlere dönüştüren çalışma zamanıdır. Ağdaki her düğüm TVM spesifikasyonu üzerinde anlaşır, bu nedenle bir düğümde çalışan bir sözleşme her yerde aynı şekilde çalışır. Bu deterministik yapı, ağın sözleşme sonuçları üzerinde uzlaşmasını sağlar.
Özel bir VM neden
TON'un tasarımcıları, ağın parçalı, asenkron mimarisine uyması için özel bir VM inşa ettiler. EVM'yi almak, EVM'nin senkron çağrı modelini kabul etmek anlamına gelecekti ki bu da TON'un paralel parçalı yürütmesine karşıdır. TVM, her mesajın herhangi bir parçanın herhangi bir zamanında çalışabilen bir iş birimi olduğu bir model sunar ve diğer parçalarla koordinasyon gerektirmez.
Yığın içinde nerede duruyor
TVM'nin altında ağın hesapları, depolama ve uzlaşma bulunur. TVM'nin üstünde akıllı sözleşme dilleri (FunC, Tact) vardır. TVM evrensel bir arayüzdür: her dil TVM bytecode'a derlenir ve her düğüm o bytecode'u yürütür.
Hücreler ve veri düzeni
TVM'nin imza tasarım seçimlerinden biri hücredir. TON'da depolanan her şey, sözleşme durumu, mesaj gövdesi ve NFT meta verisi dahil, hücreler ağacı olarak düzenlenmiştir.
Hücre nedir
Bir hücre, 1023 bite kadar ham veri ve diğer hücrelere kadar dört referans tutar. Daha büyük nesneler (uzun bir dize, büyük bir dizi, karmaşık bir sözleşme durumu) hücreler ağacı olarak temsil edilir. Yapı, bir Merkle ağacına benzer bir ruh halindedir.
Hücrelerin önemi
Hücre düzeni, içerik adresleme (her hücrenin bir hash'i vardır), verimli farklılaştırma (değişiklikler yalnızca etkilenen hücreleri değiştirir) ve depolama kirası hesaplamasını destekler (hücre sayısı ve zaman her ikisi de önemlidir). Uzun ömürlü sözleşmeler, canlı tuttukları hücre sayısına dayalı küçük bir kira öderler.
Depolama kirası
Ethereum'un kalıcı depolamasının aksine, TON, hücreleri canlı tutmak için küçük bir sürekli ücret alır. Amaç, belirsiz şişkinliği caydırmaktır. Aktif sözleşmeler neredeyse hiçbir şey ödemez; büyük bir durumu tutan terkedilmiş sözleşmeler daha fazla öder ve sonunda bakiyeleri sıfıra düştüğünde dondurulur.
Asenkron yürütme
TVM, sözleşme A'nın sözleşme B'yi senkron olarak aramasına izin vermez. Bunun yerine, sözleşme A, sözleşme B'ye bir mesaj gönderir ve bu mesaj daha sonraki bir adımda işlenir.
Bir mesaj, bir yürütme
Her zincir içi etkileşim bir mesajla tetiklenir. Alıcı sözleşme mesajı okur, durumunu günceller ve yan etki olarak yeni mesajlar yayabilir. Bu yeni mesajlar, sonraki ağ turlarında işlenecektir.
Geliştiriciler için sonuçlar
Senkron EVM tarzı çağrılara alışkın olan geliştiricilerin TON'da farklı düşünmeleri gerekir. TON'daki bir "işlem" genellikle bir mesaj zinciridir. Hata yönetimi de farklıdır: geri dönen bir mesaj, yalnızca gönderen mesajı geri dönebilir, ancak yalnızca gönderen mesajı geri dönebilir olarak yapılandırdıysa.
Paralellik için sonuçlar
Asenkron model, TON'un shardchain'leri paralel olarak çalıştırmasını sağlar. İki parça, koordinasyon olmadan ilgisiz mesajları işleyebilir ve parçalar arasındaki mesajlar bile sıraya alınır ve sonraki turlarda çözülür.
TON'da gaz ölçümü
Her TVM işleminin bir gaz maliyeti vardır. Maliyet sistemi, Ethereum'un gazına benzer bir ruh halindedir, ancak birkaç önemli fark vardır.
Mesaj başına gaz
Her gelen mesaj kendi gaz tahsisatını taşır. Mesaj işlendiğinde, yürütülen işlemler gaz tüketir. Kullanılmayan gaz, gönderenin kullanılmayan TON bakiyesi ile birlikte iade edilir.
Depolama kirası ve hesaplama gazı
TON, depolama kirası (uzun vadeli hücre depolama) ve hesaplama gazı (TVM tarafından yapılan iş) için ayrı ayrı ücret alır. Her ikisi de TON ile ödenir. Çoğu kullanıcıya yönelik sözleşmelerde, hesaplama gazı daha büyük maliyettir.
Neden ücretler düşük kalıyor
Ücretler düşük kalıyor çünkü ağ, talep arttığında parçalama yoluyla ölçeklenebilir. Çoğu sözleşme yürütmesi ucuz, öngörülebilir ve aşırı tahmin edildiğinde iade edilebilir.
TVM ve EVM
İki motor, aynı sorunu farklı mekanizmalarla çözer.
| Özellik | TVM | EVM |
|---|---|---|
| Mimari | Yığın tabanlı | Yığın tabanlı |
| Veri düzeni | Hücreler (1023 bit + 4 referans) | Kelime adresli depolama |
| Yürütme modeli | Asenkron mesajlar | Senkron çağrılar |
| Gaz iadesi | Evet, kullanılmayan iade edilir | Evet, kısmi iade |
| Depolama maliyeti | Depolama kirası | Kalıcı depolama maliyeti peşin |
| Diller | FunC, Tact | Solidity, Vyper, Yul |
Bu, geliştiriciler için ne anlama geliyor
TON üzerinde inşa etmek, Ethereum veya Solana üzerinde inşa etmekten farklı bir zihinsel model gerektirir.
Mesajlar üzerinde düşünün, işlev çağrıları değil
Eğer sözleşme A içinde "sözleşme B'nin sonucu" istemek istiyorsanız, genellikle modelle savaşıyorsunuz demektir. Akışı yeniden yapılandırın, böylece sözleşme A, B'ye bir mesaj gönderir ve ya bir geri çağırma bekler ya da beklemeden kendi durum değişikliğini tamamlar.
Durumu depolarken hücreler üzerinde düşünün
Büyük düz diziler TON'da dostça değildir. Ağaç şeklindeki veri yapıları hücre düzeni ile daha iyi çalışır. Sınırsız büyüyen durum, birden fazla hücre veya alt sözleşme arasında bölünmelidir.
Daha dostça sözdizimi için Tact kullanın
FunC, montaj diline daha yakındır. Tact, TVM bytecode'a derlenen ve okunması daha kolay olan daha yüksek seviyeli bir sözdizimi sağlar. Çoğu yeni TON projesi, ince kontrol gerektirmedikçe Tact kullanır.
Pratik bir öğrenme yolu
- Tact eğitimleri ile başlayın. Daha yüksek seviyeli sözdizimi, önce mesaj modelini anlamanıza yardımcı olur.
- Bir Jetton uygulamasını okuyun. Usta ve cüzdan sözleşmeleri, asenkron modeli net bir şekilde gösterir.
- Testnet üzerinde küçük bir sözleşme oluşturun. Mesajlar gönderin, nasıl yayıldıklarını gözlemleyin.
- Gazı optimize etmeniz veya hücre düzenini ince ayar yapmanız gerektiğinde FunC'a geçin.
- Geliştirme sırasında yığın ve mesajları incelemek için bir TVM yürütme izleme aracı kullanın.
Sıkça sorulan sorular
TVM, EVM ile uyumlu mu?
Hayır. Yürütme modelleri, veri düzenleri ve gaz sistemleri farklıdır. Bazı deneysel EVM uyumluluk katmanları mevcuttur ancak bunlar varsayılan geliştirme yolu değildir.
TON sözleşmelerini Solidity ile yazabilir miyim?
Yerel TON geliştirme, FunC veya Tact kullanır. Bazı adaptörler Solidity benzeri sözdizimine izin verir, ancak çoğu üretim kodu TON'un yerel dillerini kullanır.
TVM neden yığın tabanlı?
Yığın tabanlı VM'ler, kayıt tabanlı VM'lerden daha basit tanımlanabilir ve doğrulanabilir ve deterministik gaz modelleri tasarlamayı kolaylaştırır. EVM de aynı nedenlerle yığın tabanlıdır.
TON'da hücre nedir?
TON'daki temel veri birimidir. Bir hücre, 1023 bite kadar veri ve diğer hücrelere kadar dört referans tutar. TON'da depolanan her şey, hücreler ağacı olarak düzenlenmiştir.
TON'da veri depolamak için kira öder miyim?
Evet. Depolama kirası, hücre sayısına ve zamana orantılı küçük bir sürekli ücrettir. Aktif sözleşmeler bunu neredeyse hissetmez; terkedilmiş sözleşmeler sıfıra kadar boşalabilir ve donabilir.
Sonuç olarak: TVM, TON'un tasarımının en belirgin parçasıdır. Hücre düzenini, asenkron mesaj modelini ve mesaj başına gaz sistemini anladığınızda, ağın diğer tuhaflıkları (parçalama, düşük ücretler, hızlı kesinlik) doğal sonuçlar olarak anlam kazanır. Modelle inşa edin, ona karşı değil.
Feragatname: Bu kılavuz yalnızca eğitim amaçlıdır ve yatırım, finansal, hukuki veya ticari tavsiye teşkil etmez.