Bytecode Alliance, созданный Fastly, Intel, Mozilla и Red Hat для продвижения WebAssembly за пределы браузера, с помощью Microsoft создал некоммерческую организацию для продвижения своего дела.

Яндекс

Группа также добавила еще шесть организаций-членов, чтобы продвигать свою миссию по созданию более модульного, безопасного и быстрого программного обеспечения.

Помимо Microsoft, новыми членами являются: Arm, DFINITY Foundation, Embark Studios, Google, Shopify и Калифорнийский университет в Сан-Диего.

В своем заявлении Бобби Холли, выдающийся инженер Mozilla и член правления Bytecode Alliance, описал сегодняшнюю разработку программного обеспечения как набор неприятных компромиссов.

«Если вы хотите создать что-то большое, нереально создавать каждый компонент с нуля», — сказал Холли. «Но если полагаться на сложную цепочку поставок компонентов от других сторон, то дефект в любом месте этой цепочки может поставить под угрозу безопасность и стабильность всей программы.

«Такие инструменты, как контейнеры, могут обеспечить некоторую степень изоляции, но они добавляют значительные накладные расходы и непрактичны в использовании с детализацией по поставщикам. И вся эта динамика закрепляет преимущества крупных компаний, располагающих ресурсами для тщательного управления и аудита своих цепочек поставок. «

Эта демонстрация qt mandelbrot была успешно создана с помощью системы сборки gbuild libreoffice;  это единственное, что пока работает

«Вот куда движется индустрия»: команда LibreOffice работает над портом WebAssembly

ЧИТАТЬ ДАЛЕЕ

В Байт-код Альянс, основанный в 2019 году, рассматривает WebAssembly как способ сделать код компонуемым, безопасным и быстрым без жертв.

Читайте также:
Ошибка подвергает пользователей серьезному риску заражения вредоносным ПО °

WebAssembly — это низкоуровневый байт-код, генерируемый языками более высокого уровня, такими как C / C ++ или еще лучше, из-за его безопасности памяти, Rust. Это язык программирования, похожий на ассемблер, или структурированная стековая машина, в отличие от обычной стековой машины, такой как JVM.

В качестве цели компиляции для кода более высокого уровня в веб-приложения часто добавляются библиотеки WebAssembly или wasm для обработки ресурсоемких операций.

Феросс Абухадидже, разработчик ПО с открытым исходным кодом и соавтор Червоточина, сказал Реестр в электронном письме говорится, что WebAssembly имеет два основных преимущества.

«WebAssembly позволяет разработчикам использовать существующие кодовые базы C и C ++ и запускать их в сети без каких-либо модификаций», — сказал Абухадидже. «Это отлично подходит для повторного использования старого кода, например ffmpeg — это означает, что его не нужно переписывать на JavaScript «.

«WebAssembly также позволяет писать критически важные для производительности компоненты на Rust, а затем запускать их с почти нативной производительностью. WebAssembly может работать быстрее или более предсказуемо, чем JavaScript, поскольку это более низкий уровень».

Код на будущее

Bytecode Alliance рассматривает WebAssembly и различные связанные проекты инфраструктуры кода, такие как Системный интерфейс WebAssembly (WASI), WebAssembly Micro Runtime (WAMR) и Lucet, как способ работы с реестрами пакетов, которые сложно защитить, такими как npm, PyPI и crates.io, которые составляют основу современной разработки программного обеспечения.

Реестры пакетов — это, по сути, базы данных ранее написанного кода, которые разработчики могут импортировать в свои собственные проекты, чтобы им не приходилось решать проблемы, уже решенные существующими программами. Это экономит огромное количество времени, но может привести к проблемам с безопасностью, если импортированные модули имеют непреднамеренные или преднамеренные недостатки.

Читайте также:
Boeing потратит более 2,5 млрд долларов на урегулирование обвинения в мошенничестве в связи с безопасностью 737 Max • Реестр

Как писал Лин Кларк, старший главный инженер-программист Fastly, в 2019 году, когда он работал в Mozilla, 80 процентов кодовых баз берутся из этих реестров пакетов. Таким образом, можно многого добиться, ограничив потенциальный вред от любых ошибочных или вредоносных библиотек в приложении.

WebAssembly стремится сделать это с помощью нанопроцессов, которые создают изолированные песочницы с эффективным использованием памяти для каждого модуля или библиотеки wasm. Он может заменить микросервисы изолированными нанопроцессами на основе wasm. И это более или менее Миссия Альянса байт-кода.

Благодаря включению в организацию 501 (C) (6) и расширению членского состава Bytecode Alliance стремится расширить свое видение более модульных, безопасных и высокопроизводительных приложений на более широкий набор сред, таких как облако и периферия сети.

«WebAssembly и новая спецификация WebAssembly System Interface (WASI) позволяют облачным решениям стать более безопасными по умолчанию и помогают решать вычислительные задачи в различных средах, включая« крошечные края »систем на кристалле (SoCs). ) и микроконтроллеры (MCU) », — сказал Ральф Сквиллас, главный программный менеджер Azure Core Upstream, член правления Microsoft и Bytecode Alliance.

Холли сказал, что у технического сообщества есть шанс изменить способ создания программного обеспечения, чтобы дать возможность небольшим командам разрабатывать большие проекты, которые будут одновременно безопасными и быстрыми.

«Достижение неуловимого трифекта — простой состав, изоляция дефектов и высокая производительность — требует как правильной технологии, так и скоординированных усилий всей экосистемы для ее правильного развертывания», — сказал он.

Читайте также:
Rockset стремится к низкому уровню кода, чтобы расширить привлекательность своей аналитической базы данных в реальном времени °

Может быть, wasm и есть та технология. ®