Ethereum có lẽ không quá lo lắng về vấn đề "tương thích ngược". Vài năm trước, hệ sinh thái Polkadot cũng đã trải qua nhiều lần nâng cấp, các ứng dụng DeFi quan trọng từ V1, V2 đến V3, V4 đã được cải tiến, người dùng hầu như không cảm nhận được nhiều, huống chi là không có gì không thể thay đổi...
Trong bài blog mới của V, có đề cập đến hệ thống Rosetta của Apple, phản ánh chính xác những thách thức kỹ thuật mà Ethereum Mainnet sẽ gặp phải nếu muốn thay thế EVM bằng một VM khác. Về bản chất, điều này giống như việc Apple từ bỏ Intel và chuyển sang dòng chip M tự nghiên cứu dựa trên kiến trúc Arm.
Vậy khó khăn nằm ở đâu?
Chúng ta đã từng nói rằng, bất kỳ mã nào được viết bằng ngôn ngữ cấp cao cuối cùng đều phải chạy trên một tập lệnh cụ thể:
- Nếu CPU của máy tính của bạn là Intel/AMD, thì chương trình sẽ chạy theo tập lệnh x86.
- Nếu là chip dòng M của Apple, chương trình cuối cùng sẽ chạy theo tập lệnh Arm trên CPU.
Sau đó, hãy nhớ lại chương trình được tạo ra như thế nào?
Sau khi lập trình viên viết mã bằng ngôn ngữ cấp cao, họ cần sử dụng trình biên dịch để biên dịch nó thành tệp thực thi "dành cho một hệ điều hành cụ thể, một tập lệnh cụ thể". Khi tải xuống ứng dụng, bạn thường thấy các tên như "Linux-x86", "macOS-x86", "macOS-Arm", điều này cho thấy rõ điều đó. Phần hậu tố của tên tệp đại diện cho tập lệnh mục tiêu (tại sao lại liên quan đến hệ điều hành, chúng ta có thể nói lần sau).
Vậy Tim, chi phí là gì? 😡
Khi Apple quyết định thay đổi chip, một lượng lớn ứng dụng không có sẵn phiên bản Arm đã được biên dịch, kết quả là các chương trình macOS-x86 không thể chạy nguyên bản trên chip M.
Làm thế nào để giải quyết? Tìm một trình dịch: đây chính là nguồn gốc của Rosetta.
Rosetta, lấy cảm hứng từ phiến đá Rosetta. Điều tuyệt vời là nó sử dụng ba ngôn ngữ cổ để ghi lại cùng một nội dung, trong đó tiếng Hy Lạp cổ trở thành chìa khóa để giải mã chữ tượng hình Ai Cập. Tương tự, Rosetta chủ yếu đóng vai trò là "lớp dịch" giữa hai tập lệnh, chuyển đổi động hoặc một lần các chương trình được biên dịch từ tập lệnh A sang tập lệnh B. Nhờ "tính tương đương tính toán", đầu ra của chương trình sau khi chuyển đổi hoàn toàn giống nhau, nhưng sẽ tiêu tốn một phần hiệu suất.
Tại sao bây giờ ít nhắc đến Rosetta? Với sự trưởng thành của hệ sinh thái dòng chip M, các nhà phát triển thường biên dịch thêm một phiên bản Arm của ứng dụng khi cập nhật. Chỉ những phần mềm cũ, không được duy trì mới cần dựa vào Rosetta để hỗ trợ.
Vì vậy, nếu Ethereum thực sự muốn thay thế EVM, về cơ bản sẽ phải đi theo con đường di chuyển của Apple:
- Đầu tiên tạo "Rosetta" của riêng mình, để bytecode của hợp đồng cũ có thể tiếp tục chạy trên VM mới.
- Sau đó tiến hành từng bước để các hợp đồng mới trực tiếp biên dịch hướng tới VM mới nguyên bản.
Từ việc xây dựng lớp tương thích đến việc cuối cùng bao phủ toàn bộ hợp đồng cũ, con đường này vẫn còn rất dài, rất dài, rất dài, rất dài.
7,36 N
8
Nội dung trên trang này được cung cấp bởi các bên thứ ba. Trừ khi có quy định khác, OKX không phải là tác giả của bài viết được trích dẫn và không tuyên bố bất kỳ bản quyền nào trong các tài liệu. Nội dung được cung cấp chỉ nhằm mục đích thông tin và không thể hiện quan điểm của OKX. Nội dung này không nhằm chứng thực dưới bất kỳ hình thức nào và không được coi là lời khuyên đầu tư hoặc lời chào mời mua bán tài sản kỹ thuật số. Việc sử dụng AI nhằm cung cấp nội dung tóm tắt hoặc thông tin khác, nội dung do AI tạo ra có thể không chính xác hoặc không nhất quán. Vui lòng đọc bài viết trong liên kết để biết thêm chi tiết và thông tin. OKX không chịu trách nhiệm về nội dung được lưu trữ trên trang web của bên thứ ba. Việc nắm giữ tài sản kỹ thuật số, bao gồm stablecoin và NFT, có độ rủi ro cao và có thể biến động rất lớn. Bạn phải cân nhắc kỹ lưỡng xem việc giao dịch hoặc nắm giữ tài sản kỹ thuật số có phù hợp hay không dựa trên tình hình tài chính của bạn.