V8 (JavaScript motoru)

V8

Bilgi
tarafından geliştirildi Google
Son sürüm 9.0 (17 Mart 2021)
Depozito chromium.googlesource.com/v8/v8
Yazılmış C++ ve JavaScript
İşletim sistemi Microsoft Windows , Linux , macOS , FreeBSD , Android , Chrome OS , webOS ve BlackBerry 10 ( tr )
Çevre IA-32 ( tr ) , x86_64 ve ARM mimarisi
Tür JavaScript motoru
Sanal makine
Lisans BSD lisansı
İnternet sitesi v8.dev

V8 , Google Chrome ve Chromium web tarayıcıları için Chromium Project tarafından geliştirilen açık kaynaklı bir JavaScript motorudur . Projenin yaratıcısı Lars Bak . V8 motorunun ilk sürümü, Chrome'un ilk sürümü ile aynı zamanda piyasaya sürüldü.2 Eylül 2008. Ayrıca Couchbase, kullanılmakta olan MongoDB, ve node.js sunucu tarafında.

V8 doğrudan derler JavaScript kodu içine yerli makine koduna bunu yürütme yerine gibi daha geleneksel teknikler kullanılarak önce yorumlama bayt kodu veya makine koduna tüm programı derlemek ve bir dosya sisteminden yürütme. Derlenen kod, kodun yürütme profiline bağlı olarak çalışma zamanında dinamik olarak daha da optimize edilir (ve yeniden optimize edilir). Kullanılan optimizasyon teknikleri arasında satır içi oluşturma , pahalı çalışma zamanı özelliklerini seçme ve önbelleğe alma yer alır. Çöp toplayıcı bir artımlı inşa koleksiyoncu.

V8, 32-bit ve 64-bit sürümlerinde x86 , ARM veya MIPS'e derlenebilir  ; ayrıca sunucularda kullanılmak üzere PowerPC ve IBM S/390'a taşınmıştır .

Tarihi

V8 montajcı Strongtalk assembler dayanmaktadır. İsim , spor arabaların güçlü V8 motorlarına atıfta bulunuyor . 7 Aralık 2010, hız iyileştirmeleri ile Crankshaft adlı yeni bir yapı çerçevesi yayınlandı. Chrome'un 2015'teki 41. Sürümünden bu yana , daha fazla hız sağlamak için TurboFan projesi eklendi, örneğin asm.js .

2016 yılında, TurboFan ve Krank Miline kıyasla düşük bellekli Android telefonların kullandığı belleği azaltmak amacıyla V8'e Ateşleme yorumlayıcısı eklendi.

2017'de V8, Ignition (yorumlayıcı) ve TurboFan'dan (optimizasyon derleyicisi) oluşan yepyeni bir derleyici ardışık düzeni sağladı. V9 5.9'dan itibaren, ekip artık yeni JavaScript dil özelliklerine ve gerekli optimizasyonlara ayak uyduramayacaklarına inandığından, V8'de JavaScript'i çalıştırmak için Full-codegen ve Krank Mili artık kullanılmamaktadır.

kullanmak

V8, hem tarayıcıda hem de bağımsız projelere entegre edilebilen yüksek performanslı bağımsız bir motor olarak kullanılmak üzere tasarlanmıştır. V8 aşağıdaki yazılımda kullanılır:

Ayrıca bakınız

Referanslar

  1. V8 sürüm v9.0  " ( 17 Mart 2021'de erişildi )
  2. Lenssen, “  Google on Google Chrome - çizgi roman  ” , Google Blogoscoped , Google ,1 st Eylül 2008( 17 Ağustos 2010'da erişildi )
  3. Minto, "  Google'ın web tarayıcısının arkasındaki dahi  " , Financial Times ,27 Mart 2009( 17 Ağustos 2010'da erişildi )
  4. "  interaktif performans için bir oyun değiştirici  " , Krom günlüğü , Google (erişilen 1 st 2012 Mayıs )
  5. “  Google V8 javascript motorunun bağlantı noktası PowerPC®'ye. GitHub üzerinde bir hesap oluşturarak ibmruntimes/v8ppc gelişimine katkıda bulunun  ” , GitHub üzerinde ,21 Nisan 2019
  6. “  Google V8 JavaScript motorunun z / OS'ye bağlantı noktası. Linux on Z bağlantı noktası toplulukta korunur: https://chromium.googlesource.com/v8/v8.git: ibmruntimes / v8z  ” , GitHub'da ,2 Nisan 2019
  7. mhdawson , “  Google V8 için PPC desteği yaygınlaşıyor  ” ,30 Haziran 2015
  8. "  V8 Changelog v3.8.2  " , Google ( 23 Ekim 2012'de erişildi )
  9. "  V8 JavaScript Motoru: Lisans  " [ arşivi22 Temmuz 2010] , Google Code , Google ( 17 Ağustos 2010'da erişildi )
  10. "  V8 · V8'in 10. Yılı Kutlanıyor  " , v8.dev'de ( 21 Nisan 2021'de erişildi )
  11. "  V8 için Yeni Bir Krank Mili  " , Chromium Blog , Google ,7 Aralık 2010( 22 Nisan 2011'de erişildi )
  12. "  TurboFan ile JavaScript performansını yükseltme  " ,7 Temmuz 2015( 5 Mart 2016'da erişildi )
  13. "  BlinkOn 6 Day 1 Talk 2: Ignition - V8 için bir tercüman  " ,26 Haziran 2016( 2 Eylül 2016'da erişildi )
  14. "  Ateşleme ve TurboFan'ın Başlatılması  " ,16 Mayıs 2017( 13 Temmuz 2017'de erişildi )
  15. Jolie O'Dell, "  Neden Herkes Düğüm Hakkında Konuşuyor,  " Mashable,10 Mart 2011
  16. "  NativeScript Android Çalışma Zamanına Genel Bakış  "