Windows ps что это

Обновлено: 07.07.2024

Иногда после обновления Windows 10 подключенная клавиатура или мышь PS/2 (USB), подключенные к вашему компьютеру, перестают работать. Это одна из неприятных проблем с обновлением Windows 10 или переходом на неё с других операционных систем, таких как Windows 7 или 8.

Содержание

Что такое порт PS/2?

Это 6-контактный мини-разъем, используемый для подключения стандартной клавиатуры и мыши ps/2 к компьютеру. Обычно он находится на задней панели системного блока, фиолетовый - для клавиатуры, а зеленый - для мыши.

Решение 1. Измените значение Start параметра I8042prt

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

Компьютер\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt

Внимание! В отличие от USB, порт PS/2 определяется только при запуске компьютера. Теперь система обнаружит порт PS/2 при включении компьютера, и это может решить проблему клавиатуры PS/2.

Компьютер\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\kbdhid

Внимание! Ниже представлены возможные значения параметра Start с кратким описанием:
0-Boot - вызывает драйвер, который подгружается (но не запускается) загрузчиком. Если ошибок нет, запускается драйвер, во время инициализации ядра до загрузки любых не загрузочных драйверов.

1-System - вызывает драйвер, который загружается и запускается во время инициализации ядра после того, как драйверы со значением Start "0" были запущены.

2-Автозагрузка - вызывает драйвер или службу, которая инициализируется при запуске системы диспетчером сеансов (Smss.exe) или службами.

3-On Demand - вызывает драйвер или службу, который диспетчер управления службами (SCM) будет запускать только по запросу. Эти драйверы необходимо запускать вручную, вызывая интерфейс прикладного программирования Win32 SCM (API), например как оснастку Службы.

4-Disable - вызывает отключенный (не запущенный) драйвер или службу.

5-Отложенный запуск - менее критичные службы будут запускаться после загрузки, чтобы операционная система быстрее реагировала на запросы пользователя. Этот тип запуска был впервые представлен в Windows Vista.

Решение 2. Достаньте и вставьте снова батарейку BIOS

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

Решение 3. Обновите драйверы клавиатуры

Иногда стандартные клавиатуры PS/2 или USB не могут использоваться из-за неправильного драйвера. В диспетчере устройств вы можете видеть клавиатуру PS/2 или USB в виде желтого восклицательного знака.

  1. В окне поиска Windows 10 введите Диспетчер устройств и нажмите на это приложение.
  2. В дереве устройств щелкните правой кнопкой мыши Стандартная клавиатура PS/2 или клавиатура USB и выберите Обновить драйвер.
  3. Windows автоматически найдет нужный драйвер в Интернете и установит его для клавиатуры PS/2 или USB. После установки вам нужно будет перезагрузить компьютер, чтобы снова проверить клавиатуру.
    Если клавиатура PS/2 или USB по-прежнему не работает, выполните следующие действия.
  4. Вам следует выбрать Найти драйверы на этом компьютере. Это поможет найти и установить драйверы вручную.
  5. Выберите Выбрать драйвер из списка доступных драйверов на компьютере. Здесь вы увидите совместимые драйверы клавиатуры PS/2 и USB.
  6. Выберите совместимые устройства с клавиатурой PS/2 или HID, например клавиатуру PS/2 PC/AT (101 клавиша), чтобы установить ее.

Установка или обновление драйвера совместимого устройства поможет вам решить эту проблему.

Windows PowerShell позволяет системным администраторам автоматизировать большинство рутинных задач. С ее помощью можно менять настройки, останавливать и запускать сервисы, а также производить обслуживание большинства установленных приложений. Воспринимать синее окошко как еще один интерпретатор команд было бы неправильно. Такой подход не отражает сути предложенных корпорацией Microsoft инноваций. На самом деле возможности Windows PowerShell гораздо шире: в небольшом цикле статей мы попробуем разобраться, чем решение Microsoft отличается от более привычных нам средств.




Основные возможности

Windows PowerShell позволяет:

  • Менять настройки операционной системы;
  • Управлять службами и процессами;
  • Настраивать роли и компоненты сервера;
  • Устанавливать программное обеспечение;
  • Управлять установленным ПО через специальные интерфейсы;
  • Встраивать исполняемые компоненты в сторонние программы;
  • Создавать сценарии для автоматизации задач администрирования;
  • Работать с файловой системой, реестром Windows, хранилищем сертификатов и т.д.

Оболочка и среда разработки

Существует Windows PowerShell в двух ипостасях: помимо эмулятора консоли с командной оболочкой есть интегрированная среда сценариев (Integrated Scripting Environment — ISE). Чтобы получить доступ к интерфейсу командной строки достаточно выбрать соответствующий ярлык в меню Windows или запустить powershell.exe из меню «Выполнить». На экране появится синее окошко, заметно отличающееся по возможностям от допотопного cmd.exe. Там есть автодополнение и другие фишки, привычные пользователям командных оболочек для Unix-систем.


Для работы с оболочкой нужно запомнить некоторые сочетания клавиш:

  • Стрелки вверх и вниз прокручивают историю для повтора ранее набранных команд;
  • Стрелка вправо в конце строки перенабирает предыдущую команду посимвольно;
  • Ctrl+Home удаляет набранный текст от позиции курсора до начала строки;
  • Ctrl+End удаляет текст от курсора до конца строки.


Windows PowerShell ISE является полноценной средой разработки с поддерживающим вкладки и подсветку синтаксиса редактором кода, конструктором команд, встроенным отладчиком и другими программистскими радостями. Если в редакторе среды разработки после имени команды написать знак дефис, вы получите в выпадающем списке все доступные параметры с указанием типа. Запустить PowerShell ISE можно либо через ярлык из системного меню, либо с помощью исполняемого файла powershell_ise.exe.


Командлеты

Помимо Get в командлетах для обозначения действий используются и другие глаголы (и не только глаголы, строго говоря). В списке ниже мы приведем несколько примеров:

Add — добавить;
Clear — очистить;
Enable — включить;
Disable — выключить;
New — создать;
Remove — удалить;
Set — задать;
Start — запустить;
Stop — остановить;
Export — экспортировать;
Import — импортировать.

Есть системные, пользовательские и опциональные командлеты: в результате выполнения все они возвращают объект или массив объектов. К регистру они не чувствительны, т.е. с точки зрения интерпретатора команд нет разницы между Get-Help и get-help. Для разделения используется символ ‘;’, но ставить его обязательно только если в одной строке выполняется несколько командлетов.

Командлеты Windows PowerShell группируются в модули (NetTCPIP, Hyper-V и т.д.), а для поиска по объекту и действию существует командлет Get-Command. Показать справку по нему можно так:


По умолчанию команда отображает краткую справку, но в командлеты при необходимости передаются параметры (аргументы). С их помощью можно, например, получить детальную (параметр -Detailed) или полную (параметр -Full) справку, а также вывести на экран примеры (параметр -Examples):


Справка в Windows PowerShell обновляется командлетом Update-Help. Если строка команд получается слишком длинной, аргументы командлета можно перенести на следующую, написав служебный символ ‘`’ и нажав Enter — просто закончить писать команду на одной строке и продолжить на другой не получится.

Ниже приведем несколько примеров распространенных командлетов:

Get-Process — показать запущенные в системе процессы;
Get-Service — показать службы и их статус;
Get-Content — вывести содержимое файла.

Для часто используемых командлетов и внешних утилит в Windows PowerShell есть короткие синонимы — алиасы (от англ. Alias). Например, dir — алиас Get-ChildItem. Есть в списке синонимов и аналоги команд из Unix-систем (ls, ps и т.д.), а командлет Get-Help вызывается командой help. Полный список синонимов можно посмотреть с помощью командлета Get-Alias:


Сценарии, функции, модули и язык PowerShell

Скрипты Windows PowerShell хранятся в виде обычных текстовых файлов с расширением .ps1. Запустить их двойным кликом нельзя: нужно правой кнопкой мыши вызвать контекстное меню и выбрать пункт «Запустить в PowerShell». Из консоли придется либо указать полный путь к скрипту, либо перейти в соответствующий каталог и написать имя файла. Запуск сценариев также ограничен системной политикой, а для проверки текущих настроек можно использовать командлет Get-ExecutionPolicy, который выдаст одно из следующих значений:

Restricted — запуск сценариев запрещен (по умолчанию);
AllSigned — разрешен только запуск подписанных доверенным разработчиком сценариев;
RemoteSigned — разрешен запуск подписанных и собственных сценариев;
Unrestricted — разрешен запуск любых сценариев.

У администратора есть два варианта действий. Наиболее безопасный предполагает подписание скриптов, но это довольно серьезное колдунство — мы будем разбираться с ним в следующих статьях. Сейчас пойдем по пути наименьшего сопротивления и поменяем политику:


PowerShell для этого придется запустить от имени администратора, хотя с помощью специального параметра можно изменить политику и для текущего пользователя.

Пишутся скрипты на объектно-ориентированном языке программирования, команды которого именуются по тому же принципу, что и рассмотренные ранее командлеты: «Действие-Объект» («Глагол-Существительное»). Основное его предназначение — автоматизация задач администрирования, но это полноценный интерпретируемый язык, в котором есть все необходимые конструкции: условный переход, циклы, переменные, массивы, объекты, обработка ошибок и т.д. Для написания сценариев годится любой текстовый редактор, но удобнее всего запустить Windows PowerShell ISE.

В скрипт можно передавать параметры, делать их обязательными, а также задавать значения по умолчанию. Кроме того Windows PowerShell позволяет создать функции и вызывать их точно так же, как и командлеты: для этого используется конструкция Function и фигурные скобки. Сценарий с функциями называется модулем и имеет расширение .psm1. Модули должны храниться в каталогах, определенных в переменных окружения PowerShell. Посмотреть их можно при помощи следующей команды:

Конвейеры

В последнем примере мы применили знакомую пользователям оболочек для Unix-систем конструкцию. В Windows PowerShell вертикальная черта также позволяет передать выход одной команды на вход другой, но в реализации конвейера есть и существенная разница: речь здесь идет уже не о наборе символов или каком-то тексте. Встроенные командлеты или пользовательские функции возвращают объекты или массивы объектов, а также могут получать их на входе. Как в Bourne shell и его многочисленных последователях, в PowerShell с помощью конвейера упрощается выполнение сложных задач.

Простейший пример конвейера выглядит так:


Сначала выполняется командлет Get-Service, а потом все полученные им службы передаются на сортировку по свойству Status командлету Sort-Object. В какой именно аргумент передается результат работы предыдущего участка конвейера, зависит от его типа — обычно это InputObject. Подробнее этот вопрос будет рассматриваться в посвященной языку программирования PowerShell статье.

При желании цепочку можно продолжить и передать результат работы Sort-Object еще одному командлету (выполняться они будут слева направо). Кстати, пользователям Windows доступна и привычная всем юниксоидам конструкция для постраничного вывода:

Запуск задач в фоновом режиме

Довольно часто бывает нужно запустить некую команду в фоне, чтобы не дожидаться результата ее выполнения в сессии оболочки. В Windows PowerShell есть несколько командлетов на такой случай:

Start-Job — запуск фоновой задачи;
Stop-Job — остановка фоновой задачи;
Get-Job — просмотр списка фоновых задач;
Receive-Job — просмотр результата выполнения фоновой задачи;
Remove-Job — удаление фоновой задачи;
Wait-Job — перевод фоновой задачи обратно в консоль.

Для запуска фоновой задачи мы используем командлет Start-Job и в фигурных скобках указываем команду или набор команд:


Фоновыми задачами в Windows PowerShell можно манипулировать, зная их имена. Для начала научимся их отображать:


Теперь покажем результат работы задания Job1:


Всё довольно просто.

Удаленное выполнение команд

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

  • У многих командлетов есть параметр -ComputerName , но таким способом не получится, например, создать конвейер;
  • Командлет Enter-PSSession позволяет создать на удаленной машине интерактивный сеанс;
  • С помощью командлета Invoke-Command можно выполнять команды или сценарии на одном или нескольких удаленных компьютерах.

Версии PowerShell

С момента первого релиза в 2006 году PowerShell серьезно изменился. Инструмент доступен для множества систем, работающих на разных аппаратных платформах (x86, x86-64, Itanium, ARM): Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008/2008 R2, Windows 7, Windows 8, Windows 8.1, Windows RT, Windows RT 8.1, Windows Server 2012/2012 R2, Windows 10, Windows Server 2016, GNU/Linux и OS X. Последний релиз 6.2 выпущен 10 января 2018 года. Написанные для более ранних версий скрипты с высокой вероятностью будут работать в более поздних, а вот с обратным переносом могут возникнуть проблемы, поскольку за годы развития в PowerShell появилось большое количество новых командлетов. Узнать версию установленной на компьютере командной оболочки можно с помощью свойства PSVersion встроенной переменной $PSVersionTable:


Также можно воспользоваться командлетом:


То же самое делается и с помощью командлета Get-Host. На самом деле вариантов множество, но для их применения нужно изучить язык программирования PowerShell, чем мы и займемся в следующей статье.

Итоги

Грабли, на которые я наступил. Руководства, инструкции, ощущения.

Если инфорация оказалась интересна и/или полезна, не побрезгуйте, оставьте комментарий ;)

четверг, 1 июня 2017 г.

Аналог команды "ps" в Windows PowerShell. Управление процессами

Заметка одной строкой :)

Посмотреть список запущенных процессов в PowerShell:

Список запущенных процессов:

PS C:\Users\user> Get-Process
Handles NPM(K) PM(K) WS(K) CPU(s) Id SI ProcessName
------- ------ ----- ----- ------ -- -- -----------
641 31 22128 18644 29,20 5024 1 ApplicationFrameHost
123 10 2124 1336 2944 0 armsvc
246 10 2432 3564 1888 1 atieclxx
121 8 1896 1184 1636 0 atiesrxx
1014 28 26640 11668 686,06 11272 0 audiodg
116 9 2588 3904 93,36 8216 1 AutoHotkey
443 25 15488 704 0,55 1828 1 Calculator
.
254 12 2048 2780 1240 0 WUDFHost

Если известно имя процесса или его часть, то можно вывести список с уточнением:
PS C:\Users\user> Get-Process -name calc*
Handles NPM(K) PM(K) WS(K) CPU(s) Id SI ProcessName
------- ------ ----- ----- ------ -- -- -----------
443 25 15488 704 0,55 1828 1 Calculator

Остановить процесс с известным именем
PS C:\Users\user> Stop-Process -Name Calc*

Проверяем:
PS C:\Users\user> Get-Process -name calc*
PS C:\Users\user>
Процесса больше нет.

Если известен идентификатор процесса:
PS C:\Users\user> Get-Process -name calc*

Handles NPM(K) PM(K) WS(K) CPU(s) Id SI ProcessName
------- ------ ----- ----- ------ -- -- -----------
464 26 20204 47528 0,72 10848 1 Calculator

PS C:\Users\user> Stop-Process 10848
PS C:\Users\user> Get-Process -name calc*
PS C:\Users\user>

Подробнее о командах можно узнать с помощью команды get-help <имя команды>:

PS C:\Users\user> Get-Help Get-Process
NAME
Get-Process
SYNTAX
Get-Process [[-Name] <string[]>] [-ComputerName <string[]>] [-Module] [-FileVersionInfo] [<CommonParameters>]
Get-Process [[-Name] <string[]>] -IncludeUserName [<CommonParameters>]
Get-Process -Id <int[]> [-ComputerName <string[]>] [-Module] [-FileVersionInfo] [<CommonParameters>]
Get-Process -Id <int[]> -IncludeUserName [<CommonParameters>]
Get-Process -InputObject <Process[]> [-ComputerName <string[]>] [-Module] [-FileVersionInfo] [<CommonParameters>]
Get-Process -InputObject <Process[]> -IncludeUserName [<CommonParameters>]

Если открыть любой обзор корпоративных версий Windows 10 LTSC и LTSB, в комментариях вы наверняка наткнетесь на яростный спор их приверженцев с пользователями обычной Windows 10. Причем аргументы обеих сторон не лишены логики и здравого смысла и, похоже, этому спору не будет конца. Корпоративные версии Windows 10 лишены магазина приложений Microsoft Store и большинства UWP-приложений, но при желании их можно вернуть туда с помощью довольно простых действий.

реклама


Но если без Microsoft Store можно прожить даже на игровом ПК, а для UWP-приложений легко найти замену среди бесплатных программ, то ограничение версии Windows 10 LTSC стало серьезной проблемой для некоторых игр. Современные игры все чаще требуют новую версию Windows 10 для запуска, например, Age of Empires: Definitive Edition, Age of Empires II: Definitive Edition и Age of Empires III: Definitive Edition требуют Windows 10 версии 1903 и выше.

MSI RTX 3070 сливают дешевле любой другой, это за копейки Дешевая 3070 Gigabyte Gaming - успей пока не началось


Такую же версию Windows 10 требуют авиасимулятор Microsoft Flight Simulator, приключенческий шутер State of Decay 2: Juggernaut Edition и шутер Gears 5, и пользователи Windows 10 LTSC версии 1809 запустить их не могли. Такая же ситуация продолжится и в дальнейшем, но новая Windows 10 LTSC 2021 с версией 21H2 в этом плане пока дает возможность запускать новые игры и сохранит эту возможность еще долго.

реклама

var firedYa28 = false; window.addEventListener('load', () => < if(navigator.userAgent.indexOf("Chrome-Lighthouse") < window.yaContextCb.push(()=>< Ya.Context.AdvManager.render(< renderTo: 'yandex_rtb_R-A-630193-28', blockId: 'R-A-630193-28' >) >) >, 3000); > > >);


Еще одна проблема Windows 10 LTSC в домашнем использовании проявляется в том случае, если вы используете новые комплектующие. Например, оптимизации под процессоры AMD Ryzen, увеличивающие их производительность и появившиеся в Windows 10 версии 1903, до Windows 10 LTSC добрались только спустя полтора года. Windows Display Driver Model, влияющий на производительность ПК в играх и приносящий новые функции, обновляется на Windows 10 LTSC заметно реже.


Если в Windows 10 May 2020 Update (версия 2004) появилась поддержка WDDM 2.7, дающего возможности планирование графического процессора с аппаратным ускорением и DirectX Raytracing (DXR) Tier 1.1, то Windows 10 LTSC версии 1809 обходилась только версией WDDM 2.5. Поэтому для современного производительного игрового ПК Windows 10 LTSC будет не лучшим выбором и лучше обратить внимание на обычную Windows 10.

реклама


Как видите, минусов у Windows 10 LTSC немало, и к ним еще стоит добавить проблемы с домашним лицензированием. Но ознакомительную 90 дневную версию Windows 10 LTSC Microsoft разрешает скачать со своего сайта.


Но чем же Windows 10 LTSC привлекает пользователей? В первую очередь - отсутствием так называемого программного "хлама" и "мусора", от которого большинство пользователей стараются избавиться. Посмотрите, как лаконично выглядит меню "Пуск" и панель задач у Windows 10 LTSC 2021, хотя вездесущий браузер Microsoft Edge проник и сюда:

реклама


А вот это меню "Пуск" и панель задач из обычной Windows 10 Pro 21H2, чувствуете разницу?


Весь этот программный мусор, конечно же, занимает место на диске. Windows 10 Pro 21H2 занимает на диске 20 ГБ, включая файл подкачки, равный 2 ГБ.


Windows 10 LTSC 2021 занимает на диске на пару гигабайт меньше.


Но нельзя не отметить рост объема, занимаемого ОС, с увеличением версии Windows 10. Windows 10 LTSC версии 1809 занимала на диске всего 11.4 ГБ.


Для точного сравнения разных версий Windows 10 я использовал две идентичные виртуальные машины с объемом ОЗУ 8 ГБ и четырехпоточными процессорами, с накопителями по 70 ГБ, расположенные на SSD диске. Никаких настроек и твиков ОС не применялось. Подобными характеристиками обладает множество старых ПК, на которые пользователи предпочитают ставить более легкие версии Windows, и весомая часть недорогих ноутбуков, покупаемых для работы. Например, HP 255 G7 (255W6ES) из Регарда.



Для подобных машин важен каждый гигабайт свободной оперативной памяти и Windows 10 LTSC здесь оказывается в выигрыше, требуя около 1.1 ГБ после загрузки.


Windows 10 Pro 21H2 требует уже 1.7 ГБ ОЗУ сразу после загрузки.


Сильнее обычная Windows 10 грузит и процессор. Запущены 124 процесса, загрузка процессора высокая и долго не может прийти в норму. Видно и более высокую загрузку накопителя сразу после загрузки ПК. В ноутбуке с жестким диском это приводит к таким тормозам, что пользоваться им сразу после загрузки крайне некомфортно.


У Windows 10 LTSC 2021 запущены 92 процесса, загрузка процессора и накопителя заметно ниже.


Противники версий Windows 10 LTSC часто аргументируют их бесполезность на игровых ПК тем, что достаточный объем памяти и мощность процессора позволяют не замечать такие всплески нагрузки при "самодеятельности" Windows 10. Но часто это даже на мощных машинах выливается во "фризы" и "лаги" во время игры. И даже во время пустого Рабочего стола мы часто видим кружочек ожидания и чувствуем замедление работы ПК, когда, казалось, бы система ничем не занята.


Более стабильный отклик системы можно увидеть, если запустить утилиту LatencyMon, используемую для проверки способности Windows выполнять обработку потокового аудио, когда важна каждая ничтожная доля секунды задержки системы. Windows 10 Pro 21H2 показывает вот такую картину:


У Windows 10 LTSC 2021 показатели ожидаемо лучше, ведь систему не "дергают" множество фоновых процессов и служб.


Итоги


Windows 10 LTSC 2021 выглядит быстрой и легкой ОС, при этом обладающей современной сборкой ядра, позволяющей запускать современные игры. При этом она будет получать только обновления безопасности, что дает гарантию более стабильной работы системы, учитывая качество обновлений Windows в последнее время.
Но есть несколько ложек дегтя и в этой бочке меда. Если Windows 10 LTSB версии 1607 воспринималась цельной системой, то из Windows 10 LTSC 2021 "лезут" не до конца вырезанные компоненты обычной Windows 10, что производит впечатление сырого продукта.

Например, в параметрах не только есть Xbox Game Bar, но он при этом даже якобы включен.


Но нажатие клавиш Win+G показывает вот такое окно, ведь компонент Xbox Game Bar вырезан из системы. Логично было бы вообще заблокировать вкладку "Игры" в параметрах Windows 10 LTSC, но этого не сделано. И такие "хвосты" иногда очень режут глаз во время работы на этой ОС.


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

Что касается безопасности, то Microsoft заметно подтянула уровень Windows 10 LTSC 2021 и в ней присутствуют такие новые инструменты, как , например, песочница Windows Sandbox. Улучшены многие функции защиты: WDAC, защита от программ-вымогателей, режим системного управления (System Management Mode, SMM). Расширены возможности брандмауэра Защитника Windows и Application Guard Microsoft Defender.

От нового магазина приложений до платформы для разработки игр.

5 октября Microsoft выпустила Windows 11. Система сильно изменилась внешне, но её значительно переработали и внутри: Microsoft сделала ставку на открытость системы для разработчиков всех платформ. Разбираемся, чем Windows 11 будет полезна разработчикам.

Вместе с новой версией системы Microsoft обновила собственный магазин приложений. Компания переработала дизайн: на главную страницу вынесли коллекции, появились кураторские подборки приложений и виджет магазина в Windows 11. Сам магазин стал открываться и работать на 35% быстрее, чем раньше.

Разработчики могут использовать и новые возможности магазина — например, всплывающие окна с предложением установить приложение напрямую из браузера. В Microsoft Store впервые можно размещать другие браузеры, например Yandex и Opera, а также витрины других магазинов приложений — к примеру, Epic Games и Amazon Appstore.

Теперь разработчики могут не платить отчисления Microsoft, а использовать свой платёжный движок: не придётся платить компании 15% с заработка (12% для игр). При этом компания не требует специальным образом адаптировать приложения под магазин. Скоро там появится поддержка Android-игр и приложений в партнёрстве с Amazon. Для этого Microsoft разработала подсистему Windows для Android, которая поддерживает все совместимые с Windows процессоры — AMD, Intel и Qualcomm. Компания работала в сотрудничестве с Intel, чтобы запускать на процессорах приложения под ARM.

Приложения Windows работают на компьютерах с ARM64-процессорами. Архитектура таких чипов заточена под низкое энергопотребление и обеспечивает высокую совместимость приложений — 32-разрядные приложения запускаются без изменений.

Теперь разработчики могут создавать приложения под Windows 11 с полной поддержкой ARM-архитектуры на аппаратном уровне. Для этого в систему добавили новый двоичный интерфейс ARM64EC. С его помощью можно совмещать естественный для ARM код с эмулированным 64-битным кодом в одном процессе или модуле. Разработчики смогут оптимизировать приложение для Windows под ARM, даже если оно полагается на стороннюю 64-битную архитектуру или использует 64-битные плагины.

С ARM64EC разработчики могут начинать с малого и постепенно внедрять поддержку ARM. Они могут определить для себя только ту часть кода, которая сильнее всего выиграет от нативной производительности на ARM, а затем перестроить этот отрезок под ARM64EC. Остальное приложение продолжит работать в режиме 64-битной эмуляции.

Приложения с ARM64EC не получают никаких особых преимуществ — они работают с папкой Program Files и регистром, как другие программы. Код для ARM64EC работает на полной скорости, поэтому разработчики не теряют преимуществ портирования на ARM, но получают возможность писать код одновременно с x86- и x64-битностью.

Возможность использовать 32-битный и 64-битный код для ARM позволяет создавать приложения для Windows 11 без оглядки на 64-битный код вне контроля разработчика. Проекты со сторонними решениями без поддержки ARM могут продолжить работать в 64 битах, а собственный код разработчика — в нативной производительности через ARM64EC. Microsoft сама уже использовала новый интерфейс и выпустит Office для ARM с 64-битным исполнением через ARM64EC и поддержкой сторонних плагинов в режиме эмуляции.

Одно из главных обновлений с выходом Windows 11 — это Windows App SDK. Набор самых последних компонентов и инструментов для разработчиков Windows-приложений — API и средства, позволяющие создавать классические приложения для Windows 10 и более поздних версий и публиковать их в Microsoft Store.

Windows App SDK — новое название для Project Reunion. Пакет инструментов работает с существующим кодом и упрощает основные операции, в то же время добавляя новые возможности системы для десктопных приложений. Например, режим «картинка в картинке».

Для использования пакета SDK в уже существующем проекте достаточно установить последнюю версию NuGet и с его помощью добавить пакет SDK для приложений Windows. При создании нового приложения нужно выбрать его тип, но вне зависимости от него у разработчиков будет доступ к большей части возможностей платформы Windows.

Windows App SDK повлияет на будущие разработки под Windows. Microsoft официально переходит на новое поколение инструментов, окончательно отказываясь от Win32 и WinRT. Windows 11 станет отправной точкой для нового набора SDK и API будущих Windows-разработчиков.

При этом Windows App SDK предназначен не только для Windows 11: десятую версию продолжат поддерживать ещё как минимум несколько лет. Поэтому пакет инструментов будет обратно совместим с Windows 10, чтобы облегчить переход с устаревших Win32 и WinRT.

Библиотека готового дизайна для приложений WinUI 3

Создатели также анонсировали WinUI 3 — это готовая библиотека пользовательского интерфейса для Windows-приложений. Достаточно добавить её поддержку в приложение, чтобы оно получило все обновления дизайна Windows 11, включая скруглённую геометрию, новую иконографию и типографию и цветовую палитру. В WinUI 3 поддерживаются новые «материалы» Acrylic и Mica, макеты окон Snap Layouts, появилось API нового контекстного меню — всё это работает только на Windows 11.

В WinUI 2.7 также появился InfoBadge — элемент, который можно поместить в любую часть пользовательского интерфейса. Он встроен в NavigationView и позволяет ненавязчиво привлечь внимание пользователя к конкретной области на экране.

Обе версии библиотек позволят обновить существующие приложения под визуальные требования Windows 11. WinUI 3 входит в состав пакета Windows App SDK.

Обновление PWA Builder 3 и поддержка WebView2 на уровне системы для веб-приложений

В Windows 11 усовершенствовали поддержку веб-приложений. По задумке Microsoft, все приложения должны ощущаться максимально естественно, как будто их создали специально под систему. Для этого компания развивает PWA (прогрессивные веб-приложения) — технологию, которая совмещает лучшее от нативных и веб-приложений в одном решении.

Благодаря PWA уже на старте в Microsoft Store доступны приложения популярных сайтов — Pinterest, Facebook, Instagram и Twitter. Технология позволяет привнести опыт нативных приложений за счёт глубокой интеграции с экосистемой Windows с минимальной стоимостью разработки. Например, PWA могут появляться в настройках, меню «Пуск», «Панели задач» и запускаться в своём отдельном окне или играть музыку в фоновом режиме, а также использовать пуш-уведомления.

Ещё одно преимущество PWA — высокая производительность. У прогрессивных веб-приложений есть автономные возможности вроде кеширования, но они работают на той же кодовой базе, что и сайт, — это позволяет обслуживать, обновлять и исправлять ошибки и в веб-приложениях, и в PWA одновременно.

В PWA можно превратить веб-приложения на основе React Native или Electron (например, Slack), а затем разместить в Microsoft Store, которому доверяют миллиард ежемесячно активных пользователей ОС. Microsoft предлагает доступ к бесплатному продвижению, включению в подборки и не только.

Компания обновила инструмент PWABuilder до третьей версии — он позволяет создавать приложения на основе существующего и нового HTML- и JavaScript-контента. Превратить сайт в PWA можно будет за считаные минуты (веб-разработчики могут успеть сделать это за обед), хотя реализация отдельных преимуществ может занять больше времени.

В новом интерфейсе WinUI 3 также предустановили evergreen-версию компонента WebView2. Нововведение упрощает создание эффективных и безопасных гибридных веб-приложений через Microsoft Edge: раньше WebView не был настолько интегрирован в систему.

Теперь разработчики приложений на базе HTML получат все преимущества Chromium — open-source-основы для самых популярных браузеров в мире. Microsoft и сама воспользуется обновлением: следующее крупное обновление Teams выпустят в виде WebView2-приложения вместо версии на Electron, которая потребляет куда больше ресурсов системы.

Обновление Windows Subsystem for Linux 2 и появление в Store

Windows Subsystem for Linux — это подсистема, которая позволяет разработчикам запускать среду GNU/Linux без традиционной виртуальной машины или «двойной загрузки». WSL поддерживает большинство программ командной строки, служебных программ или приложений без дополнительных изменений.

Во второй версии подсистемы Windows для Linux обновили архитектуру. Теперь подсистема может запускать исполняемые файлы Linux ELF64 — это меняет способ их взаимодействия с Windows и с оборудованием компьютера, но не отражается на пользователях.

Главное отличие WSL 2 от первой версии — полнофункциональное ядро Linux с открытым исходным кодом, которое Microsoft собрала и настроила для использования в подсистеме. Компания будет обновлять ядро вместе с Windows, так что разработчикам не придётся заниматься этим самим.

WSL 2 также использует технологию виртуализации, но она работает в фоновом режиме и остаётся управляемой. В отличие обычной виртуальной машины, подсистема Windows для Linux не замедляется при загрузке, не изолируется, не потребляет много ресурсов и не требует времени для настройки.

Команды для работы с большими объёмами файлов вроде git clone, npm instal, apt update и не только выполняются быстрее, чем раньше. Фактический прирост будет зависеть от конкретного приложения и взаимодействия с файловой системой — первые версии WSL 2 работают в 20 раз быстрее WSL 1 при распаковке архива tarball и в 2–5 раз быстрее при команде git clone и npm install.

WSL 2 совместим с системными вызовами — это позволяет исполняемым файлам Linux обращаться к файловой системе, памяти, создавать процессы и не только. Прошлая версия подсистемы использовала команды совместимости, поэтому это было невозможно. За счёт этого стал возможен запуск новых приложений, например одного из самых популярных инструментов для разработчиков Docker.

Платформа для игровой разработки под Windows, которую опубликовали на GitHub

Вместе с Windows 11 выпустили Game Development Kit — набор инструментов для разработчиков, который позволяет создавать игры для ПК. Он состоит из основных инструментов, библиотек и документации для игровой разработки, которые уже используют тысячи инженеров по всему миру.

Раньше GDK были доступны только крупным студиям по разработке. Теперь платформу опубликовали бесплатно на GitHub — любой желающий может использовать те же инструменты, которые применяют команды разработки Xbox Game Studios.

Одна из ключевых доступных в GDK технологий — AMD Fidelity FX Super Resolution. Она использует передовые технологии по увеличению разрешения, чтобы повысить фреймрейт в избранных играх.

Microsoft называет Windows 11 лучшей Windows для игр. Новая версия системы поддерживает технологии, которые раньше были доступны только на консолях, — DirectStorage и AutoHDR. DirectStorage до сих пор была только в Xbox Series X/S: технология позволяет значительно ускорить загрузки и работать с более детализированным окружением в играх. Для этого пользователям понадобится диск NVMe SSD с интерфейсом PCIe 3.0, а также видеокарта с поддержкой DirectX 12 и Shader Model 6.0.

AutoHDR автоматически усовершенствует картинку в играх с поддержкой Direct X 11. Технология добавляет динамический диапазон света и цвета даже в играх без HDR, делая картинку более контрастной и натуральной.

Пользователи также могут играть с поддержкой пространственного аудио, а разработчики — использовать технологии для более погружающего опыта. Microsoft добавила поддержку Dolby Atmos, DTSX и Windows Sonic — разных стандартов объёмного звука — ещё в Windows 10, но технология работает и в новой ОС.

Читайте также: