Patent
1994-05-11
1997-11-11
Meky, Moustafa M.
G06F 1502
Patent
active
056873921
ABSTRACT:
The present invention is a method and apparatus for efficiently transferring data between an input/output device and a main memory area of a computer system. More specifically, the invention transfers a requested amount of data using direct memory access and either a single transfer buffer or a dynamically allocated transfer buffer. The invention receives input/output requests that specify an amount of data to be transferred between the input/output device and a logical user buffer contained within the main memory area. By evaluating physical memory locations that correspond to the logical user buffer, the invention determines whether the physical memory locations conform to addressing limitations of a direct memory access transfer buffer. When the physical memory locations conform to the addressing limitations of a direct memory transfer buffer, the invention transfers the requested data directly between the input/output device and the physical memory locations of the logical user buffer. On the other hand, when the evaluated physical memory locations do not conform to the physical requirements of a direct memory access transfer buffer, the invention dynamically allocates a conforming direct memory access transfer buffer. Subsequently, the invention transfers the requested data between the input/output device and the conforming buffer. After transferring the data between the conforming buffer and the input/output device, the invention releases the allocated buffer to reduce the amount of memory overhead in the computer system.
REFERENCES:
patent: 4722051 (1988-01-01), Chattopadhya
patent: 5146580 (1992-09-01), Naidu et al.
patent: 5161215 (1992-11-01), Kouda et al.
patent: 5404511 (1995-04-01), Notarianni
patent: 5497476 (1996-03-01), Oldfield et al.
IBM Technical Reference, Personal Computer AT System BIOS 5, ROM BIOS Code Listing for Floppy Controller, IBM, 1985, pp. 97-115.
"DMA revealed", by Hazzah, Karen, Apr., 1992, Windows-DOS Developer's Journal, v3, n4, p5(14).
"DMA Controller programming in C", by Watson, Robert, Nov., 1993 C users Journal, v11, n11, p35(15).
"implementing direct memory access (DMA) in C", by Bradley, Don, May, 1992, C Users Journal, v10, n5, p53 (18).
Meky Moustafa M.
Microsoft Corporation
LandOfFree
System for allocating buffer to transfer data when user buffer i does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with System for allocating buffer to transfer data when user buffer i, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and System for allocating buffer to transfer data when user buffer i will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-1237370