SoftICE

Из Википедии, бесплатной энциклопедии

SoftICE
Скриншот программы SoftICE
Отладка драйвера
Тип отладчик уровня ядра
Разработчики NuMega, Compuware
Написана на язык ассемблера
Операционная система Windows
Последняя версия 4.2.7
Лицензия Собственническое ПО

SoftICE — отладчик режима ядра для Microsoft Windows[1]. Разработана для управления процессами на низком уровне Windows, причём таким образом, чтобы операционная система не распознавала работу отладчика. В отличие от прикладного отладчика, SoftICE способен приостановить все операции в Windows, что очень важно для отладки драйверов.

Изначально разработан компанией NuMega, которая включала его в пакет программ для быстрой разработки высокопроизводительных драйверов под названием Driver Studio, который впоследствии был приобретён Compuware. Последняя версия была выпущена для Windows XP, с 2007 года продукт снят с поддержки.

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

Оригинальный SoftICE for DOS был написан на ассемблере для процессора 80386 для операционной системы DOS в 1987 году основателями NuMega Фрэнком Гроссманом (Frank Grossman) и Джимом Москуном (Jim Moskun). Программа выполняла роль операционной системы, управляла программным обеспечением в режиме виртуального 8086-процессора и продавалась за $386. Часть выбрана «ICE» как отсылка на аббревиатуру от in-circuit emulation[англ.].

SoftICE/W для Windows был разработан в 1990-х годах и сыграл важную роль в написании книги «Undocumented Windows»[2] Эндрю Шульмана (Andrew Schulman),Дэвида Максли (David Maxey) и Мэтта Питрека (Matt Pietrek). SoftIce/W базировался на раннем малоизвестном продукте SoftICE for Netware, работающем в защищённом режиме на 32-битных процессорах. Одним из улучшений SoftIce/W была возможность работы на одной машине (в то время для отладки с помощью средств Microsoft — WinDbg и KD — требовалось соединить две машины с помощью последовательного порта).

Основными разработчиками SoftICE были Дом Бэзил (Dom Basile, Mr. SoftICE), Том Гьюнтер (Tom Guinther), Джеральд Рикман (Gerald Ryckman, видеодрайвер), Рэй Цзю (Ray Hsu, видеодрайвер для Windows 95) и Дэн Бебкок (Dan Babcock), а также несколько разработчиков NuMega, включая Гроссмана, Москана и Питрека.

В 1995 году код SoftICE/95 был портирован на платформу Windows NT.

В 1997 году компания Compuware[англ.] поглотила NuMega и переименовала пакет в Compuware DriverStudio.

SoftIce использовала недокументированные низкоуровневые возможности Microsoft Windows, поэтому редко работала на новых версиях Windows.

Последняя версия Compuware DriverStudio была выпущена для Windows XP. С 3 апреля 2006 года продажа продуктов семейства DriverStudio была прекращена из-за «множества технических и деловых проблем, а также общего состояния рынка», поддержка завершилась 11 июля 2007 года[3].

В 2009 году Compuware продала исходный код и патенты британской компании Micro Focus, которая не поддерживает продукт «по различным техническим и коммерческим причинам».

Примечания

[править | править код]
  1. Существуют также старые версии SoftICE для DOS-совместимых систем.
  2. «Undocumented Windows» на amazon.com: https://www.amazon.com/Undocumented-Windows-Programmers-Microsoft-Programming/dp/0201608340 Архивная копия от 4 января 2019 на Wayback Machine
  3. Announcement on Matt Pietrek’s blog: http://blogs.msdn.com/matt_pietrek/archive/2007/06/11/r-i-p-numega-lab.aspx Архивная копия от 28 февраля 2010 на Wayback Machine