Patent US5790895A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5790895A Expired / Lapsed US ⏱️ 0.0 years remaining

Modem sharing

Assignee: Hewlett Packard Enterprise Development LP
•
Filing: 1996-10-18
•
Granted: 1998-08-04
•
Expires: 2016-10-18
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An apparatus supports the sharing of a resource among computer applications. The computer system has a processor which adapted for executing a first application in a first mode of operation and a second application in a second mode of operation. The computer system also has a communication port adapted to receive the resource. The communication port is normally allocated to receive accesses from the second application. The computer system also has a virtual port for emulating the communication port. The virtual port diverts accesses from the first application directed at the communication port and buffers the accesses in the virtual port. An arbitrator is connected to the processor, the communication port, and the virtual port. The arbitrator claims the communication port from the second application and forwards accesses received by the virtual port to the communication port if the first application is accessing the resource and if the communication port is idle. Further, the arbitrator reallocates the communication port back to the second application upon the termination of accesses to the resource by the first application.

Inventors

  • 👤 Jeoff M. Krontz
  • 👤 Theodore F. Emerson

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-10 01:35
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/50; G06F9/5005; G06F9/5011

Claims Analysis

Total Claims: 59
Claim 1
Independent Claim 200 words
A computer system having a first mode of operation and a second mode of operation, said modes of operation sharing access to a resource, said computer system comprising: a processor adapted for executing a first application in the first mode of operation and a second application in the second mode of operation; a data storage device coupled to said processor, said data storage device adapted to buffer data associated with said first and second modes of operation; a communication port for communicating with the resource, said communication port normally allocated to receive accesses from the second application; a virtual port for emulating said communication port, said virtual port diverting accesses from the first application directed at said communication port and buffering the accesses in said virtual port; and an arbitrator coupled to said processor, said communication port, and said virtual port, said arbitrator claiming said communication port from the second application and forwarding accesses received by said virtual port to said communication port if the first application is accessing the resource and if said communication port is idle, said arbitrator reallocating said communication port to said second application upon the termination of accesses to the resource by the first application.
Claim 2
Dependent Claim 24 words
The computer system of claim 1, wherein said first mode is an operating system mode and said second mode is a remote console mode.
Claim 3
Dependent Claim 19 words
The computer system of claim 1, further comprising a first bus coupled to said processor and to said arbitrator.
Claim 4
Dependent Claim 17 words
The computer system of claim 3, wherein said first bus is a Peripheral Component Interconnect (PCI) bus.
Claim 5
Dependent Claim 38 words
The computer system of claim 4, wherein said PCI bus has cycles, said arbitrator positively decoding the PCI cycles to said communication port when said first application accesses said communication port while said second application owns said resource.
Claim 6
Dependent Claim 36 words
The computer system of claim 4, wherein said virtual port snoops accesses to the resource from the first application to allow said arbitrator to detect the termination of accesses to the resource from said first application.
Claim 7
Dependent Claim 18 words
The computer system of claim 4, wherein said virtual port emulates registers of a Universal Asynchronous Receiver/Transmitter (UART).
Claim 8
Dependent Claim 37 words
The computer system of claim 7, wherein said virtual port generates an interrupt to said processor, further comprising a Transmitter Data Buffer (TDB) register, said virtual port interrupting said processor when said TDB register is written to.
Claim 9
Dependent Claim 54 words
The computer system of claim 8, wherein said communication port has registers corresponding to said virtual port registers, further comprising an interrupt handler, said interrupt handler forwarding the contents of said registers in said virtual port to registers in said communication port if said arbitrator has claimed said communication port for the first application.
Claim 10
Dependent Claim 26 words
The computer system of claim 8, wherein said virtual port generates a System Management Interrupt (SMI) to the processor when said TDB register is written to.
Claim 11
Dependent Claim 25 words
The computer system of claim 3, further comprising a second bus coupled to said processor, wherein said communication port is coupled to said second bus.
Claim 12
Dependent Claim 31 words
The computer system of claim 11, wherein said second bus is selected from a group consisting of an Industry Standard Architecture (ISA) bus and an Extended Industry Standard Architecture (EISA) bus.
Claim 13
Dependent Claim 28 words
The computer system of claim 3, wherein said first bus is a Peripheral Component Interconnect (PCI) bus and wherein said communication port is coupled to said PCI bus.
Claim 14
Dependent Claim 31 words
The computer system of claim 1, wherein said communication port is located at a communication port address and wherein said first and second applications direct accesses to said communication port address.
Claim 15
Dependent Claim 28 words
The computer system of claim 1, further comprising an operating system for execution by said processor, said operating system identifying and initializing said virtual port upon booting up.
Claim 16
Dependent Claim 34 words
The computer system of claim 15, wherein said first application establishes a connection to a remote computer using a protocol, said arbitrator further comprising a protocol detector for detecting accesses to said first application.
Claim 17
Dependent Claim 27 words
The computer system of claim 16, wherein said protocol detector examines a predetermined number of characters transmitted from said remote computer to detect the first application protocol.
Claim 18
Dependent Claim 27 words
The computer system of claim 16, wherein said protocol detector gobbles said predetermined number of characters and wherein said remote computer retransmits said predetermined number of characters.
Claim 19
Dependent Claim 21 words
The computer system of claim 16, wherein said protocol detector forwards all data characters or predetermined signals to the first application.
Claim 20
Dependent Claim 14 words
The computer system of claim 1, wherein said resource is an industry standard modem.
Claim 21
Dependent Claim 41 words
The computer system of claim 1, wherein said communication port is located at a predetermined interrupt range and wherein said virtual port is located at a virtual interrupt range, said arbitrator translating said virtual interrupt range into said predetermined interrupt range.
Claim 22
Dependent Claim 20 words
The computer system of claim 1, wherein said accesses from first and second applications are accesses directed at a modem.
Claim 23
Independent Claim 180 words
An apparatus for sharing access to a resource in a computer system, said computer system having a first mode of operation and a second mode of operation, said computer system having a processor adapted for executing a first application in the first mode of operation and a second application in the second mode of operation, said apparatus comprising: a communication port for receiving the resource, said communication port normally allocated to receive accesses from the second application; a virtual port for emulating said communication port, said virtual port diverting accesses from the first application directed at said communication port and buffering the accesses in said virtual port; and an arbitrator coupled to said processor, said communication port, and said virtual port, said arbitrator claiming said communication port from the second application and forwarding accesses received by said virtual port to said communication port if the first application is accessing the resource and if said communication port is idle, said arbitrator reallocating said communication port to said second application upon the termination of accesses to the resource by the first application.
Claim 24
Dependent Claim 23 words
The apparatus of claim 23, wherein said first mode is an operating system mode and said second mode is a remote console mode.
Claim 25
Dependent Claim 18 words
The apparatus of claim 23, further comprising a first bus coupled to said processor and to said arbitrator.
Claim 26
Dependent Claim 16 words
The apparatus of claim 25, wherein said first bus is a Peripheral Component Interconnect (PCI) bus.
Claim 27
Dependent Claim 37 words
The apparatus of claim 26, wherein said PCI bus has cycles, said arbitrator positively decoding the PCI cycles to said communication port when said first application accesses said communication port while said second application owns said resource.
Claim 28
Dependent Claim 35 words
The apparatus of claim 26, wherein said virtual port snoops accesses to the resource from the first application to allow said arbitrator to detect the termination of accesses to the resource from said first application.
Claim 29
Dependent Claim 17 words
The apparatus of claim 26, wherein said virtual port emulates registers of a Universal Asynchronous Receiver/Transmitter (UART).
Claim 30
Dependent Claim 36 words
The apparatus of claim 29, wherein said virtual port generates an interrupt to said processor, further comprising a Transmitter Data Buffer (TDB) register, said virtual port interrupting said processor when said TDB register is written to.
Claim 31
Dependent Claim 25 words
The computer system of claim 30, further comprising a second bus coupled to said processor, wherein said communication port is coupled to said second bus.
Claim 32
Dependent Claim 18 words
The apparatus of claim 30, wherein said virtual port generates a System Management Interrupt (SMI) to the processor.
Claim 33
Dependent Claim 24 words
The apparatus of claim 25, further comprising a second bus coupled to said first bus, wherein said communication port resides on said second bus.
Claim 34
Dependent Claim 30 words
The apparatus of claim 33, wherein said second bus is selected from a group consisting of an Industry Standard Architecture (ISA) bus and an Extended Industry Standard Architecture (EISA) bus.
Claim 35
Dependent Claim 27 words
The apparatus of claim 25, wherein said first bus is a Peripheral Component Interconnect (PCI) bus and wherein said communication port is coupled to said PCI bus.
Claim 36
Dependent Claim 30 words
The apparatus of claim 23, wherein said communication port is located at a communication port address and wherein said first and second applications direct accesses to said communication port address.
Claim 37
Dependent Claim 27 words
The apparatus of claim 23, further comprising an operating system for execution by said processor, said operating system identifying and initializing said virtual port upon booting up.
Claim 38
Dependent Claim 33 words
The apparatus of claim 37, wherein said first application establishes a connection to a remote computer using a protocol, said arbitrator further comprising a protocol detector for detecting accesses to said first application.
Claim 39
Dependent Claim 26 words
The apparatus of claim 38, wherein said protocol detector examines a predetermined number of characters transmitted from said remote computer to detect the first application protocol.
Claim 40
Dependent Claim 26 words
The apparatus of claim 38, wherein said protocol detector gobbles said predetermined number of characters and wherein said remote computer retransmits said predetermined number of characters.
Claim 41
Dependent Claim 17 words
The apparatus of claim 38, wherein said protocol detector forwards all data characters to the first application.
Claim 42
Dependent Claim 13 words
The apparatus of claim 23, wherein the resource is an industry standard modem.
Claim 43
Dependent Claim 40 words
The apparatus of claim 23, wherein said communication port is located at a predetermined interrupt range and wherein said virtual port is located at a virtual interrupt range, said arbitrator translating said virtual interrupt range into said predetermined interrupt range.
Claim 44
Dependent Claim 19 words
The apparatus of claim 23, wherein said accesses from first and second applications are accesses directed at a modem.
Claim 45
Independent Claim 142 words
A method for sharing a resource in a computer system between a first application executing in a first mode of operation and a second application executing in a second mode of operation, said computer system having a communication port which is adapted to receive the resource, the method comprising the steps of: initially allocating said communication port to the second application; emulating the communication port with a virtual port; buffering accesses to the communication port from the first application to said virtual port; detecting whether the communication port is being accessed by the first application; when the second application is not accessing the communication port, claiming the resource from the second application and forwarding accesses stored in said virtual port to said communication port; and upon the termination of accesses from the first application, reallocating said communication port to the second application.
Claim 46
Dependent Claim 23 words
The method of claim 45, wherein said executing step further comprises the step of running the first application in an operating system mode.
Claim 47
Dependent Claim 23 words
The method of claim 45, wherein said executing step further comprises the step of running the second application in a remote console mode.
Claim 48
Dependent Claim 42 words
The method of claim 45, wherein said computer system has PCI bus cycles, further comprising the step of positively decoding the PCI cycles to said communication port when said first application accesses said communication port while said second application owns said resource.
Claim 49
Dependent Claim 32 words
The method of claim 48, further comprising the step of snooping accesses to the resource from the first application to detect the termination of accesses to the resource from said first application.
Claim 50
Dependent Claim 18 words
The method of claim 45, further comprising the step of emulating registers of a Universal Asynchronous Receiver/Transmitter (UART).
Claim 51
Dependent Claim 32 words
The method of claim 50, wherein one of said registers is a Transmitter Data Buffer (TDB) register, further comprising the step of interrupting said processor when said TDB register is written to.
Claim 52
Dependent Claim 50 words
The method of claim 51, wherein said communication port has registers corresponding to said virtual port registers, further comprising the step of forwarding the contents of said registers in said virtual port to registers in said communication port if said arbitrator has claimed said communication port for the first application.
Claim 53
Dependent Claim 22 words
The method of claim 52, wherein said interrupting step comprises the step of generating a System Management Interrupt (SMI) to the processor.
Claim 54
Dependent Claim 31 words
The method of claim 45, wherein said first application establishes a connection to a remote computer using a protocol, further comprising the step of detecting said protocol from said remote computer.
Claim 55
Dependent Claim 25 words
The method of claim 54, further comprising the step of examining a predetermined number of characters transmitted from said remote computer to detect said protocol.
Claim 56
Dependent Claim 21 words
The method of claim 55, further comprising the step of causing said remote computer to retransmit said predetermined number of characters.
Claim 57
Dependent Claim 18 words
The method of claim 55, further comprising the step of forwarding said buffered characters to the first application.
Claim 58
Dependent Claim 43 words
The method of claim 46, wherein said communication port is located at a predetermined interrupt range and wherein said virtual port is located at a virtual interrupt range, further comprising the step of translating said virtual interrupt range into said predetermined interrupt range.
Claim 59
Dependent Claim 16 words
The method of claim 58, wherein virtual port is located at an ISA compatible interrupt range.

References Cited (Backward Citations)

US4667193A Cited
US4797878A Cited
US5678059A Cited
US5577105A Cited
US5628030A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-08-03 2002-02-02 2002-08-04 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-08-03 2006-02-02 2006-08-04 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-08-03 2010-02-02 2010-08-04 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag