← Back to Patent Explorer
US5909594A Expired / Lapsed US ⏱️ 0.0 years remaining

System for communications where first priority data transfer is not disturbed by second priority data transfer and where allocated bandwidth is removed when process terminates abnormally

Assignee: Morgan Stanley and Co LLC
•
Filing: 1997-02-24
•
Granted: 1999-06-01
•
Expires: 2017-02-24
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The present invention comprises a method and system for implementing prioritized communications in a computer system. The present invention is implemented on a computer system having a microprocessor and a plurality of peripheral devices coupled to the computer system. The system of the present invention determines a first priority level and determines a second priority level. The system of the present invention receives a bandwidth allocation request from a software process to transfer data at the first priority level between two or more peripheral devices. The system subsequently allocates a first priority data transfer bandwidth between the devices in response to the request and performs a first data transfer between the devices using the first priority data transfer bandwidth. In addition, the system of the present invention performs a second data transfer between other devices using a second priority data transfer bandwidth. The second data transfer occurs at a second priority level. Thus, the system of the present invention ensures the first data transfer at the first priority level is not disturbed by the second data transfer. In this manner, the system of the present invention guarantees the first priority data transfer bandwidth for the software process.

Inventors

  • 👤 Patrick Delaney Ross
  • 👤 Bradley David Strand
  • 👤 Dave Olson

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-05 22:43
CPC Classifications
H; H04; H04L; H04L47/00; H04L47/10; H04L47/24; H04L47/2416; G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/50; G06F9/5005; G06F9/5011; G06F9/5022; H04L47/245; H04L47/50; H04L47/52; H04L49/00; H04L49/20; H04L49/205; H04L49/10; H04L49/101; H04L49/25; H04L49/253; H04L49/254; H04L49/35; H04L49/351

Claims Analysis

Total Claims: 27
Claim 1
Independent Claim 187 words
In a computer system having a microprocessor and a plurality of peripheral devices, a computer implemented method for implementing prioritized peer to peer communications, the method comprising the computer implemented steps of: a) determining a first priority level; b) determining a second priority level; c) receiving a bandwidth allocation request from a software process to transfer data at said first priority level between a first plurality of devices coupled to a computer system; d) allocating a first priority data transfer bandwidth between said first plurality of devices responsive to said bandwidth allocation request; e) performing a first data transfer between said first plurality of devices using said first priority data transfer bandwidth; f) performing a second data transfer between a second plurality of devices using a second priority data transfer bandwidth such that said second data transfer occurs at said second priority level; g) ensuring said first data transfer is not disturbed by said second data transfer such that said first priority data transfer bandwidth for said software process is guaranteed; and h) removing said first priority data transfer bandwidth allocation when said software process terminates abnormally.
Claim 2
Dependent Claim 187 words
In a computer system having a microprocessor and a plurality of peripheral devices, a computer implemented method for implementing prioritized peer to peer communications, the method comprising the computer implemented steps of: a) determining a first priority level; b) determining a second priority level; c) receiving a bandwidth allocation request from a software process to transfer data at said first priority level between a first plurality of devices coupled to a computer system; d) allocating a first priority data transfer bandwidth between said first plurality of devices responsive to said bandwidth allocation request; e) performing a first data transfer between said first plurality of devices using said first priority data transfer bandwidth; f) performing a second data transfer between a second plurality of devices using a second priority data transfer bandwidth such that said second data transfer occurs at said second priority level; g) ensuring said first data transfer is not disturbed by said second data transfer such that said first priority data transfer bandwidth for said software process is guaranteed; and h) removing said first priority data transfer bandwidth allocation when said software process terminates abnormally.
Claim 3
Dependent Claim 55 words
The method of claim 1 further including the step of prioritizing a queue for a device driver in at least one of said first plurality of devices such that a first request for access at said first priority level in said queue is serviced before a second request for access at said second priority level.
Claim 4
Dependent Claim 24 words
The method of claim 1 further including the step of removing said first priority data transfer bandwidth allocation when said software process is complete.
Claim 5
Dependent Claim 33 words
The method of claim 1 wherein step d) further includes the steps of: locking said first priority data transfer bandwidth allocation; and rejecting a subsequent bandwidth allocation request from a subsequent software process.
Claim 6
Dependent Claim 42 words
The method of claim 4 further including the step of registering an exit call back function to remove said first priority data transfer bandwidth allocation lock when said software process terminates abnormally without removing said first priority data transfer bandwidth allocation lock.
Claim 7
Dependent Claim 23 words
The method of claim 1 further including the step of notifying said software process when said first priority bandwidth allocation cannot be completed.
Claim 8
Dependent Claim 34 words
The method of claim 1 wherein step c) further includes receiving an application programming interface call from said software process in a kernel bandwidth allocator to transfer said data at said first priority level.
Claim 9
Dependent Claim 27 words
The method of claim 7 further including the step of maintaining an internal table to track said first priority data transfer bandwidth in said kernel bandwidth allocator.
Claim 10
Dependent Claim 170 words
In a computer system having a microprocessor and a plurality of peripheral devices, a computer implemented method for implementing prioritized communications, the method comprising the computer implemented steps of: a) determining a first priority level; b) determining a second priority level; c) receiving a first request from a first software process for service from a peripheral device coupled to a computer system, said first request at said first priority level; d) receiving a second request from a second software process for service from said peripheral device, said second request at said second priority level; e) prioritizing a queue storing said first request and said second request in response to receiving said first request at said first priority level; f) satisfying said first request in said peripheral device before satisfying said second request in said peripheral device such that said first software process receives service from said peripheral device before said second software process; and g) removing said first priority data transfer bandwidth allocation when said first software process terminates abnormally.
Claim 11
Dependent Claim 170 words
In a computer system having a microprocessor and a plurality of peripheral devices, a computer implemented method for implementing prioritized communications, the method comprising the computer implemented steps of: a) determining a first priority level; b) determining a second priority level; c) receiving a first request from a first software process for service from a peripheral device coupled to a computer system, said first request at said first priority level; d) receiving a second request from a second software process for service from said peripheral device, said second request at said second priority level; e) prioritizing a queue storing said first request and said second request in response to receiving said first request at said first priority level; f) satisfying said first request in said peripheral device before satisfying said second request in said peripheral device such that said first software process receives service from said peripheral device before said second software process; and g) removing said first priority data transfer bandwidth allocation when said first software process terminates abnormally.
Claim 12
Dependent Claim 144 words
The method of claim 9 further including the steps of: g) receiving a bandwidth allocation request from said first software process to transfer data at said first priority level between a first plurality of peripheral devices coupled to said computer system; h) allocating a first priority data transfer bandwidth between said first plurality of peripheral devices responsive to said bandwidth allocation request; i) performing a first data transfer between said first plurality of peripheral devices using said first priority data transfer bandwidth; j) performing a second data transfer between a second plurality of peripheral devices using a second priority data transfer bandwidth such that said second data transfer occurs at said second priority level; and k) ensuring said first data transfer is not disturbed by said second data transfer such that said first priority data transfer bandwidth for said first software process is guaranteed.
Claim 13
Dependent Claim 25 words
The method of claim 10 further including the step of removing said first priority data transfer bandwidth allocation when said first software process is complete.
Claim 14
Dependent Claim 33 words
The method of claim 10 wherein step h) further includes the steps of: locking said first priority data transfer bandwidth allocation; and rejecting a subsequent bandwidth allocation request from a subsequent software process.
Claim 15
Dependent Claim 43 words
The method of claim 12 further including the step of registering an exit call back function to remove said first priority data transfer bandwidth allocation lock when said first software process terminates abnormally without removing said first priority data transfer bandwidth allocation lock.
Claim 16
Dependent Claim 24 words
The method of claim 10 further including the step of notifying said first software process when said first priority bandwidth allocation cannot be completed.
Claim 17
Dependent Claim 35 words
The method of claim 10 wherein step c) further includes receiving an application programming interface call from said first software process in a kernel bandwidth allocator to transfer said data at said first priority level.
Claim 18
Dependent Claim 27 words
The method of claim 15 further including the step of maintaining an internal table to track said first priority data transfer bandwidth in said kernel bandwidth allocator.
Claim 19
Dependent Claim 190 words
In a computer system having a microprocessor and a memory coupled to a packet switched router, a computer implemented method for implementing a priority data transfer, the method comprising the computer implemented steps of: a) determining a first priority level; b) determining a second priority level; c) receiving a bandwidth allocation request from a software process to transfer data at said first priority level between a first plurality of devices coupled to a computer system; d) allocating a first priority data transfer bandwidth between said first plurality of devices responsive to said bandwidth allocation request; e) performing a first data transfer between said first plurality of devices using said first priority data transfer bandwidth; f) performing a second data transfer between a second plurality of devices using a second priority data transfer bandwidth such that said second data transfer occurs at said second priority level; g) ensuring said first data transfer is not disturbed by said second data transfer such that said first priority data transfer bandwidth for said software process is guaranteed; and h) removing said first priority data transfer bandwidth allocation when said first software process terminates abnormally.
Claim 20
Dependent Claim 190 words
In a computer system having a microprocessor and a memory coupled to a packet switched router, a computer implemented method for implementing a priority data transfer, the method comprising the computer implemented steps of: a) determining a first priority level; b) determining a second priority level; c) receiving a bandwidth allocation request from a software process to transfer data at said first priority level between a first plurality of devices coupled to a computer system; d) allocating a first priority data transfer bandwidth between said first plurality of devices responsive to said bandwidth allocation request; e) performing a first data transfer between said first plurality of devices using said first priority data transfer bandwidth; f) performing a second data transfer between a second plurality of devices using a second priority data transfer bandwidth such that said second data transfer occurs at said second priority level; g) ensuring said first data transfer is not disturbed by said second data transfer such that said first priority data transfer bandwidth for said software process is guaranteed; and h) removing said first priority data transfer bandwidth allocation when said first software process terminates abnormally.
Claim 21
Dependent Claim 109 words
The computer implemented method of claim 17 further including the steps of: receiving a first request from said software process for service from one of said plurality of devices coupled to said computer system, said first request at said first priority level; receiving a second request for service from said one of said plurality of devices, said second request at said second priority level; prioritizing a queue storing said first request and said second request in response to receiving said first request at said first priority level; and satisfying said first request in said one of said plurality of devices before satisfying said second request in said peripheral device.
Claim 22
Dependent Claim 26 words
The computer implemented method of claim 17 further including the step of removing said first priority data transfer bandwidth allocation when said software process is complete.
Claim 23
Dependent Claim 35 words
The computer implemented method of claim 17 wherein step d) further includes the steps of: locking said first priority data transfer bandwidth allocation; and rejecting a subsequent bandwidth allocation request from a subsequent software process.
Claim 24
Dependent Claim 44 words
The computer implemented method of claim 20 further including the step of registering an exit call back function to remove said first priority data transfer bandwidth allocation lock when said software process terminates abnormally without removing said first priority data transfer bandwidth allocation lock.
Claim 25
Dependent Claim 25 words
The computer implemented method of claim 17 further including the step of notifying said software process when said first priority bandwidth allocation cannot be completed.
Claim 26
Dependent Claim 36 words
The computer implemented method of claim 17 wherein step c) further includes receiving an application programming interface call from said software process in a kernel bandwidth allocator to transfer said data at said first priority level.
Claim 27
Dependent Claim 29 words
The computer implemented method of claim 23 further including the step of maintaining an internal table to track said first priority data transfer bandwidth in said kernel bandwidth allocator.

References Cited (Backward Citations)

US5241632A Cited
US5699345A Cited
US5761445A Cited
US5784569A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-05-31 2002-11-30 2003-06-01 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-05-31 2006-11-30 2007-06-01 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-05-31 2010-11-30 2011-06-01 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag