1P by neo 2023-10-24 | favorite | 댓글 1개
  • SUSE의 Hackweek 22에서 저자의 프로젝트에 대한 기사, WebAssembly를 실행하는 unikernel을 구축했다.
  • 저자는 unikernels와 WebAssembly를 결합하는 잠재적 이점 등 여러 이유로 이 프로젝트를 선택했다.
  • 애플리케이션 개발자의 관점에서, 애플리케이션과 그 종속성이 대상 unikernel을 지원해야 하므로 unikernel로 애플리케이션을 이식하거나 작성하는 것이 어려울 수 있다.
  • Unikernel 관리자들도 사용자 애플리케이션에서 활용할 수 있는 알려지지 않은 시스템 기본 요소로 인해 그들의 플랫폼에서 어떤 애플리케이션도 원활하게 실행되도록 보장하는 데 어려움을 겪는다.
  • 그러나 WebAssembly 플랫폼을 대상으로 할 때, 애플리케이션은 WebAssembly 런타임에 의해 제공되어야 하는 명확한 기능 집합을 가지고 있다.
  • 저자는 Rust로 작성된 unikernel인 RustyHermit 프로젝트를 unikernel 애플리케이션의 기반으로 사용했다.
  • 저자는 선호하는 런타임인 Wasmtime이 RustyHermit 위에 구축되지 않기 때문에 WebAssembly 런타임과 관련된 어려움을 겪었다. 결국 그들은 순수 Rust WebAssembly 런타임인 wasmi를 찾아 사용했다.
  • 저자는 또한 Spiderlightning에서 WebAssembly Component Model 제안의 사용에 대해 논의하며, 이를 통해 WebAssembly 게스트에게 기능을 제공하고 호스트가 WebAssembly 게스트에 의해 제공되는 기능을 사용할 수 있게 한다.
  • 저자는 .wit 파일에서 호스트/게스트 코드를 생성하는 cli 도구인 wit-bindgen을 확장하여 wasmi WebAssembly 런타임을 지원해야 했다.
  • 저자는 Spiderlightning http-server 데모를 실행하는 unikernel 애플리케이션의 녹화와 함께 게시물을 마무리하며, 다음 여정의 일부에서 Rust async, Redis, 그리고 일부 오류에 대해 다룰 것을 약속한다.
Hacker News 의견
  • "자바스크립트의 탄생과 죽음"이라는 강연과 연관시키는 사용자들
  • 비OS 해커가 유니커널을 얻는 최선의 방법에 대한 토론, 리눅스 커널 모듈로 애플리케이션을 구축하거나 리눅스를 해킹하고 코드를 삽입하거나 GitHub 유니커널 프로젝트를 사용하는 등 여러 옵션 제안
  • 일반 컴퓨팅 리소스로서 네트워크 카드에 연결된 VM을 실행하는 x64 기계의 아이디어 제안 및 토론
  • WebAssembly (WASM)에 대한 열정, 사용자들이 그것의 샌드박싱과 이식성을 칭찬하며, 일부는 90년대에 자바스크립트 대신에 발명되었으면 좋겠다고 바람
  • WASM의 장기적인 존속을 희망하는 사용자들, 많은 오래된 프로그램을 실행할 수 없는 능력을 문제로 인식하며 WASM이 이를 해결할 수 있기를 바람
  • 전용 WASM 하드웨어의 잠재력에 대한 의문, 기술의 미래 개발에 대한 관심을 나타냄
  • 유니커널과 WASM의 사용 사례에 대한 사용자들의 호기심, 기술의 실용적인 응용에 대한 욕구를 나타냄
  • 커널 공간에서 안전한 GC 수집 런타임을 실행하는 유니커널의 아이디어 토론, 이것이 CPU에서 가상 메모리 매핑 지원을 폐지할 수 있음을 제안하며, 이로 인해 그들이 더 빨라질 수 있음을 제안
  • "Molto interessante, complimenti"라는 플래그된 댓글은 이탈리아어로 "매우 흥미롭습니다, 축하합니다"를 의미함