- SoftICE
SoftICE is a
kernel mode debugger forMicrosoft Windows . Crucially, it is designed to run underneath Windows such that theoperating system is unaware of its presence. Unlike an application debugger, SoftICE is capable of suspending all operations in Windows when instructed. For driver debugging this is critical due to how hardware is accessed and the kernel of the operating system functions.Microsoft offers two kernel-mode debuggers,
WinDbg and KD, for no charge. However, the full capabilities of WinDbg and KD are available only when two interlinked computers are used. SoftICE therefore is an exceptionally useful tool for difficult driver related development and continues to function well even with Microsoft's latest operating system versions.Older versions exist for
DOS and compatible operating systems. SoftICE was originally produced by a company calledNuMega , and was subsequently acquired byCompuware .SoftICE is also popular as a
software cracking tool.The "ICE" part of the name is an
allusion toin-circuit emulator .History
The original SoftICE for DOS was written in
1987 by NuMega foundersFrank Grossman andJim Moskun . The program, written in80386 assembly language , played the role of an operating system and ran software invirtual 8086 mode . It sold for $386.SoftICE/W (for Windows) was developed in the 1990 time frame, and was instrumental in the Writing of "Undocumented Windows", by Andrew Schulman, David Maxey, and Matt Pietrek. SoftIce/W was derived from an earlier, lesser known product, SoftICE for Netware (32-bit protected mode). One of the key advantages it had over Microsoft's debuggers is that it enabled single machine debugging, rather than requiring a second machine to be connected over a serial port.
The principal developers of SoftICE were Dom Basile ('Mr. SoftICE'), Tom Guinther (Kitchen Sink, Symbol Engine), Gerald Ryckman (Video Drivers and Kitchen Sink), Ray Hsu (Video Drivers W95), and Dan Babcock (SoftICE/NT 3.1/3.5: Universal Video Driver, Symbol Engine), with contributions by a variety of NuMega developers including
Frank Grossman ,Jim Moskun , and Matt Pietrek.In 1995 the codebase for SoftICE/95 was ported to run on the Windows NT platform.
Newer versions of SoftICE patch deep into Microsoft Windows. As such, old versions of SoftICE are rarely compatible with new versions of Windows. Compuware therefore offers SoftICE as a subscription so that it can be kept up to date and in sync with the latest Microsoft Windows version.
It used to be offered as part of Compuware's
DriverStudio package but was discontinued in April2006 .[http://blogs.msdn.com/matt_pietrek/archive/2006/04/11/573621.aspx A eulogy for SoftIce can be found here]
Termination
As of
April 3rd , 2006 the DriverStudio product family has been discontinued because of "a variety of technical and business issues as well as general market conditions". Maintenance support was offered untilMarch 31 ,2007 .Commercial Replacements
Syser Debugger aims to be a comprehensive replacement for SoftICE, running on 32-bit versions of Windows Vista/XP/2003/2000, including SMP, HyperThreading and multi-core CPUs.Open Source Replacements
An open source kernel debugger similar to SoftICE named
Rasta Ring 0 Debugger is available on the [http://rr0d.droids-corp.org/ project page] . It provides low level debugging forMicrosoft Windows ,Linux ,OpenBSD ,NetBSD , andFreeBSD . As of the time of this writing aMac OS X version is in the works.
Wikimedia Foundation. 2010.