Ngăn xếp nhúng
Ngăn xếp nhúng (Embedded Stack) đề cập đến một tập hợp các thành phần phần mềm, thư viện, khuôn khổ và môi trường thời gian chạy được tích hợp chặt chẽ vào một ứng dụng hoặc thiết bị lớn hơn. Không giống như kiến trúc nguyên khối (monolithic) truyền thống, nơi các thành phần là các dịch vụ riêng biệt, ngăn xếp nhúng được thiết kế để chạy gắn kết trong một ranh giới hoạt động cụ thể, thường là trên phần cứng có tài nguyên hạn chế hoặc là một phần cốt lõi của một nền tảng lớn hơn.
Việc lựa chọn ngăn xếp nhúng có tác động đáng kể đến hiệu suất, độ trễ và mức sử dụng tài nguyên. Đối với các thiết bị IoT, hệ thống ô tô hoặc các ứng dụng điện toán biên (edge computing) chuyên biệt, việc giảm thiểu chi phí phụ trợ là rất quan trọng. Một ngăn xếp nhúng được thiết kế tốt cho phép thực thi được tối ưu hóa cao, hỗ trợ khả năng xử lý thời gian thực mà các dịch vụ đám mây bên ngoài có thể gây ra độ trễ không thể chấp nhận được.
Cơ chế hoạt động bao gồm việc phân lớp. Lớp thấp nhất thường xử lý trừu tượng hóa phần cứng (trình điều khiển), tiếp theo là các dịch vụ hệ điều hành, môi trường thời gian chạy cốt lõi (như một VM hoặc trình thông dịch chuyên dụng), và cuối cùng là logic ứng dụng. Các thành phần giao tiếp nội bộ thông qua các cơ chế tốc độ cao, chi phí phụ trợ thấp, chẳng hạn như bộ nhớ chia sẻ hoặc gọi hàm trực tiếp, thay vì các giao thức mạng.
Khái niệm này chồng lấn với Microservices (vốn ưu tiên sự tách rời lỏng lẻo để mở rộng quy mô) và Lập trình trên Phần cứng Trần (Bare-Metal Programming) (vốn tập trung vào các lớp trừu tượng tối thiểu). Ngăn xếp nhúng ưu tiên sự tích hợp sâu và hiệu suất hơn là tính linh hoạt phân tán.