Windows 10X: первые подробности о контейнеризации и работе приложений

Пару дней назад были раскрыты первые подробности работы новой операционной системы Windows 10 X, и одной из самых важных ее функций - контейнеризации выполняемых приложений.

Типы контейнеров

В новой операционной системе все приложения выполняются в специальных изолированных контейнерах, отделенных от самой ОС.

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

В настоящее время существует три типа контейнеров:

  • Контейнер Win32 запускает «классические» 32- и 64-битные приложения Win32, WinForms, WPF, Electron и т. д., представляя собой среду, аналогичную настольной ОС. Существует всего один контейнер для всех приложений Win32, и он достаточно хорошо совместим со всем существующим программным обеспечением.
  • Контейнер MSIX отлично совместим с существующими приложениями. Они изолируются от других Win32-приложений, но сам запуск производится в контейнере внутри контейнера Win32.
  • UWP-приложения обеспечивают минимальную нагрузку на систему, наилучшую производительность, автономность, безопасность и конфиденциальность.

Разработчики ПО могут самостоятельно выбирать, в каком контейнере будут работать их приложения - Win32, PWA или UWP, хотя конечно UWP приложения наиболее оптимизированы.

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

Контейнеры автоматически оптимизируют производительность и автономность

UWP — наиболее оптимизированы для новой ОС, и обеспечены отличной безопасностью, производительностью и автономностью. На уровне операционной системы они обрабатывают события приостановки и возобновления работы приложения.

Win32-приложения созданны для десктопных ПК, и им не хватает оптимизации UWP для мобильных устройств. Зачастую они являются большее "мощными", чем UWP-приложения, но уступают им же по производительности и времени автономной работы. Тем не менее, даже сейчас «классические» Win32-приложений по-прежнему очень важны для современных мобильных вычислений.

Исправить эту проблему с Win32 и MSIX призван контейнер Win32:

  • Контейнеры Win32 и MSIX сокращают потребление ресурсов, если окна приложений не отображаются на экране
  • Приложения полностью приостанавливаются, если нет открытых окон

Таким образом, приложения Win32 и MSIX не могут работать в фоновом режиме, что помогает экономить системные ресурсы и заряд аккумулятора. Если же приложение активно используется, то контейнер выделяет больше ресурсов для повышения производительности.

Но в таком подходе есть и свои недостатки. Во-первых, «классические» Win32-приложения, скорее всего, не смогут запускать фоновые задачи (они будут работать до приостановки контейнера). Во-вторых, такие приложения не смогут автоматически запускаться после загрузки системы. Отчасти это связано с тем, что в Windows 10X отсутствует системный трей (внезапно, да?)

На счет работы Win32-приложений в фоне решения пока нет. Вопрос обсуждается.

Интересно то, что контейнеры Win32 и MSIX избавляют от необходимости в антивирусном программном обеспечении, что естественно отлично скажется времени автономной работы и на производительности устройства.

Все будет работать

Microsoft заявляет, что контейнеризация Win32-приложений не делает их менее мощными и эти приложения по-прежнему получат полный доступ к мыши, клавиатуре, перу и сенсорной панели, графике DirectX, сети и печати. Старая модель «подключи и работай» всё ещё действует, и устройства будут работать со всеми переферийными устройствами, что вы подключите, включая внешние мониторы.

Также повышен уровень безопасности. Вы сможете запретить всем классическим приложениям получать доступ к таким вещам, как веб-камера, микрофон или местоположение и управлять разрешениями для Win32 на уровне контейнера.

Поскольку в Windows 10X, как упоминалось выше, нет системного трея, «классические» приложения не смогут его использовать. Но это не приведёт к нестабильной работе приложений, даже если они обращаются к тем функциям, которых нет в новой ОС. Сбой приложения из-за ограничений, наложенных контейнером Win32, не должен происходит. Все вызовы функций останутся внутри контейнера и не смогут повлиять на основную ОС.

Одного проводника мало.. дайте два

В Windows 10X используется два файловых менеджера.

Win32-приложения могут по-прежнему использовать классический «Проводник» и старое диалоговое окно выбора файлов с доступом к системным папкам. Эта функция необходима для их корректной работы.

UWP-приложения и сама операционная система будут использовать современный «Проводник», который открывает доступ только к необходимым библиотекам.

Зачем так было делать, пока не ясно, но есть так есть.

Полноэкранный режим приложений

Возможно это покажется странным, но все приложения работают в полноэкранном режиме. По крайней мере на данный момент. Это похоже на то, как приложения запускаются в Windows 8 и в режиме планшета в Windows 10.

Как сказал Кевин Галло, корпоративный вице-президент Microsoft Developer Platform

Причина такого выбора заключается в размере экрана: чем меньше дисплей, больше важность информации в одном конкретном окне. Вряд ли кто-то планирует запускать пять приложений в маленьких окнах на одном 9-дюймовом экране.

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

Отличие редакций

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

Хоть, Microsoft и не классифицирует свои системы таким образом, но фактически выходит что:

  • Windows 10 Home/Pro — создана для Win32-приложений, но может работать с UWP.
  • Windows 10X — создана для запуска UWP, но также может работать с Win32.

Windows 10X создана, чтобы быть быстрой, гибкой, мобильной и безопасной. И как заявляет Microsoft, установка функциональных обновлений будет занимать не более 90 секунд.

И напоследок предлагаем вам посмотреть видео презентации новой операционной системы

Windows
14.02.2020
1 ответ
авторизуйтесь чтобы ответить