Difference between revisions of "Channel"

From Computer History Wiki
Jump to: navigation, search
(Mention cond branch)
m (typo)
Line 3: Line 3:
 
They are most commonly found on [[mainframe]] systems; on smaller machines, mechanisms such as [[Direct Memory Access|DMA]] from [[device controller]]s do a lot of what a channel does.
 
They are most commonly found on [[mainframe]] systems; on smaller machines, mechanisms such as [[Direct Memory Access|DMA]] from [[device controller]]s do a lot of what a channel does.
  
The details vary considerably from manufacturer to manufacturer: for instance, the Peripheral Processing Units of the [[CDC 6600]] are effectively channels, but they are essentially complete [[minicomputer]]s (although they are implemented with shared hardware). The channels of [[International Business Machines|IBM]] mainframes are programmable, but are much more limited in functionality; they are [[finite state machine]]s, with [[Conditional branch]]ing capability.
+
The details vary considerably from manufacturer to manufacturer: for instance, the Peripheral Processing Units of the [[CDC 6600]] are effectively channels, but they are essentially complete [[minicomputer]]s (although they are implemented with shared hardware). The channels of [[International Business Machines|IBM]] mainframes are programmable, but are much more limited in functionality; they are [[finite state machine]]s, with [[conditional branch]]ing capability.
  
 
IBM channels come in two varieties: a 'multiplexer channel' handles a group of slow-speed devices, and interleaves operations to each of them, with each transfer handling single small data item (e.g. a [[byte]]); a 'selector channel' handles high-speed devices such as [[disk]]s and [[magnetic tape drive]]s, and transfers an entire block at a time.
 
IBM channels come in two varieties: a 'multiplexer channel' handles a group of slow-speed devices, and interleaves operations to each of them, with each transfer handling single small data item (e.g. a [[byte]]); a 'selector channel' handles high-speed devices such as [[disk]]s and [[magnetic tape drive]]s, and transfers an entire block at a time.

Revision as of 19:38, 7 November 2018

A channel is a block of hardware (effectively a co-processor) which performs I/O operations, off-loading that work from the main CPU; they usually have direct access to main memory.

They are most commonly found on mainframe systems; on smaller machines, mechanisms such as DMA from device controllers do a lot of what a channel does.

The details vary considerably from manufacturer to manufacturer: for instance, the Peripheral Processing Units of the CDC 6600 are effectively channels, but they are essentially complete minicomputers (although they are implemented with shared hardware). The channels of IBM mainframes are programmable, but are much more limited in functionality; they are finite state machines, with conditional branching capability.

IBM channels come in two varieties: a 'multiplexer channel' handles a group of slow-speed devices, and interleaves operations to each of them, with each transfer handling single small data item (e.g. a byte); a 'selector channel' handles high-speed devices such as disks and magnetic tape drives, and transfers an entire block at a time.

Channels were apparently first introduced with the IBM 709, and other manufacturers copied the idea.