# WebAssembly를 실행하는 유니커널 구축 - 파트 1

> Clean Markdown view of GeekNews topic #11491. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=11491](https://news.hada.io/topic?id=11491)
- GeekNews Markdown: [https://news.hada.io/topic/11491.md](https://news.hada.io/topic/11491.md)
- Type: GN+
- Author: [neo](https://news.hada.io/@neo)
- Published: 2023-10-24T10:26:56+09:00
- Updated: 2023-10-24T10:26:56+09:00
- Original source: [flavio.castelli.me](https://flavio.castelli.me/2023/02/07/building-a-unikernel-that-runs-webassembly---part-1/)
- Points: 1
- Comments: 1

## Topic Body

- 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, 그리고 일부 오류에 대해 다룰 것을 약속한다.

## Comments



### Comment 20115

- Author: neo
- Created: 2023-10-24T10:26:56+09:00
- Points: 1

###### [Hacker News 의견](https://news.ycombinator.com/item?id=37982137) 
- "자바스크립트의 탄생과 죽음"이라는 강연과 연관시키는 사용자들
- 비OS 해커가 유니커널을 얻는 최선의 방법에 대한 토론, 리눅스 커널 모듈로 애플리케이션을 구축하거나 리눅스를 해킹하고 코드를 삽입하거나 GitHub 유니커널 프로젝트를 사용하는 등 여러 옵션 제안
- 일반 컴퓨팅 리소스로서 네트워크 카드에 연결된 VM을 실행하는 x64 기계의 아이디어 제안 및 토론
- WebAssembly (WASM)에 대한 열정, 사용자들이 그것의 샌드박싱과 이식성을 칭찬하며, 일부는 90년대에 자바스크립트 대신에 발명되었으면 좋겠다고 바람
- WASM의 장기적인 존속을 희망하는 사용자들, 많은 오래된 프로그램을 실행할 수 없는 능력을 문제로 인식하며 WASM이 이를 해결할 수 있기를 바람
- 전용 WASM 하드웨어의 잠재력에 대한 의문, 기술의 미래 개발에 대한 관심을 나타냄
- 유니커널과 WASM의 사용 사례에 대한 사용자들의 호기심, 기술의 실용적인 응용에 대한 욕구를 나타냄
- 커널 공간에서 안전한 GC 수집 런타임을 실행하는 유니커널의 아이디어 토론, 이것이 CPU에서 가상 메모리 매핑 지원을 폐지할 수 있음을 제안하며, 이로 인해 그들이 더 빨라질 수 있음을 제안
- "Molto interessante, complimenti"라는 플래그된 댓글은 이탈리아어로 "매우 흥미롭습니다, 축하합니다"를 의미함
