BTC
ETH
HTX
SOL
BNB
시장 동향 보기
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt

가상 머신 EVM과 WASM 비교: 속도, 사전 컴파일, 유연성 및 상호 운용성

ChinaDeFi
特邀专栏作者
이 기사는 약 1895자로, 전체를 읽는 데 약 3분이 소요됩니다
Ethereum Virtual Machine의 도입으로 개발자는 스마트 계약을 쉽게 만들고 배포할 수 있습니다.
AI 요약
펼치기
Ethereum Virtual Machine의 도입으로 개발자는 스마트 계약을 쉽게 만들고 배포할 수 있습니다.

첫 번째 레벨 제목

이더리움 가상 머신(EVM)이란 무엇입니까?

이더리움 가상 머신은 이더리움 네트워크에서 다양한 스마트 계약을 실행하는 데 사용되는 가벼운 가상 머신입니다. EVM은 한 번에 하나의 시스템에서만 실행할 수 있는 Windows와 같은 기존 운영 체제와 다르게 작동합니다. EVM은 물리적 시스템을 에뮬레이션하기 위해 기본 운영 체제에 구축된 높은 수준의 추상화입니다.

EVM을 사용하면 동일한 플랫폼을 다양한 운영 체제 및 하드웨어 아키텍처에서 실행할 수 있습니다. 이 기능은 가상 머신을 전 세계에 분산된 다양한 머신의 다양한 클라이언트가 액세스할 수 있는 Ethereum과 같은 네트워크에 적합하게 만듭니다. EVM은 물리적 CPU에서 수행되는 기능을 에뮬레이트할 수 있으며 이더리움 네트워크에서 대부분의 기능을 담당합니다.

EVM에는 다음과 같은 특징이 있습니다.

확실성

결정론적 프로그램은 동일한 코드를 실행하는 횟수에 관계없이 동일한 입력 집합에 대해 동일한 출력을 제공합니다. dApp이 한 번에 수백만 달러를 처리하는 이더리움에서는 다양한 사용자가 모든 실행 단계에서 코드가 어떻게 반응하는지 알아야 합니다.

고립될 수 있습니다

스마트 계약은 완전히 격리된 환경에서 실행되어야 합니다. 이렇게 하면 스마트 계약에서 해킹이나 버그가 발생하더라도 기본 프로토콜의 다른 부분에 영향을 미칠 수 없습니다.

이더리움 스마트 계약은 튜링 완전합니다. 따라서 충분한 시간과 리소스가 주어지면 무엇이든 고칠 수 있어야 합니다. 계약이 정해진 기한 내에 모든 작업을 완료할지 확신하기 어렵기 때문에 스마트 계약에는 종료 메커니즘이 있어야 합니다. Ethereum은 "가스" 한도를 사용하여 실행 한도를 초과하는 스마트 계약을 종료합니다.

첫 번째 레벨 제목

  • EVM의 기능

  • Ethereum 네트워크의 분산 처리 장치입니다. 모든 상호 작용, 트랜잭션 및 스마트 계약 실행은 여기에서만 발생할 수 있습니다.

  • 명령어를 가져와서 실행한 다음 주어진 명령어 디스패처를 통해 피연산자를 디코딩합니다.

  • 피연산자, 데이터 처리 및 명령과 같은 모든 데이터 구조를 담당합니다.

  • 이더리움 네트워크에서 다양한 스마트 계약을 위한 런타임 환경을 만드는 일을 담당합니다.

첫 번째 레벨 제목

  • EVM 과제

  • 진화하지 못한다는 것은 언어에도 한계가 있다는 것을 의미합니다.

웹어셈블리(WASM)란 무엇입니까?

WebAssembly(WASM)는 최신 브라우저에서 효율적으로 실행할 수 있는 새로운 유형의 코드입니다. 이 새 코드는 W3C(World Wide Web Consortium)에서 만들고 정의했습니다. WASM은 Google, Mozilla 및 Apple의 엔지니어를 포함하여 웹용으로 제작되었습니다. 기본적으로 이더리움 2.0이라고도 하는 WASM에는 EVM의 모든 기능과 추가 기능이 있습니다.

첫 번째 레벨 제목

앞서 언급했듯이 Google, Microsoft 및 Apple과 같은 대형 기술 회사의 엔지니어가 개발 팀의 일원입니다. 따라서 이 엔지니어들은 WASM이 엔진 및 프로토콜과 호환되는지 확인합니다.

텍스트

  • 특정 목표 세트를 염두에 두고 설계

  • WASM은 빠르고 효율적이며 휴대 가능하도록 만들어졌습니다. WASM은 일반적인 하드웨어 기능을 활용하여 "기본에 가까운 속도"로 실행합니다.

  • 안전한. 호스트 브라우저의 권한 정책을 적용하고 이전 버전과의 호환성을 유지함으로써 이를 수행합니다.

EVM 및 WASM

속도

속도

간단히 말해서 EVM은 모든 것을 알고 있지만 아무것도 모릅니다. EVM이 컴파일을 처리하는 방법이 이에 대한 좋은 예입니다. 네이티브 엔진은 특정 작업을 수행하기 위한 최상의 경로를 찾기 위해 고군분투하며 궁극적으로 EVM의 전체 처리량에 영향을 미칩니다.

EVM은 256비트 바이트코드만 처리할 수 있습니다. 즉, 256비트보다 작은 바이트코드는 EVM으로 전송되기 전에 256비트 형식으로 변환되어야 합니다. EVM의 확장성 문제는 초당 25개의 트랜잭션만 처리하므로 분명합니다.

WASM은 컴파일된 코드로 직접 변환되어 블록당 처리되는 트랜잭션 수를 늘리면서 로드 속도를 높일 수 있습니다.

미리 컴파일됨

EVM은 사전 컴파일(사전 컴파일된 계약)에 의존합니다. 미리 컴파일된 호출이 이루어지면 EVM은 미리 정의된 네이티브 코드를 실행한 다음 결과를 표시합니다. 이러한 사전 컴파일은 서명 체계 및 해시와 같은 기본 작업에 사용되는 특정 프로토콜에 따라 다릅니다.

미리 컴파일하면 많은 가스를 소비하지 않고도 암호화 계산을 효율적으로 수행할 수 있지만 문제도 있습니다. 새로운 프리컴파일러를 도입하려면 일반적으로 네트워크가 시스템 전반에 걸친 하드 포크를 거쳐야 합니다.

WASM은 미리 컴파일된 계약에 대한 이더리움의 의존성을 제거합니다. WASM은 매우 효율적이기 때문에 개발자는 잠재적인 하드 포크에 대한 걱정 없이 효율적이고 빠른 스마트 계약을 생성할 수 있습니다.

첫 번째 레벨 제목

요약

요약

Source:https://medium.com/momentum6/the-war-on-virtual-machines-wasm-vs-evm-8e68f9d53ef4

ETH
Odaily 공식 커뮤니티에 가입하세요