Partager via


Windows 7: Модернизация приложений. Часть 2

Продолжим обсуждение темы модернизации приложений при переходе на новое поколение операционных систем.

Стабильность

Группа «Стабильность» включает действия по обеспечению надежности, управляемость и безопасности приложений. Эти действия следует выполнять после того как приложение было успешно запущено под управлением Windows Vista или Windows 7. Перечислим лишь некторые возможности, предоставляемые новыми версиями операционной системы

Надежность

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

Помимо транзакционных операций, в Windows Vista и Windows 7 появились расширения для операций ввода/вывода с возможностью их принудительного завершения - CancelableI / O

Для тестирования приложения следует использовать возможности, предоставляемые бесплатным средством Application Verifier.

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

Restart Manager – механизм, который может использоваться как программами установки (инсталляторами) для снижения необходимости перезагрузок операционной системы за счет отслеживания занятых приложениями ресурсов и перезапуска приложений, так и непосредственно прикладными программами для обеспечения возможности восстановления после сбоев и восстановления данных.

Для сбора информации о сбоях и ошибках, происходящих в процессе выполнения приложений следует использовать механизм Windows Error Reporting. Базовая функциональность доступна для уже существующих приложений и не требует внесений изменений в код.

Управляемость

Управляемые приложения - это приложения, которые «видны» операционной системе, измеряемы, доступны средствам мониторинга и т.п.

Для создания управляемых приложений можно использовать:

А для получения данных, сохраняемых приложениями доступны следующие механизмы:

Отметим, что в новых версиях операционной системы PowerShell 2.0 – это единый механизм для управления ОС, серверами и приложениями

Производительность

Под производительностью понимается корректная работа как самих приложений, так и отдельных процессов и сервисов, поддержка энергосбережения, корректное взаимодействие с системой при ее переходе из одного состояния в другое – например, при переходе в спящий режим и выходе из него

Для измерения производительности как самой системы, так и процессов и приложений следует использовать утилиту XPerf - http://msdn.microsoft.com/en-us/library/cc305187.aspx

Для управления сервисами используется Service Control Manager, а входящая в состав операционной системы утилита Performance Monitor, с помощью которой можно выполнять как мониторинг системных ресурсов, так и мониторинг процессов.

Безопасность

Помимо поддержки работы с подсистемой LUA/UAC и технологиями Windows Resource Protection (WRP), Mandatory Integrity Control (MIC) и User Interface Privilege Isolation (UIPI), приложения должны корректно работать с такими технологиями, как

Продолжение следует...

АФ