×

Method, apparatus, and computer program product for establishing communications between an adapter card and a host processor running in a bios supported environment

  • US 6,760,785 B1
  • Filed: 03/29/2000
  • Issued: 07/06/2004
  • Est. Priority Date: 03/29/2000
  • Status: Expired due to Term
First Claim
Patent Images

1. An adapter card for use in a host computer system having a processor and a memory, the host computer system having a binary input/output system (BIOS) that supports the loading of BIOS extensions into the host memory for execution by the host processor, the adapter card comprising:

  • a processor, and at least one computer-readable medium having stored therein;

    (a) a client program that is executed by the processor of the adapter card; and

    (b) a BIOS extension comprising first program code and second program cod embedded within the computer readable medium, said second program code defining a separate server program, the BIOS extension being loaded into the host memory during execution of the host computer system BIOS, the first program code of the BIOS extension, when executed by the host processor, and prior to an operating system exercising control over the host processor'"'"'s system, performing the following steps;

    (i) copying the second program code defining the server program to a new location outside a BIOS expansion memory area in the host memory; and

    (ii) hooking the new location of the server program to an interrupt of the host computer system to cause the host processor to initiate execution of the server program on the host computer system upon a subsequent occurrence of that interrupt the server program when executed on the host processor, establishing communications with the client program on the adapter card wherein the copying step performed by the first program code of the BIOS extension comprises;

    (i) determining the size of the second program code by obtaining a constant, K, said K having been embedded at a predetermined location within the first program code at compile time;

    (ii) decrementing, by an amount greater than or equal to K, a value stored in host memory at address word location 40;

    13h, said location having a value that provides an indicator of the top of available host memory, thereby allocating that portion of host memory from top of host memory to an address equal to said amount greater than or equal to K below top of host memory; and

    (iii) copying the second program code to the allocated portion of host memory.

View all claims
  • 12 Assignments
Timeline View
Assignment View
    ×
    ×