Thông tin liên hệ
- 036.686.3943
- admin@nguoicodonvn2008.info
Dù JavaScript ban đầu được tạo ra để chạy các đoạn script trong trang web, ngày nay nó đã được dùng để viết ứng dụng desktop, phần mềm máy chủ và gần như mọi thứ ở giữa. Giờ đây, JavaScript thậm chí còn có thể trở thành lựa chọn cho các hệ thống nhúng và vi điều khiển cực kỳ hạn chế bộ nhớ, nhờ vào dự án MicroQuickJS.
MicroQuickJS là một dự án mới của Fabrice Bellard, cái tên đứng sau hàng loạt dự án mã nguồn mở nổi tiếng như QEMU, FFmpeg, bộ nén dữ liệu không mất mát NNCP hay trình giả lập JSLinux. Dự án lần này được xây dựng dựa trên QuickJS, một engine JavaScript tối giản viết bằng ngôn ngữ C do chính ông phát triển.
https://github.com/bellard/mquickjs
Mục tiêu của MicroQuickJS là biên dịch và chạy mã JavaScript với mức tiêu thụ bộ nhớ cực thấp, chỉ khoảng 10 kB RAM, trong khi toàn bộ engine chỉ cần khoảng 100 kB bộ nhớ ROM, đã bao gồm cả thư viện C đi kèm. Engine này hỗ trợ một tập con của JavaScript, gần với chuẩn ES5 (ECMAScript 2009). Điều đó cũng đồng nghĩa các tính năng mới hơn từ ES6 trở đi như let , const , arrow function hay Map gần như sẽ không hoạt động.
So với các engine JavaScript thông thường, MicroQuickJS còn “khó tính” hơn. Nó chủ động chặn một số thao tác dễ gây lỗi hoặc kém hiệu quả, chẳng hạn như mảng có các phần tử trống (arrays with holes).
Theo tài liệu dự án, dù MicroQuickJS chia sẻ khá nhiều mã nguồn với QuickJS, phần kiến trúc bên trong đã được thay đổi đáng kể để giảm mức tiêu thụ bộ nhớ. Cụ thể, engine này sử dụng tracing garbage collector, máy ảo không dùng stack của CPU, và chuỗi ký tự được lưu ở định dạng UTF-8.
Tất nhiên, MicroQuickJS sẽ không thể thay thế Node.js trong phần lớn dự án hiện nay. Engine này dường như không hỗ trợ mạng hay truy cập hệ thống tập tin của thiết bị. Tuy vậy, nó lại tỏ ra rất phù hợp với các thiết bị nhỏ gọn như Arduino hay Raspberry Pi Pico, nơi những engine JavaScript phổ biến gần như không có cửa hoạt động.
Tài liệu cũng mô tả khá chi tiết kiến trúc nội bộ của engine, bao gồm cả trình giả lập số thực dấu phẩy động trong trường hợp CPU không hỗ trợ trực tiếp, cùng với việc gần như không phụ thuộc vào thư viện C. Dù các kịch bản ứng dụng thực tế có thể còn hạn chế, đây vẫn là một dự án cực kỳ ấn tượng về mặt kỹ thuật.
Nếu tò mò, bạn có thể ghé qua kho mã nguồn trên GitHub để xem code, hướng dẫn biên dịch, benchmark và tìm hiểu sâu hơn về cách MicroQuickJS hoạt động. Hiện tại dự án chưa cung cấp file nhị phân sẵn, nên nếu muốn trải nghiệm, bạn sẽ cần tự biên dịch.
Nguồn tin: Quantrimang.com
Ý kiến bạn đọc
Những tin mới hơn
Những tin cũ hơn
TOP ứng dụng AI tìm bạn nước ngoài học tiếng Anh và trao đổi ngôn ngữ
Nên dùng Claude Chat, Claude Cowork hay Claude Code?
Hướng dẫn tạo và quản lý Skills trên Gemini Spark
7 thuật toán Machine Learning vẫn cực kỳ quan trọng trong kỷ nguyên AI
Hướng dẫn quản lý tác vụ trong Gemini Spark
Promp thiết kế nhãn vở trên ChatGPT
Các công cụ có sẵn cho agent trong Copilot Studio
Prompt tạo giấy mời họp phụ huynh đầu năm
Hướng dẫn thiết kế flowchart AI trên NoteGPT
Prompt thiết kế poster Lời chào phụ huynh đầu năm học
Trợ lý Excel & Sheets AI: Tạo công thức, hàm và sửa lỗi nhanh
TOP ứng dụng AI gia sư tiếng Anh tốt nhất năm 2026
Cách dùng Trợ lý email viết email phản hồi chuyên nghiệp
4 cách tối ưu token khi xây dựng hệ thống Multi-Agent AI
Bí ý tưởng viết status? Tool này sẽ tạo status cực hay chỉ vài giây
Hướng dẫn lấy prompt hình ảnh bất kỳ
invideo AI: AI Video Generator
5 tài liệu hay nhất giúp bạn làm chủ Small Language Model (SLM) năm 2026
Lợi ích khi dùng Claude Code thay thế phần mềm CAD
4 tính năng ChatGPT từng yêu cầu phải trả tiền, nay đã miễn phí