WebAssembly против нативных контейнеров в SDV: время запуска, память и безопасность

Зональные контроллеры работают в условиях дефицита оперативной памяти и требуют старта менее чем за 50 мс. В то время как OCI-контейнеры отлично подходят для мультимедиа, микроконтроллеры требуют WebAssembly. В статье анализируются накладные расходы и AOT-компиляция.

Задержка холодного старта и объем памяти: 2 мс против 150 мс

На ядрах Cortex-A53 экземпляр WasmEdge запускается за 2,3 мс, потребляя менее 4 МБ памяти. Контейнер OCI с crun требует инициализации namespaces и cgroups, занимая от 140 до 220 мс и от 35 МБ. При аварийном торможении разница в 140 мс критична для безопасности.

Безопасность на основе полномочий и изоляция сбоев

Песочницы Wasm реализуют безопасность на основе мандатов через WASI. Модуль не имеет неявных привилегий: он не может открыть сокет или файл без явного разрешения среды выполнения. Ошибка переполнения буфера в прикладном модуле немедленно перехватывается, защищая ядро ОС.

Опережающая компиляция (AOT) для детерминированного времени выполнения

JIT-компиляция запрещена в системах ASIL из-за непредсказуемых всплесков времени выполнения. Автомобильные движки Wasm используют AOT-компиляцию в конвейере CI/CD, компилируя байткод в бинарный формат с безопасными встроенными проверками границ и производительностью 96% от нативного C++.

Исследовать портфель доменов