In this video from ITFreeTraining, I will look at interfaces, connections and ports.
A computer system consists of many different components that need to communicate with each
other. Understanding how devices communicate with each other will help you troubleshoot
problems when they occur.
The first way that I will look at how computers communicate is via an interface. An interface
is a shared boundary over which information can be exchanged. For example, this can be
between hardware and the user. Later in the video I will look at how this applies to software.
An example of a hardware interface is a keyboard connected to a computer. In this case the
keyboard is considered an input interface. Each side uses the information differently
and the interface provides a method to convert the information into a form the other can
understand. The interface can be defined as having mechanical, electrical and logical
signals that are used to communicate.
In the case of the keyboard, the interface is mechanical in that the keys are pushed
down to provide input. A device like a mouse will sense the mouse moving through its hardware.
This information is sent through an interface to the computer. The computer will take this
information and convert it to mouse positions based on the movement information it receives.
Both sides have different hardware and use the information differently, but the interface
allows the information to be exchanged between the two.
An interface that is considered to be input/output would be a device that can transfer data in
both directions. An example of this would be a device like a USB stick.
An interface can also be between the user and the computer. For example, the monitor
of the computer is an output interface which shows images to the user. If the monitor was
a touch screen, then this would be and example of an input/output interface.
The next part is the connection. The connection is the physical link. This includes the port,
device and transmission medium. This can be a physical cable or it could be wireless.
The connection is different from the interface in that it is what the data travels over.
Next, I will look at the port. A port is a hardware interface that connects devices together.
The port transfers electrical signals between the device and the computer. For example,
an electrical wired plug.
These ports are often defined as male, that is they have pins, or female, meaning they
have holes. By using male and female ports, this makes it impossible to connect them incorrectly.
Some connectors are not designed so they are clearly a male or female connector, and in
this case a lot of them are keyed to prevent them from being put in upside down or in the
wrong port. A port can also be referred to as an end point.
There are many examples of this in a computer. The plugs differ in size, pins and color.
A port can also be present in a wireless device. The port on the wireless device is the connection
between the device and the air that receives and sends data. A port essentially is where
the data arrives or leaves.
Ports found on the computer are often referred to as input/output ports or I/O ports. Most
of the external ports are found in the I/O panel on the computer. The I/O panel generally
will have an I/O shield covering it which, in most cases, will be silver in color. On
most computer cases the I/O panel is found at the rear of the computer.
Some ports will be found at the front of the computer case. If you need more, it is possible
to add additional ports using an expansion card. Expansion cards allow for additional
ports like USB ports to be added. The expansion card can also have an older style connector
allowing older hard disks to be added. This can be useful if you need to install some
old hardware and your motherboard does not support it.
We have had a look at how interfaces, connections and ports work in hardware, let’s now have
a look at how they work in software.
Software interfaces are essentially codes and messages that software uses to communicate.
This can be used for talking to other software interfaces or hardware. To understand better,
let’s consider an example. Let’s say you want to read some data from a storage device,
in this case a hard disk.
There are different storage devices on the market, for example solid state drives. You
could also have the storage online, for example in the cloud. For this reason, you want to
have a common interface to read data from the computer. Developers of computer software
do not want to have to rewrite their code if a new storage device is released.
This is where the software interface comes into play. In order to read data from the
hard disk this requires special commands to access the hard disk. The software interface
will handle the access to the hard disk, most likely using a device driver. The important
point to take away is that there is a hidden layer of software that takes care of accessing
the hard disk. This can be easily changed or updated leaving the software interface
the same.
The software interface could also handle multiple hardware devices. These devices may have a
different specification and thus may be accessed differently from other devices. However, the
software interface is accessed the same way. When the read requests come through, the software
interface will handle processing the request using the required storage device.
The important take away is that the software interface provides a standard method for applications
to access. The interface provides a layer of transparency, so the software does not
need to know about the low-level details of what is happening. Now let’s have a look
at the connection.
A connection is essentially a session where data is received and transmitted. Essentially,
if you have two end points, a connection is created and data is transferred between the
two. A good example is a network connection. Networking will often involve making a connection
between two points. However, the connection may never leave the computer. For example,
an application may connect to the local computer in order to access something. Connections
may also be made between different applications for transferring data.
Now let’s have a look at software ports.
A software port is essentially an end point of communication. To understand why this is
important, consider that you have an interface on the computer. The interface is connected
to a single communication stream.
Now let’s consider that we want to share this communication stream. For example, we
have many different users that we want to access this communication stream. In order
to do this, we need some way to separate the data, so we know what belongs to each user.
In order to do this, we add a number of ports. This allows the user to connect to a particular
port. The interface keeps the port’s data separate from the other ports using the one
connection. Ports are used in networking to separate data. Ports are what allows your
single network connection to access many different services and websites using the same connection.
In software, a port is often used to divide up data from different users. For example,
some software interfaces, when you make a connection to it, will return a port number.
The software will then need to use that port to communicate using the interface. You can
see how ports are used to divide up and manage a connection.
This concludes this video on interfaces, connections and ports. I hope you have found this video
useful and I hope to see you in other videos from us. Until the next video, I would like
to thank you for watching.