Windows 10 стала единственной программной платформой Microsoft, управляющей различными устройствами: от микроконтроллеров и до больших серверных систем. Только вдумайся: одно ядро для ПК, для миниатюрных девайсов (Internet of Things), консоли (Xbox One), моноблока (Surface Hub), устройств дополненной реальности HoloLens! Между ядром и прикладными программами расположена система выполнения UWP. Она служит подсистемой, которая предоставляет приложениям аппаратную функциональность, управляемую ядром посредством драйверов устройств. Программистам, соответственно, предложены высокоуровневые средства для взаимодействия с системой. В этой статье мы в деталях разберемся в платформе UWP и в ее возможностях управления компьютером.

Коротко о главных фичах UWP

Universal Windows Platform включает все те передовые возможности и сервисы, которые зарекомендовали себя еще в Metro и Windows RunTime. Это живые плитки, информация на экране блокировки, соответствующая текущему времени и зоне пребывания устройства, всплывающие уведомления, в необходимый момент напоминающие пользователю о разного рода событиях в системе, Action Center, позволяющий настраивать всплывающие уведомления и другой контент, с которым юзеру надо взаимодействовать; выполнение приложения в фоновом потоке, откуда его можно всегда вызвать или восстановить посредством триггеров, происходящих при определенных условиях, удобных пользователю. Твое приложение может взаимодействовать с другими процессами посредством контрактов; приложение может взаимодействовать также со всем окружающим миром: им можно управлять голосовыми командами, оно может общаться с другими устройствами по Bluetooth и многое другое.

 

Взаимодействие с аппаратными платформами

Помимо хороших новостей, с которыми я познакомил тебя во введении, есть одна плохая. На самом деле она скорее средняя :). Дело в том, что приложения для UWP не «унаследованные», их придется писать с нуля. То есть ради благого дела исполнения одного бинарника на всех устройствах придется поднапрячься. Кстати, когда я говорю про «один бинарник», я немного лукавлю. Когда разработчик заливает свое приложение в общий для всех платформ Store, находящийся в облаке компилятор .NET Native (подробнее см. в предыдущей статье) компилирует приложение под все поддерживаемые Windows 10 микропроцессоры.

Между аппаратными платформами приложение сохраняет не только общий функциональный код, но и общий пользовательский интерфейс. Однако различные устройства предлагают наличие определенных хардварных расширений: у смартфона по сравнению с PC это акселерометр, Touch-screen (есть на PC, но далеко не на всех), GPS, компас, аппаратная кнопка BACK и прочее. В то же время у смартфона отсутствует жесткий диск, CD/DVD/Blue-ray. С такими аппаратными возможностями позволяют работать специально заточенные под определенный вид девайса расширения — SKU: Desktop SKU, Mobile SKU, IoT SKU, Xbox SKU и так далее.

Расширения ядра
Расширения ядра

Если абстрактно представить устройство операционной системы Windows 10, то мы увидим расширения SKU под ядром, которые и являются ядерными компонентами. Отсюда следует, что эти расширения подобны драйверам устройств. С другой стороны над ядром находится Universal Windows Platform — универсальная платформа для выполнения специальных приложений.

Продолжение доступно только подписчикам

Вариант 1. Оформи подписку на «Хакер», чтобы читать все материалы на сайте

Подписка позволит тебе в течение указанного срока читать ВСЕ платные материалы сайта. Мы принимаем оплату банковскими картами, электронными деньгами и переводами со счетов мобильных операторов. Подробнее о подписке

Вариант 2. Купи один материал

Заинтересовала информация, но нет возможности оплатить подписку? Тогда этот вариант для тебя! Обрати внимание: этот способ покупки доступен только для материалов, опубликованных более двух месяцев назад.


Юрий Язев

Юрий Язев

Программист, разработчик компьютерных игр. Старый автор журнала «Хакер»

1 комментарий

  1. Дмитрий Юнушкин

    14.11.2015 at 10:54

    Круто!!! Все равно винда приятней чем пингвины) (не холливара ради). А это будет работать с CSI камерой на распберри Пи2? Или это только для вебок на USB годится.

Оставить мнение

Check Also

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

Российское кибероружие, построенное на утекших у АНБ эксплоитах, маскировалось под вирус-в…