or
Bookmark and Share
Method and apparatus for the flow control of devices
   
Document Number
US Patent 5016161
Issued Date
May 14, 1991
Link
Inventors
Carrie; Susan (Mountain View, CA)
Evans; Jerald (Mountain View, CA)
Map
Abstract
The system of the present invention provides for the flow control of commands to devices connected through the system's memory management unit and is particularly useful in a multi-tasking computer system in which multiple processes access the same device. In the method and apparatus of the present invention, devices that are connected to the system through the MMU are controlled using the page fault mechanism of the MMU and the page fault handler in each segment. Addresses are allocated in the process address space for each process to provide for the addressing of the devices and device queues connected through the MMU, such that one device or one device queue is mapped into one segment of each process address space that will access the device. The "valid bits" associated with each page in a segment are turned on/off by the process or operating system in order to control the device. If the valid bits are off or reset and an attempt is made to access at the address, a page fault occurs and the page fault mechanism invokes the page fault handler of the corresponding segment. The page fault mechanism of the MMU and the page fault handler of each segment are then utilized to determine the reason the page fault occurred with respect to a particular process and perform predetermining steps to control the flow of commands to the device.
Drawing
Method and apparatus for the flow control of devices - US Patent 5016161 Drawing
Drawing from US Patent 5016161
Tags:
Description:
Amusing 0%
Clever 0%
Complex 0%
Efficient 0%
Historic 0%
Important 0%
Innovative 0%
Interesting 0%
Practical 0%
Simple 0%
Number of Claims:
6
Comments:
no comments yet
Owner
Sun Microsystems, Inc. (Mountain View, CA)
Published
May 14, 1991
Application Number
07/413,834
Filed
September 28, 1989
US Classification
718/108   719/321
Int'l Classification
G06F   9/46   (20060101)   G06F   9/50   (20060101)  
Parent Case
RELATED APPLICATIONS This application is a divisional application of U.S. patent application Ser. No. 336,717 filed Apr. 12, 1989, entitled Method and Apparatus for Controlling User Definable Devices.
USPTO Field of Search
364/2MSFile  
Related Patents
5283881 - Microcoprocessor, memory management unit interface to support one or more coprocessors - Owned by Westinghouse Electric Corp. (Pittsburgh, PA)

The invention comprises an interface for switching control of a memory management unit (MMU) between a central processing unit (CPU) having a register stack for storing data, and one or more coprocessors (COP) each having register stacks for storing data. The COP is operative when actuated to perform selected functions, not normally performed by the CPU, utilizing information in memory.

5361345 - Critical line first paging system - Owned by Hewlett-Packard Company (Palo Alto, CA)

A memory management system for minimizing I/O data transfer latency during the resolution of page faults. A page protection register having a mask with validity bits corresponding to each data line of the page in local memory is implemented in the memory controller. The mask bits are set when the corresponding data line has been input via the memory controller and is ready for access. When a page fault is received by the microprocessor, the desired page is read into the microprocessor's local memory, and the mask bit corresponding to the critical line which caused the page fault is checked. Processing of the process which requested the critical data line proceeds as soon as the mask bit for the critical data line is set, thereby preventing the microprocessor from having to wait for the entire page to be transferred into local memory before processing continues. In addition, the invention provides a mechanism whereby the address of the critical data line is identified and provided to the external memory so that the data lines in the page may be sent out of order. In particular, the critical data line may be sent first so that it is the first data line stored in the local memory during memory I/O. The mask bits corresponding to the critical line are thus set first, thereby allowing the microprocessor to be quickly reactivated so that processing may proceed in parallel with I/O to the microprocessor's local memory. When the present invention is implemented for a page having N data lines, the data transfer latency time may be reduced by as much as a factor of N.

5715474 - Simultaneous control of radio frequency modem in a multi-tasking system using a single session manager program with separate command queue for each application program - Owned by Motorola, Inc. (Schaumburg, IL)

A data communication method provides management and control functions to allow access to a shared radio frequency communication device by multiple concurrently executing software applications. A predetermined set of commands common to all of the software applications enable a consistent, high-level software interface to the communication device. A single computer program controls the communication device and permits simultaneous independent interface to each of the software applications.

5768618 - Method for performing sequence of actions in device connected to computer in response to specified values being written into snooped sub portions of address space - Owned by NCR Corporation (Dayton, OH)

A method of controlling an input/output (I/O) device connected to a computer to facilitate fast I/O data transfers. An address space for the I/O device is created in the virtual memory of the computer, wherein the address space comprises virtual registers that are used to directly control the I/O device. In essence, control registers and/or memory of the I/O device are mapped into the virtual address space, and the virtual address space is backed by control registers and/or memory on the I/O device. Thereafter, the I/O device detects writes to the address space. As a result, a pre-defined sequence of actions can be triggered in the I/O device by programming specified values into the data written into the mapped virtual address space.

7295565 - System and method for sharing a resource among multiple queues - Owned by Sun Microsystems, Inc. (Santa Clara, CA)

A system and method for sharing a resource (e.g., buffers) among multiple queues (e.g., InfiniBand send queues). Each queue has a local context indicating the Current amount of the resource allocated to the queue, the Minimum it is guaranteed, and a Maximum amount. A context may also include one or more pointers for managing the queue. Global Available and Reserve values indicate, respectively, the amount of the resource not currently allocated and the amount of the resource being reserved to guarantee each queue its Minimum. When an element is posted to a queue, a Full signal is raised for every queue to prevent further activity while the global values and the affected queue's context are updated. Then, if Available>0, the signal is de-asserted for any queue for which Current<Minimum or, if Available>Reserve, for any queue for which Current<Maximum.

Claims
Description
About| FAQs| Terms & Disclaimer| Link to Us| Contact Us