In computing the term interface can have various meanings, but all relate to the interaction between one object and another.
Interface may refer to a hardware interface, a software interface, or sometimes it can refer to the interaction between the user and the computer via the keyboard. We will look at some of these below.
Hardware interfaces refer to the connection and communication of different devices.
For example, a printer being connected to a USB port is actually connected to the USB interface
of the system. Another example of a hardware interface is a graphics card plugged into a PCI slot, which is using the PCI interface
to connect and communicate.
There are various different hardware interfaces found in computing, here we will take a brief look at some of them.
Serial and parallel interfaces
A serial interface, commonly used in commmunications, allows data to be sent one bit at a time
(sequentially) down the same line/channel. A parallel interface is capable of sending many bits of data at a time via numerous lines/channels.
An analogy could be: Serial communication is like a dripping tap/faucet, one drop of water (data) at a time. Parallel communication is like a shower head, delivering many drops of water (data) at any one time. Hardware interfaces are typically serial or parallel.
The USB interface
is a serial interface which is commonly used to connect all sorts of devices, including printers, scanners, external storage devices, mice, digital cameras and more. It has become one the most common interfaces for external devices.
PCI, PCI-X and PCI Express interfaces
With the exception of PCI Express, which uses high-speed serial logic, PCI uses multiple parallel communication. The PCI family
of interfaces are used for countless internal devices, including sound cards, modems, graphics cards and many other expansion cards.
The IEEE 1394/ Firewire / iLink interface
The IEEE 1394, often referred to as Firewire and iLink, interface is a serial interface with high-speed capabilities. It is commonly used for the connection and communication of audio and video devices. For more on this interface click here
A software interface is used to allow either two pieces of software to communicate with each other (software-software interface), or to allow software to communicate with a hardware device (software-hardware interface).
Below is an example of when both of these types of interface would be used.
You have a document open in a word processor, when you click to save the document the word processor will communicate with the operating system (software-software interface). The operating system would then use a software-hardware interface to communicate with the hard drive (or other storage device) and carry out the task.