💻

1. Computer Systems

👉
Become job-ready by solving real-world challenges and build your professional cybersecurity skills with the National Cyber League!

Modern computer devices are built on a series of layers and each layer provides a specific function. These layers exist to help reduce complexity and speed up the development of new technologies. The layers make it possible to create a new piece of technology without having to create all of the layers yourself - you can rely a layer that someone else created.

There are three primary layers that you can see below: Software Application, Operating System, and Computer Hardware. The combination of the Operating System and Computer Hardware is considered the "Computer System".

image
💡
This is our definition of the layers. Some sources may have different names for these layers or split some of these layers into multiple additional layers. It is not important to remember this specific diagram, just the general concept.

Many devices follow these design and can be considered computer systems. This includes personal computers, laptops, cell phones, video game systems, and IoT devices (smart fridges, smart thermostats, smart TVs, etc.)

Starting at the bottom, the foundation of these layers is computer hardware. Computer hardware is all of the physical components that allow a device to function.

Next up is the operating system. The operating system manages the resources of the device and interacts with the computer hardware and tells the hardware to perform the tasks required by software applications.

Finally is the software application. This is the specific program or app that the user interacts with.

Here are some combinations of layers used to run different apps on different devices:

image
image
image

These layers make it possible to create a new piece of technology without having to create all of the layers yourself - you can rely a layer that someone else created.

Imagine you want to create the next great mobile app. You don't need to worry about designing an entire phone. All you need to do it make your app work on Android or iOS and your application will work on all devices that those operating systems support.

Likewise, say you wanted to create a new smart mirror. You could choose computer hardware components that are already compatible with an existing operating system, such as Android, and then create an app that works on that operating system. No need invent any new hardware components or build a system to get the hardware and software to work together.

Being able to create new technology using these layers is great for speeding up development, but it does have some drawbacks which have cybersecurity implications. Incorporating other components into your system expands the attack surface that an attacker could use to break into your system. A vulnerability in one technology could affect all the products that utilize that technology. As a result, companies often times need to evaluate their dependency risk - that is the risk posed by all of the technologies that their product is dependent on. This risk can be greater if the technology is proprietary software where the code cannot be reviewed by others or if there is a lack of resources funding the team that develops the technology.

Summary

  • Computing devices consist of three core layers: Hardware, Operating System, and Software Applications
  • New products can be built more quickly by relying other technologies instead of building them from scratch
  • Each technology in a product is a potential point of attack for an attacker

Become job-ready by solving real-world challenges and build your professional cybersecurity skills with the National Cyber League.