1 điểm bởi GN⁺ 2023-10-24 | 1 bình luận | Chia sẻ qua WhatsApp
  • Bài viết về dự án của tác giả tại Hackweek 22 của SUSE, nơi tác giả đã xây dựng một unikernel chạy WebAssembly.
  • Tác giả chọn dự án này vì nhiều lý do, bao gồm những lợi ích tiềm năng khi kết hợp unikernel và WebAssembly.
  • Từ góc nhìn của lập trình viên ứng dụng, việc chuyển hoặc viết ứng dụng cho unikernel có thể khó khăn vì ứng dụng và các phần phụ thuộc của nó phải được unikernel đích hỗ trợ.
  • Các nhà duy trì unikernel cũng gặp khó khăn trong việc đảm bảo mọi ứng dụng có thể chạy trơn tru trên nền tảng của họ do các primitive hệ thống chưa được biết đến mà ứng dụng người dùng có thể tận dụng.
  • Tuy nhiên, khi nhắm mục tiêu tới nền tảng WebAssembly, ứng dụng có một tập chức năng rõ ràng mà runtime WebAssembly phải cung cấp.
  • Tác giả sử dụng dự án RustyHermit, một unikernel được viết bằng Rust, làm nền tảng cho ứng dụng unikernel.
  • Tác giả cũng gặp khó khăn liên quan đến runtime WebAssembly vì Wasmtime, runtime ưa thích của họ, không được xây dựng trên RustyHermit. Cuối cùng, họ đã tìm và sử dụng wasmi, một runtime WebAssembly thuần Rust.
  • Tác giả cũng thảo luận về việc sử dụng đề xuất WebAssembly Component Model trong Spiderlightning, cho phép cung cấp khả năng cho guest WebAssembly và giúp host sử dụng các khả năng do guest WebAssembly cung cấp.
  • Tác giả phải mở rộng wit-bindgen, công cụ CLI tạo mã host/guest từ các tệp .wit, để hỗ trợ runtime WebAssembly wasmi.
  • Tác giả kết thúc bài viết bằng bản ghi lại ứng dụng unikernel chạy demo http-server của Spiderlightning, đồng thời hứa sẽ đề cập đến Rust async, Redis và một số lỗi trong phần tiếp theo của hành trình này.

1 bình luận

 
GN⁺ 2023-10-24
Ý kiến trên Hacker News
  • Người dùng liên hệ với bài nói chuyện "Sự ra đời và cái chết của JavaScript"
  • Thảo luận về cách tốt nhất để những hacker không chuyên về OS có được unikernel, với nhiều lựa chọn được đề xuất như xây dựng ứng dụng dưới dạng mô-đun nhân Linux, hack Linux rồi chèn mã vào, hoặc sử dụng các dự án unikernel trên GitHub
  • Đề xuất và thảo luận ý tưởng về một máy x64 chạy VM gắn với card mạng như một tài nguyên tính toán đa dụng
  • Sự hào hứng với WebAssembly (WASM), khi người dùng khen ngợi khả năng sandboxing và tính di động của nó, một số còn ước nó được phát minh thay cho JavaScript từ những năm 90
  • Người dùng hy vọng WASM có thể tồn tại lâu dài, đồng thời nhận thấy việc không thể chạy được nhiều chương trình cũ là một vấn đề và mong WASM có thể giải quyết điều đó
  • Đặt câu hỏi về tiềm năng của phần cứng WASM chuyên dụng, cho thấy sự quan tâm tới hướng phát triển tương lai của công nghệ này
  • Người dùng tò mò về các trường hợp sử dụng của unikernel và WASM, thể hiện mong muốn về những ứng dụng thực tiễn của công nghệ này
  • Thảo luận ý tưởng về một unikernel chạy runtime thu gom rác an toàn trong không gian kernel, cho rằng điều này có thể loại bỏ nhu cầu hỗ trợ ánh xạ bộ nhớ ảo trên CPU và nhờ đó giúp chúng nhanh hơn
  • Bình luận bị gắn cờ "Molto interessante, complimenti" có nghĩa là "Rất thú vị, xin chúc mừng" trong tiếng Ý