Software

We've talked a lot about hardware. Hardware on it's own doesn't do anything useful. Software is programming that makes the computer hardware actually do things. You are already familiar with Applications, or Apps. But software comes in many layers, and that is just the very top one. Here is a simplified description of software layers common to most devices.

BIOS

The BIOS (Basic Input Output System) is the layer closest to the hardware. It runs immediately after a computer is powered on. The BIOS performs a number of functions, including a self-test (POST, or Power-On Self Test) to make sure all the necessary hardware is present to start, scanning attached hardware, and checking all available drives to see if they can start an operating system. If everything checks out, the BIOS starts loading the operating system, which takes over. This process is called "booting up," referencing the idea of "pulling oneself up by one's boot straps."

Operating System

The operating system, or OS, is responsible for handling most common tasks on a device. This includes dealing with input and output devices, files, and starting and stopping applications. OSes provide services that applications can use, such as printing and file retrieval.

Some of the most common OSes include Microsoft Windows, Apple OS X, iOS, Android, Android, and Linux. There are literally hundreds of others.

Applications

Applications are where we usually spend our time on a computer. These include productivity software, games, Internet browsers, and just about everything else you need to use.

Browsers

Browsers are an application that allow you to access the World Wide Web. Common browsers are Chrome, Firefox, Safari, and Edge. A recent development is the use of the Internet browser to run apps over the Internet. This has the advantage that users do not need super fast hardware to use the web apps - the heavy lifting is done somewhere else.

on to Summary