Data buffer: Difference between revisions

Content deleted Content added
Changing short description from "Region of a physical memory storage used to temporarily store data while it is being moved from one place to another" to "Memory used temporarily in data transfers" (Shortdesc helper)
1e100 (talk | contribs)
every object is stored is the physical memory but do we really access them by their real address and not the one told by the kernel? No need to add physical as virtual memory is in fact an abstraction of the physcial memery by the kernel.
Line 1:
{{Short description|Memory used temporarily in data transfers}}
{{redirect distinguish|Memory buffer|memory buffer register}}
In [[computer science]], a '''data buffer''' (or just '''buffer''') is a region of a physical memory storage used to temporarily store [[data]] while it is being moved from one place to another. Typically, the data is stored in a buffer as it is retrieved from an [[input device]] (such as a microphone) or just before it is sent to an output device (such as speakers). However, a buffer may be used when moving data between [[Process (computing)|processes]] within a computer. This is comparable to buffers in telecommunication. Buffers can be implemented in a fixed memory ___location in hardware—or by using a virtual data buffer in software, pointing at a ___location in the physical memory. In all cases, the data stored in a data buffer are stored on a [[computer data storage|physical storage medium]]. A majority of buffers are implemented in [[software]], which typically use the faster [[Random-access memory|RAM]] to store temporary data, due to the much faster access time compared with [[hard disk drive]]s. Buffers are typically used when there is a difference between the rate at which data is received and the rate at which it can be processed, or in the case that these rates are variable, for example in a printer spooler or in [[Video hosting service|online video]] [[Streaming media|streaming]]. In the [[distributed computing]] environment, data buffer is often implemented in the form of [[burst buffer]] that provides distributed buffering service.
 
A buffer often adjusts timing by implementing a [[Queue (data structure)|queue]] (or [[FIFO (computing and electronics)|FIFO]]) algorithm in memory, simultaneously writing data into the queue at one rate and reading it at another rate.