First in, first out, written FIFO, is a method for organizing the manipulation of a data structure, often a data buffer, so that the oldest entry, the head of the queue, is processed first. It is used in computing and in systems theory, and a FIFO can be built in hardware as an electronic logic circuit or in software. Applications are wide: disk controllers use FIFO as a disk scheduling algorithm to order input and output requests, network bridges, switches and routers hold data packets in FIFOs on their way to the next destination, operating system scheduling gives each process processor time in the order it is demanded, and digital video and audio streams are buffered in FIFOs so that software or hardware with incompatible data rates can exchange data. Software FIFOs are typically built on a circular buffer or a list structure and are mostly not thread safe, so they need locking when several threads touch the same chain. Where the pipes-and-filters model is available, a FIFO is another name for a named pipe. An electronic FIFO uses two counters acting as read and write address registers, a memory array that is usually dual-ported, and status and control logic, and it buffers and controls flow between devices running at different data rates.
Facts
Problem SolvedServing requests in the order they arrive 1 Sources
1. FIFO (computing and electronics) (Wikipedia)
Applications
FIFOs are used in operating system scheduling to give every process central processing unit (CPU) time in the order in which it is demanded
In Group: Programming Patterns and Approaches, Lead
is a method for organizing the manipulation of a data structure
View the SourceReader Challenges (0)
No disputes yet. Spotted an error or a better source? Open the first one.
Sign in to dispute this or suggest a correction.