US 7,509,449 B2
Internet SCSI communication via UNDI services
Scott Neil Dunham, Raleigh, N.C. (US); Eric Richard Kern, Chapel Hill, N.C. (US); Sumeet Kochar, Apex, N.C. (US); John Matthew Landry, Lexington, Ky. (US); and Theodore Brian Vojnovich, Cary, N.C. (US)
Assigned to International Business Machines Corporation, Armonk, N.Y. (US)
Filed on Dec. 07, 2007, as Appl. No. 11/952,810.
Application 11/952810 is a continuation of application No. 11/127397, filed on May 12, 2005, granted, now 7,430,629.
Prior Publication US 2008/0082313 A1, Apr. 03, 2008
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 13/14 (2006.01)
U.S. Cl. 710—305 7 Claims
OG exemplary drawing
 
1. A computer program product, comprising:
a computer storage medium; and
computer program code stored on the computer storage medium and which executes on a processing unit to complete a series of functions, said computer program code comprising:
computer program code for emulating a Host Bus Adapter (HBA) in software to enable a communication of data packets, between a computer and a secondary memory via a Network Interface Card (NIC) driver;
computer program code for disabling the NIC driver in response to an anomaly in an Operating System (OS) in the computer, wherein the anomaly in the OS causes a first portion of the OS to be disabled and a second portion of the OS to remain operational;
computer program code for, in response to the NIC driver being disabled due to the anomaly in the OS in the computer, transmitting a System Management Interrupt (SMI) signal from the software emulated HBA to a Basic Input/Output System (BIOS) boot loader in a System Management Mode (SMM) BIOS, wherein the BIOS boot loader contains resident code for booting a target that provides access to the secondary memory; and
computer program code for, in response to the BIOS boot loader receiving the SMI signal from the software emulated HBA, activating a Universal Network Device Interface (UNDI) driver to re-enable the NIC driver for communication via a network between the computer and the secondary memory, wherein the second portion of the OS is an OS driver that is able to communicate with the secondary memory through use of the UNDI driver.