Проект Minoca, в рамках которого развивается операционная система для потребительских интернет-устройств и встраиваемой техники, переведён в разряд свободных проектов. Код открыт под лицензией GPLv3. Сборки подготовлены для архитектур x86, ARMv6 и ARMv7, в том числе сформированы загрузочные образы для плат Raspberry Pi 2, Raspberry Pi, BeagleBone Black, Asus C201, PandaBoard и Galileo, а также эмулятор на основе QEMU. Система модульная - подсистемы ядра отделены друг от друга, а взаимодействие с оборудованием абстрагировано, что позволяет поставлять для разных архитектур единое унифицированное ядро, расширяемое через систему надстроек. Драйверы устройств не привязаны к ядру и оформляются в виде универсальных исполняемых файлов, не зависящих от версии ядра (обновление ядра не требует обновления драйверов) и загружаемых по необходимости. Minoca имеет событийно-ориентированную архитектуру, поддерживает многопроцессорные конфигурации, вытесняющую многозадачность, сетевой, беспроводной и USB стеки, предоставляет подборку драйверов. В качестве файловой системы поддерживается FAT. Операционная система примечательна низким потреблением ресурсов и способна работать на оборудовании с 5 Мб ОЗУ. Система также изначально нацелена на обеспечение минимального энергопотребления и использует встроенные средства для переключения режимов процессоров, влияющих на потребление энергии, а также может минимизировать число пробуждений фоновых процессов в условиях простоя, что позволяет дольше находиться в глубоких режимах экономии энергопотребления. Для разработки приложений предлагается POSIX-подобный интерфейс, благодаря которому в Minoca уже удалось собрать множество существующих популярных пакетов. В настоящее время для установки из специального репозитория доступно более 100 приложений, среди которых GCC, Python 2.7, Perl, PHP, Ruby, Lua, zsh, bash, binutils, boost, cmake, vim, emacs, git, apache httpd, nginx, MySQL, PostgreSQL, Node.js , OpenLDAP, OpenSSH, unbound. Для установки и обновления программ задействован пакетный менеджер opkg, также применяемый в OpenEmbedded и OpenWrt. В качестве командной оболочки и для выполнения shell-скриптов проектом развивается интерактивный интерпретатор Chalk.
Подготовлен релиз дистрибутива Manjaro Linux 16.10, построенного на основе Arch Linux и ориентированного на начинающих пользователей. Дистрибутив примечателен наличием упрощённого и дружественного пользователю процесса установки, поддержкой автоматического определения оборудования и установки необходимых для его работы драйверов. Manjaro поставляется в виде live-сборок с графическими окружениями KDE (2.1 Гб) и Xfce (1.5 Гб). В дальнейшем ожидается публикация редакций с рабочими столами на основе GNOME 3, MATE, Enlightenment, LXDE, Cinnamon, Fluxbox, AwesomeWM, PekWM и LXQt.
Для управления репозиториями в Manjaro используется собственный инструментарий BoxIt, спроектированный по образу Git. Репозиторий поддерживается по принципу непрерывного включения обновлений (rolling), но новые версии проходят дополнительную стадию стабилизации. Кроме собственного репозитория, имеется поддержка использования репозитория AUR (Arch User Repository). Дистрибутив снабжен графическим инсталлятором и графическим интерфейсом для настройки системы.
В новой версии продолжена работа по оттачиванию пользовательского окружения на основе Xfce 4.12, задействована новая тема оформления, унифицированная с оформлением, используемым в сборках Manjaro с KDE. Редакция на базе KDE переведена на новые выпуски рабочего стола Plasma 5.8 и приложений KDE Applications 16.08. Обновлены системные компоненты, в том числе системный менеджер systemd 231, драйвер NVIDIA 370.28, пакетный менеджер Pamac 4.1.5 и инсталлятор Calamares 2.4.3.
Google и Apple присоединились к блокировке сертификатов WoSign и StartCom.
Следом за Mozilla компания Google объявила о введении ограничений в отношении сертификатов, выданных удостоверяющими центрами WoSign и StartCom. Начиная с Chrome 56 сертификаты, выданные WoSign и StartCom после 21 октября 2016 года, будут помечаться как не заслуживающие доверия. Похожее решение принято компанией Apple, которая начнёт помечать в iOS как небезопасные сертификаты WoSign и StartCom, выписанные после 19 сентября.
В ответ компания WoSign сообщила о прекращении бесплатной выдачи сертификатов, аудите и повышению безопасности своей внутренней инфраструктуры, проведении работы по выполнению требований Mozilla и запуске процесса перехода на новые корневые сертификаты. Компания WoSign также опубликовала отчёт с разбором отмеченных представителями Mozilla нарушений, в том числе августовского инцидента, в результате которого была зафиксирована выдача постороннему лицу сертификата для одного из доменов GitHub.
Chrome, Firefox и Edge перешли на новый этап тестирования технологии WebAssembly
Разработчики web-браузеров Firefox, Chrome и Edge выступили с совместной инициативой WebAssembly Browser Preview, в рамках которой начался новый этап тестирования технологии WebAssembly, предоставляющей не зависящий от браузера универсальный низкоуровневый промежуточный код для выполнения в браузере приложений, скомпилированных из различных языков программирования.
WebAssembly достиг состояния кандидата на получение статуса MVP (минимально жизнеспособный продукт). Семантика текстового псевдоязыка, бинарный формат и JavaScript API близки к стабилизации, а реализации WebAssembly унифицированы в JavaScript-движках V8, SpiderMonkey, Chakra и JavaScriptCore. По сравнению с первой тестовой версией в JavaScript API появилась поддержка параллельной компиляции, кэширования машинного кода, совместного использования кода, динамического связывания и потоковой компиляции.
В Chrome и Firefox поддержка WebAssembly уже поставляется в штатных сборках в качестве отдельно включаемой опции ("chrome://flags#enable-webassembly" и "about:config javascript.options.wasm"), а в Edge входит в состав экспериментальных сборок. Для разработчиков подготовлен работающий инструментарий для компиляции модулей WebAssembly из кода на языках C/C++. Например, для компиляции С/C++/asm.js в WebAssembly можно использовать Emscripten или созданный на его основе специальный компилятор Binaryen. Для преобразования тестового формата в бинарный поставляется транслятор WABT.
Включение WebAssembly по умолчанию и публикация первой версии спецификации ожидаются в первом квартале 2017 года, но точные сроки будут зависеть от хода тестирования и отзывов сообщества. Mozilla планирует включить WebAssembly по умолчанию в выпуске Firefox 52, намеченном на 7 марта. Для демонстрации производительности WebAssembly подготовлен специальный вариант игры Angry Bots на базе движка Unity. В текущем виде при сравнении с asm.js наибольший выигрыш в производительности достигается при решении вычислительных задач, например, 64-разрядные арифметические операции в WebAssembly выполняются лишь в 1.13 раза медленнее, чем нативный код, в то время как в asm.js такие вычисления производятся в 8.93 раза медленнее.
По своим задачам WebAssembly во многом напоминает PNaCl (Portable Native Client) и Asm.js. Основное отличие от Asm.js состоит в том, что WebAssembly является бинарным форматом, не завязанным на исходных текстах JavaScript и позволяющим выполнять в браузере низкоуровневый промежуточный код. В отличие от PNaCl, промежуточный код WASM не является машинным кодом и не изолирован в отдельной виртуальной машине, а выполняется с похожим на JavaScript уровнем изоляции. Среди основных задач WebAssembly выделяется обеспечение переносимости между браузерами, предсказуемость поведения и идентичности выполнения кода на разных платформах. Использование WebAssembly также позволит существенно сократить размер приложений, благодаря компактному промежуточному коду, и увеличить скорость декодирования.
Территория Linux
:الدب النووي
Подборка новостей opennet
Проект Minoca, в рамках которого развивается операционная система для потребительских интернет-устройств и встраиваемой техники, переведён в разряд свободных проектов. Код открыт под лицензией GPLv3. Сборки подготовлены для архитектур x86, ARMv6 и ARMv7, в том числе сформированы загрузочные образы для плат Raspberry Pi 2, Raspberry Pi, BeagleBone Black, Asus C201, PandaBoard и Galileo, а также эмулятор на основе QEMU.
Система модульная - подсистемы ядра отделены друг от друга, а взаимодействие с оборудованием абстрагировано, что позволяет поставлять для разных архитектур единое унифицированное ядро, расширяемое через систему надстроек. Драйверы устройств не привязаны к ядру и оформляются в виде универсальных исполняемых файлов, не зависящих от версии ядра (обновление ядра не требует обновления драйверов) и загружаемых по необходимости. Minoca имеет событийно-ориентированную архитектуру, поддерживает многопроцессорные конфигурации, вытесняющую многозадачность, сетевой, беспроводной и USB стеки, предоставляет подборку драйверов. В качестве файловой системы поддерживается FAT.
Операционная система примечательна низким потреблением ресурсов и способна работать на оборудовании с 5 Мб ОЗУ. Система также изначально нацелена на обеспечение минимального энергопотребления и использует встроенные средства для переключения режимов процессоров, влияющих на потребление энергии, а также может минимизировать число пробуждений фоновых процессов в условиях простоя, что позволяет дольше находиться в глубоких режимах экономии энергопотребления.
Для разработки приложений предлагается POSIX-подобный интерфейс, благодаря которому в Minoca уже удалось собрать множество существующих популярных пакетов. В настоящее время для установки из специального репозитория доступно более 100 приложений, среди которых GCC, Python 2.7, Perl, PHP, Ruby, Lua, zsh, bash, binutils, boost, cmake, vim, emacs, git, apache httpd, nginx, MySQL, PostgreSQL, Node.js , OpenLDAP, OpenSSH, unbound. Для установки и обновления программ задействован пакетный менеджер opkg, также применяемый в OpenEmbedded и OpenWrt. В качестве командной оболочки и для выполнения shell-скриптов проектом развивается интерактивный интерпретатор Chalk.
Для управления репозиториями в Manjaro используется собственный инструментарий BoxIt, спроектированный по образу Git. Репозиторий поддерживается по принципу непрерывного включения обновлений (rolling), но новые версии проходят дополнительную стадию стабилизации. Кроме собственного репозитория, имеется поддержка использования репозитория AUR (Arch User Repository). Дистрибутив снабжен графическим инсталлятором и графическим интерфейсом для настройки системы.
В новой версии продолжена работа по оттачиванию пользовательского окружения на основе Xfce 4.12, задействована новая тема оформления, унифицированная с оформлением, используемым в сборках Manjaro с KDE. Редакция на базе KDE переведена на новые выпуски рабочего стола Plasma 5.8 и приложений KDE Applications 16.08. Обновлены системные компоненты, в том числе системный менеджер systemd 231, драйвер NVIDIA 370.28, пакетный менеджер Pamac 4.1.5 и инсталлятор Calamares 2.4.3.
Следом за Mozilla компания Google объявила о введении ограничений в отношении сертификатов, выданных удостоверяющими центрами WoSign и StartCom. Начиная с Chrome 56 сертификаты, выданные WoSign и StartCom после 21 октября 2016 года, будут помечаться как не заслуживающие доверия. Похожее решение принято компанией Apple, которая начнёт помечать в iOS как небезопасные сертификаты WoSign и StartCom, выписанные после 19 сентября.
В ответ компания WoSign сообщила о прекращении бесплатной выдачи сертификатов, аудите и повышению безопасности своей внутренней инфраструктуры, проведении работы по выполнению требований Mozilla и запуске процесса перехода на новые корневые сертификаты. Компания WoSign также опубликовала отчёт с разбором отмеченных представителями Mozilla нарушений, в том числе августовского инцидента, в результате которого была зафиксирована выдача постороннему лицу сертификата для одного из доменов GitHub.
Разработчики web-браузеров Firefox, Chrome и Edge выступили с совместной инициативой WebAssembly Browser Preview, в рамках которой начался новый этап тестирования технологии WebAssembly, предоставляющей не зависящий от браузера универсальный низкоуровневый промежуточный код для выполнения в браузере приложений, скомпилированных из различных языков программирования.
WebAssembly достиг состояния кандидата на получение статуса MVP (минимально жизнеспособный продукт). Семантика текстового псевдоязыка, бинарный формат и JavaScript API близки к стабилизации, а реализации WebAssembly унифицированы в JavaScript-движках V8, SpiderMonkey, Chakra и JavaScriptCore. По сравнению с первой тестовой версией в JavaScript API появилась поддержка параллельной компиляции, кэширования машинного кода, совместного использования кода, динамического связывания и потоковой компиляции.
В Chrome и Firefox поддержка WebAssembly уже поставляется в штатных сборках в качестве отдельно включаемой опции ("chrome://flags#enable-webassembly" и "about:config javascript.options.wasm"), а в Edge входит в состав экспериментальных сборок. Для разработчиков подготовлен работающий инструментарий для компиляции модулей WebAssembly из кода на языках C/C++. Например, для компиляции С/C++/asm.js в WebAssembly можно использовать Emscripten или созданный на его основе специальный компилятор Binaryen. Для преобразования тестового формата в бинарный поставляется транслятор WABT.
Включение WebAssembly по умолчанию и публикация первой версии спецификации ожидаются в первом квартале 2017 года, но точные сроки будут зависеть от хода тестирования и отзывов сообщества. Mozilla планирует включить WebAssembly по умолчанию в выпуске Firefox 52, намеченном на 7 марта. Для демонстрации производительности WebAssembly подготовлен специальный вариант игры Angry Bots на базе движка Unity. В текущем виде при сравнении с asm.js наибольший выигрыш в производительности достигается при решении вычислительных задач, например, 64-разрядные арифметические операции в WebAssembly выполняются лишь в 1.13 раза медленнее, чем нативный код, в то время как в asm.js такие вычисления производятся в 8.93 раза медленнее.
По своим задачам WebAssembly во многом напоминает PNaCl (Portable Native Client) и Asm.js. Основное отличие от Asm.js состоит в том, что WebAssembly является бинарным форматом, не завязанным на исходных текстах JavaScript и позволяющим выполнять в браузере низкоуровневый промежуточный код. В отличие от PNaCl, промежуточный код WASM не является машинным кодом и не изолирован в отдельной виртуальной машине, а выполняется с похожим на JavaScript уровнем изоляции. Среди основных задач WebAssembly выделяется обеспечение переносимости между браузерами, предсказуемость поведения и идентичности выполнения кода на разных платформах. Использование WebAssembly также позволит существенно сократить размер приложений, благодаря компактному промежуточному коду, и увеличить скорость декодирования.