Hướng dẫn what is v8 javascript runtime engine? - công cụ thời gian chạy javascript v8 là gì?

V8

Hướng dẫn what is v8 javascript runtime engine? - công cụ thời gian chạy javascript v8 là gì?
(Các) tác giả gốcLars Bak của Google
Developer(s)Dự án crom
phát hành lần đầu2 & nbsp; tháng 9 năm 2008; 14 năm trước; 14 years ago
Phiên bản ổn định

9.9 [1] & nbsp; / 31 tháng 1 năm 2022; 9 tháng trước

Hướng dẫn what is v8 javascript runtime engine? - công cụ thời gian chạy javascript v8 là gì?
/ 31 January 2022; 9 months ago

Kho

  • chromium.googlesource.com/v8/v8
    Hướng dẫn what is v8 javascript runtime engine? - công cụ thời gian chạy javascript v8 là gì?

Viết vàoC ++ [2]
Nền tảngIA-32, x86-64, ARM, AARCH64, MIPS, MIPS64 [3] PowerPC, IBM S390
Loại hìnhĐộng cơ JavaScript
Giấy phépBSD [4]
Trang mạngv8.dev  
Hướng dẫn what is v8 javascript runtime engine? - công cụ thời gian chạy javascript v8 là gì?

V8 là một công cụ JavaScript miễn phí và nguồn mở được phát triển bởi Dự án Chromium cho các trình duyệt web của Google Chrome và Chromium. [5] Người tạo ra dự án là Lars Bak. [6] Phiên bản đầu tiên của động cơ V8 được phát hành cùng lúc với phiên bản đầu tiên của Chrome: ngày 2 tháng 9 năm 2008. Nó cũng đã được sử dụng ở phía máy chủ, ví dụ như trong Couchbase và Node.js. is a free and open-source JavaScript engine developed by the Chromium Project for Google Chrome and Chromium web browsers.[5] The project’s creator is Lars Bak.[6] The first version of the V8 engine was released at the same time as the first version of Chrome: 2 September 2008. It has also been used on the server side, for example in Couchbase and Node.js.

History[edit][edit]

Trình biên dịch V8 dựa trên trình lắp ráp StrongTalk. [7] Vào ngày 7 tháng 12 năm 2010, một cơ sở hạ tầng biên dịch mới có tên Crankshaft đã được phát hành, với các cải tiến tốc độ. [8] Trong phiên bản 41 của Chrome vào năm 2015, Project Turbofan đã được thêm vào để cung cấp nhiều cải tiến hiệu suất hơn với khối lượng công việc đầy thách thức trước đây như ASM.JS. [9] Phần lớn sự phát triển của V8 được truyền cảm hứng mạnh mẽ từ máy ảo HOTSPOT Java được phát triển bởi Sun Microsystems, với các đường ống thực thi mới hơn rất giống với các đường ống của Hotspot.

Năm 2016, trình thông dịch đánh lửa đã được thêm vào V8 với mục tiêu thiết kế là giảm việc sử dụng bộ nhớ trên điện thoại Android bộ nhớ nhỏ so với Turbofan và trục khuỷu. [10] Đánh lửa là một máy dựa trên thanh ghi và chia sẻ một thiết kế tương tự (mặc dù không giống nhau) với trình thông dịch khuôn mẫu được sử dụng bởi điểm nóng.

Trong năm 2017, V8 đã vận chuyển một đường ống biên dịch hoàn toàn mới, bao gồm đánh lửa (thông dịch viên) và Turbofan (trình biên dịch tối ưu hóa). Bắt đầu với V8 Phiên bản 5.9, Full-Codegen (trình biên dịch cơ sở sớm) và trục khuỷu không còn được sử dụng trong V8 để thực hiện JavaScript, vì nhóm tin rằng họ không còn có thể theo kịp các tính năng ngôn ngữ JavaScript mới và các tính năng tối ưu hóa mà các tính năng cần thiết đó . [11]

Vào năm 2021, một đường ống biên dịch cấp mới đã được giới thiệu với việc phát hành trình biên dịch SparkPlug, bổ sung trình biên dịch Turbofan hiện tại trong V8, theo song song trực tiếp với trình biên dịch C1 định hình được sử dụng bởi Hotspot.

Design[edit][edit]

V8 Đầu tiên tạo ra một cây cú pháp trừu tượng với trình phân tích cú pháp riêng. [12] Sau đó, đánh lửa tạo mã byte từ cây cú pháp này bằng định dạng mã v8 bên trong. [13] Turbofan biên dịch mã byte này vào mã máy. Nói cách khác, V8 biên dịch trực tiếp Ecmascript với mã máy gốc bằng cách sử dụng biên dịch đúng lúc trước khi thực hiện nó. [14] Mã được biên dịch được tối ưu hóa bổ sung (và tối ưu hóa lại) một cách linh hoạt trong thời gian chạy, dựa trên heuristic của hồ sơ thực thi của mã. Các kỹ thuật tối ưu hóa được sử dụng bao gồm nội tuyến, chọn các thuộc tính thời gian chạy đắt tiền và bộ nhớ đệm nội tuyến. Trình thu gom rác là một người thu thập gia tăng thế hệ. [15]

Usage[edit][edit]

V8 có thể biên dịch thành các kiến ​​trúc của bộ hướng dẫn X86, ARM hoặc MIPS trong cả hai phiên bản 32 bit và 64 bit của chúng; Nó cũng đã được chuyển đến PowerPC [16] và IBM S390 [17] [18] để sử dụng trong máy chủ. [3] [19]

V8 có thể được sử dụng trong trình duyệt hoặc tích hợp vào các dự án độc lập. V8 được sử dụng trong phần mềm sau:

  • Các trình duyệt web dựa trên Chromium - Google Chrome, Brave, Opera, Vivaldi và Microsoft Edge.
  • Máy chủ cơ sở dữ liệu Couchbase
  • Môi trường thời gian chạy Deno [20]
  • Khung ứng dụng máy tính để bàn điện tử, được sử dụng bởi các trình chỉnh sửa văn bản mã Atom và Visual Studio
  • Máy chủ cơ sở dữ liệu MarkLogic
  • Khung ứng dụng di động của NativeScript [21]
  • Môi trường thời gian chạy Node.js [22]
  • QT môi trường thời gian chạy nhanh [23]

Xem thêm [sửa][edit]

  • Blink, động cơ trình duyệt crom

References[edit][edit]

  1. ^"Phát hành V8 v9.9". Ngày 31 tháng 1 năm 2022. Truy cập ngày 3 tháng 2 năm 2022. "V8 release v9.9". 31 January 2022. Retrieved 3 February 2022.
  2. ^"Động cơ JavaScript V8". Google LLC. "V8 JavaScript Engine". Google LLC.
  3. ^ ab "Giới thiệu - Chrome V8". Google Inc.a b "Introduction - Chrome V8". Google Inc.
  4. ^"V8/giấy phép.v8 tại chủ". GitHub. "v8/LICENSE.v8 at master". Github.
  5. ^Lenssen, Philipp (ngày 1 tháng 9 năm 2008). "Google trên Google Chrome - Truyện tranh". Google Nossoscoped. Truy cập ngày 17 tháng 8 năm 2010. Lenssen, Philipp (1 September 2008). "Google on Google Chrome - comic book". Google Blogoscoped. Retrieved 17 August 2010.
  6. ^Minto, Rob (27 tháng 3 năm 2009). "Thiên tài đằng sau trình duyệt web của Google". Thời báo tài chính. Được lưu trữ từ bản gốc vào ngày 1 tháng 12 năm 2011. Truy cập ngày 1 tháng 6 năm 2021. (Yêu cầu đăng ký) Minto, Rob (27 March 2009). "The genius behind Google's web browser". Financial Times. Archived from the original on 1 December 2011. Retrieved 1 June 2021.(subscription required)
  7. ^"Động cơ V8 JavaScript: Giấy phép". Mã Google. Được lưu trữ từ bản gốc vào ngày 22 tháng 7 năm 2010. Truy cập ngày 17 tháng 8 năm 2010. "V8 JavaScript Engine: License". Google Code. Archived from the original on July 22, 2010. Retrieved 17 August 2010.
  8. ^"Một trục khuỷu mới cho V8". Blog crom. Ngày 7 tháng 12 năm 2010. Truy cập ngày 22 tháng 4 năm 2011. "A New Crankshaft for V8". Chromium Blog. 7 December 2010. Retrieved 22 April 2011.
  9. ^"Tăng cường hiệu suất JavaScript với Turbofan". Ngày 7 tháng 7 năm 2015. Truy cập ngày 5 tháng 3 năm 2016. "Revving up JavaScript performance with TurboFan". 7 July 2015. Retrieved 5 March 2016.
  10. ^"Blinkon 6 Ngày 1 Talk 2: Đánh lửa - Một thông dịch viên cho V8". 26 tháng 6 năm 2016. Lưu trữ từ bản gốc vào ngày 2021-12-21. Truy cập ngày 2 tháng 9 năm 2016. "BlinkOn 6 Day 1 Talk 2: Ignition - an interpreter for V8". 26 June 2016. Archived from the original on 2021-12-21. Retrieved 2 September 2016.
  11. ^"Ra mắt đánh lửa và turbofan". 16 tháng 5 năm 2017. Truy cập ngày 13 tháng 7 năm 2017. "Launching Ignition and TurboFan". 16 May 2017. Retrieved 13 July 2017.
  12. ^Verwaest, Toon (25 tháng 3 năm 2019). "Phân tích nhanh chóng, Phần 1: Tối ưu hóa máy quét · V8". V8.Dev. Được lưu trữ từ bản gốc vào ngày 21 tháng 4 năm 2021. Truy cập ngày 1 tháng 6 năm 2021. Verwaest, Toon (25 March 2019). "Blazingly fast parsing, part 1: optimizing the scanner · V8". v8.dev. Archived from the original on 21 April 2021. Retrieved 1 June 2021.
  13. ^Hinkelmann, Franziska (2017-12-19). "Hiểu mã byte của V8". Vừa phải. Truy cập 2019-10-17. Hinkelmann, Franziska (2017-12-19). "Understanding V8's Bytecode". Medium. Retrieved 2019-10-17.
  14. ^"Bắn lên trình thông dịch đánh lửa · v8". V8.Dev. Truy cập 2020-09-30. "Firing up the Ignition interpreter · V8". v8.dev. Retrieved 2020-09-30.
  15. ^"Một người thay đổi trò chơi cho hiệu suất tương tác". Blog.Chromium.org. 2011-11-21. Truy cập 2022-02-06. "A game changer for interactive performance". blog.chromium.org. 2011-11-21. Retrieved 2022-02-06.
  16. ^"GitHub - IBMruntimes/V8PPC: Cổng của động cơ JavaScript của Google V8 đến PowerPC®". Ngày 21 tháng 4 năm 2019 - thông qua GitHub. "GitHub - ibmruntimes/v8ppc: Port of Google V8 javascript engine to PowerPC®". April 21, 2019 – via GitHub.
  17. ^"Cổng của động cơ JavaScript của Google V8 đến Z/OS. Linux trên cổng Z được duy trì trong cộng đồng: ibmruntimes/V8Z". Ngày 2 tháng 4 năm 2019 - thông qua GitHub. "Port of Google V8 JavaScript engine to z/OS. The Linux on Z port is maintained in the community: ibmruntimes/v8z". April 2, 2019 – via GitHub.
  18. ^"Hỗ trợ PPC cho Google V8 đi theo xu hướng". Ngày 30 tháng 6 năm 2015. "PPC support for Google V8 goes mainstream". June 30, 2015.
  19. ^"V8 Changelog v3.8.2". Được lưu trữ từ bản gốc vào ngày 22 tháng 10 năm 2012. Truy cập ngày 23 tháng 10 năm 2012. "V8 Changelog v3.8.2". Archived from the original on 22 October 2012. Retrieved 23 October 2012.
  20. ^"Một thời gian chạy JavaScript/TypeScript an toàn được xây dựng với V8, Rust và Tokio: Denoland/Deno". Ngày 8 tháng 7 năm 2019 - thông qua GitHub. "A secure JavaScript/TypeScript runtime built with V8, Rust, and Tokio: denoland/deno". July 8, 2019 – via GitHub.
  21. ^"Tổng quan - Tài liệu NativeScript". Docs.NativeScript.org. "Overview - NativeScript Docs". docs.nativescript.org.
  22. ^Jolie O'Dell (ngày 10 tháng 3 năm 2011). "Tại sao mọi người lại nói về nút". Mashable. Jolie O'Dell (March 10, 2011). "Why Everyone Is Talking About Node". Mashable.
  23. ^"Sự khác biệt giữa QT QML và QT nhanh". Stack Overflow. Truy cập 2020-09-26. "Difference between qt qml and qt quick". Stack Overflow. Retrieved 2020-09-26.

Liên kết bên ngoài [Chỉnh sửa][edit]

  • Trang web chính thức
    Hướng dẫn what is v8 javascript runtime engine? - công cụ thời gian chạy javascript v8 là gì?

Động cơ V8 JavaScript được sử dụng để làm gì?

Công cụ V8 JavaScript ban đầu được phát triển cho các trình duyệt web của Google Chrome và Chromium để cải thiện hiệu suất thực thi JavaScript. Người tạo của dự án, Lars Bak, đã tạo ra phiên bản đầu tiên được phát hành cùng lúc với phiên bản đầu tiên của Google Chrome vào tháng 9 năm 2008.to improve the performance of JavaScript execution. The project's creator, Lars Bak, created the first version that was released at the same time as the first version of Google Chrome in September 2008.

Động cơ thời gian chạy JavaScript là gì?

Công cụ JavaScript là một thành phần phần mềm thực thi mã JavaScript. Các động cơ JavaScript đầu tiên chỉ là các phiên dịch viên, nhưng tất cả các động cơ hiện đại có liên quan đều sử dụng biên dịch đúng lúc để cải thiện hiệu suất. Các công cụ JavaScript thường được phát triển bởi các nhà cung cấp trình duyệt web và mọi trình duyệt chính đều có một.a software component that executes JavaScript code. The first JavaScript engines were mere interpreters, but all relevant modern engines use just-in-time compilation for improved performance. JavaScript engines are typically developed by web browser vendors, and every major browser has one.

Động cơ V8 có nghĩa là gì?

Trong khi đó, động cơ V8 có nghĩa là động cơ 8 xi-lanh.Nhưng, bạn có thể tự hỏi 'V' có nghĩa là gì trong V6 và V8.'V' đại diện cho cách sắp xếp xi lanh trong động cơ của bạn.Động cơ loại V có các hình trụ được đặt theo hình chữ V, hoặc để đặt nó theo cách khác, thành hai hàng bằng nhau.an 8-cylinder engine. But, you may wonder what the 'V' means in V6 and V8. The 'V' represents the way cylinders are arranged in your engine. V-type engines have cylinders placed in a V-like shape, or to put it the other way, in two equal rows.

Loại ứng dụng nào là V8?

V8 là một công cụ JavaScript miễn phí và nguồn mở được phát triển bởi Dự án Chromium cho các trình duyệt web của Google Chrome và Chromium.JavaScript engine developed by the Chromium Project for Google Chrome and Chromium web browsers.