- Home ›
- Technology and Research ›
- Intel Technology Journal ›
- Intel® vPro™ Technology
Intel® vPro™ Technology
Extreme Programming with Intel® vPro™ Technology: Pushing the Limits with Innovative Software
Extreme Use of IDE Redirection
Let us now shift our focus to the IDE Redirection (IDE-R) feature of Intel® Active Management Technology (Intel® AMT). Just as Serial-over-LAN transmits serial port data to and from the administrator, by using IDE-R an administrator can remotely mount a CD-ROM drive on a remote computer with Intel AMT and instruct the computer to boot on that drive. By doing this, an administrator can take over a computer and perform any operation, ranging from a basic boot sector repair to a complete reformatting of the computer with Intel AMT.
Figure 3: Remote virtual disks using IDE-R
(Source: Intel Corporation)
In Figure 3, IDE-R allows an administrator to mount a CD-ROM and floppy remotely, thereby making a set of tools available to the computer with Intel AMT that is having problems. This function works regardless of the state of the OS. IDE-R works by having Intel AMT present a virtual CD-ROM and floppy device to the BIOS and OS. Once this is done, any sector read/write on these devices is redirected over the network to the management console.
A management console enabled with Intel vPro technology can often start IDE-R and reboot a computer all in one step. The console uses IDE-R along with a reboot to boot a diagnostic OS remotely and to fix or reinstall the main OS. This is very useful when the main OS is not booting correctly or needs to be reinstalled. The IDE-R Intel AMT feature can also be used in a different way: when IDE-R is enabled, the local OS can be instructed to rescan installed hardware devices, and by doing this, the OS can find the two new devices, that is, the floppy and CD-ROM. The devices show up with two new drive letters: the CD-ROM device is read-only; the floppy device is read/write. Managers can then use the IDE-R drives that are visible within the OS to send the computer with Intel AMT a large set of patches or new tools within the OS, and the administrator will not have to use the operating system's network stack.
Let us examine one scenario. The administrator starts an IDE-R session and uses a serial agent such as Manageability Outpost to force a rescan of the devices of the computer running Intel vPro technology. The new floppy and CD-ROM devices show up, and the administrator then uses the files on the new devices to patch and fix the local system. This strategy can also be used along with the VNC-over-Serial-over-LAN feature described earlier in this article. The code shown in Figure 4 forces Windows to re-enumerate plug and play devices, thereby allowing the IDE-R devices to show up within Windows Explorer* and other applications:
Intel® HD Boost technology
Intel HD Boost, the combination of SSE4 instructions and the Penryn family of processors’ Super Shuffle Engine, can provide large speedups on a wide range of applications. The following instructions in particular can provide significant benefits to video, imaging, and audio applications.
The MPSADBW and PHMINPOSUW SSE4 instructions can be used to significantly improve motion vector search algorithms (also known as block matching) used in motion estimation for video applications. An Intel whitepaper[2] showcases how to use these two instructions for block matching. The whitepaper reports a 1.6× to 3.8× performance improvement (see (Figure 1)).
[DllImport("cfgmgr32.dll", ExactSpelling = false, SetLastError = true)]
static extern int CM_Locate_DevNode_Ex(ref IntPtr dH, string ID, uint ulFlg, IntPtr mH);
[DllImport("cfgmgr32.dll", ExactSpelling = false, SetLastError = true)]
static extern int CM_Reenumerate_DevNode_Ex(int dH, uint ulFlg, IntPtr mH);
private const int CM_LOCATE_DEVNODE_NORMAL = 0x00000000;
public static int cmdHWRescan()
{
int result = -1;
IntPtr mHandle = IntPtr.Zero;
IntPtr deviceRoot = IntPtr.Zero;
result = CM_Locate_DevNode_Ex(ref deviceRoot, null, CM_LOCATE_DEVNODE_NORMAL, mHandle);
if (result != CR_SUCCESS) return result;
result = CM_Reenumerate_DevNode_Ex(deviceRoot.ToInt32(), 0x00000000, mHandle);
return result;
}
Figure 4: Sample C# code to force hardware re-enumeration (Source: Intel Corporation)
One more creative use of the IDE-R feature is that the floppy device is not limited to the 1.44 megabytes of a normal floppy disk. In fact, a floppy image file of up to two gigabytes can be created, making the floppy device much larger than the CD-ROM, which is limited to 700 megabytes. Since the floppy device is both read and write, by using IDE-R and a large .IMG file, an administrator can copy large amounts of data from the Intel AMT system back to the management console at a relatively high speed.
Because Serial-over-LAN is limited to 115 Kb/sec versus the CD-ROM IDE-R speed of 1 times to 4 times greater, IDE-R is more than a powerful Intel AMT feature. When combined with Serial-over-LAN as a control channel, and by using an AMT OOB channel, IDE-R is also a very quick way to transfer data within the OS.
