What are hardware, software and Operating Systems?
What are software, hardware and Operating Systems?
There are very clear differences between software, hardware and an operating system that are important to understand when learning about computer science.
When discussing software we are mainly talking about programs that can be run on a computer.
Hardware is the physical parts of a computer, such as the processor, memory modules and the screen.
The Operating System is often described as a translator; it translates the language of the hardware (binary numbers) into the language of the software (written programs) and then displays it in a way that humans can understand (text, images and sound).
How do children learn about hardware?
In KS1 the very basic hardware components of a computer are introduced:
- Inputs are any devices that send information into the computer. For example, a mouse has a position on the screen and is able to tell the computer when a button is clicked and which button is clicked. A keyboard is able to send key presses to the computer.
- Outputs are any devices that are able to show information to the user. Good examples of these are the screen, which shows the user text and images, and headphones, which are able to play sounds for the user to listen to.
In KS2 children are introduced to slightly more complicated parts of a computer:
- A processing device is any device that is used to run calculations using binary numbers. The main processing device in any computer is the CPU (Central Processing Unit), which performs binary calculations to make the computer run. This component is often referred to as the ‘brain of the computer’.
- Storage devices hold information and are often referred to as computer memory. There are two main types of memory: persistent memory (that exists when the computer is switched off) and volatile memory (that is deleted when the computer turns off). An example of a storage device would be a hard drive or a USB memory stick.
Although there are lots of devices that meet the criteria above, in primary years your child will only learn about a small number of them. There is no set list of devices that are learned about, however they will generally be the ones in this table:
An example of an activity that may be run at both KS1 and KS2 would be to have the physical devices from the table above laid out on a table. In corners of the room or on multi-coloured boxes a teacher may place labels for inputs, outputs, processing devices and storage. The students will then have to look at each physical device, select what it is and the device's function and finally decide which category it belongs to.
How do children learn about software?
In KS1 software is described to your child as being a ‘set of instructions run by a computer’.
Your child may understand that programming is linked to software, as when they write basic programs for a turtle robot they are effectively writing software for it. However software is an abstract concept and can be very difficult for a young child to understand, as there is no concrete way to look at it; it doesn’t really exist. Whilst we can write a computer program and print the code onto pieces of paper, this would not be of any use to us, as without running the code on a piece of hardware it doesn’t actually do anything. The code written for software, whilst extremely valuable to whoever wrote it, is completely useless until run on a computer. In other words, software isn't the code it's written in but the result of having that code running on our computer, asking for input and showing output to the screen.
This is an exceedingly difficult concept, so until KS2 children's understanding of software is not developed much further than a description and some examples. Even at KS2, the idea does not go much beyond this, but as long as students are learning about software hand in hand with algorithms and programming, then the foundation knowledge required to understand what software is starts to develop.
Whilst there are no set tasks that can be used to teach students about software, as students start to write more and more code their understanding of software being something they can build and hardware being something that is a physical object will develop naturally and will be reiterated multiple times by teachers throughout their early computing.
How do children learn about Operating Systems in KS1?
An operating system (OS) is generally described as a translator, however it is actually a very large and complicated piece of software. Its main job is to allow communication between the different parts of a computer.
At KS1 level your child will be introduced to the concept of the OS through reference to the UI (User Interface). The UI is what allows us to communicate with a computer by showing us information and giving us things to click. If we want to go on the Internet then by clicking on the Internet Explorer icon the OS will load the browser for us and show it on screen.
When you click inside the Internet Explorer window the OS tells the program, allowing it to then calculate what it should do next. When the program makes changes it then asks the OS to show these changes on the screen. This is introduced very simply at KS1 level through a series of tasks that will have your child perform basic functions on the computer, such as loading programs and using menus. Discussion will be had regarding what is happening when you click on something on screen and questions will be asked such as “How does the program know where your mouse is?” and “What tells the computer when you have pressed a key on the keyboard?”
How do children learn about Operating Systems in KS2?
At KS2 this learning will be taken further and the concept of the OS being a translator will be introduced more thoroughly.
An example of an OS learning activity at KS2 would be to have students stand up at the front of the class and be given a role. For example, one student could draw a picture, one student could provide pieces of paper, one student could be a communicator and one student could be a middleman for the other three.
- The class teacher will whisper to the communicator what picture they would like drawn; they will write this on a note to pass to the middleman.
- The middleman will look at the request for a picture of, for example, a bird, and decide whether to accept or decline it. When they accept it they will send a note to the paper-provider student requesting a piece of paper and the paper provider will either return a piece of paper or a note saying they don’t have any paper left.
- When the middleman receives the response they will either notify the communicator that they don’t have any paper, or pass the paper to the drawer with a note requesting a picture of a bird.
- When the drawer has finished the picture they will pass it to the middleman who will then give it back to the communicator.
In this example there are a few analogies that we can use:
• The middleman is the Operating System. They communicate with all the other members of the team (components of the computer) and deal with all requests and communication.
• The communicator is our input device. In a computer they could be the mouse, receiving a request to start drawing on the screen.
• The piece of paper is our output. In a computer this could be the screen. When the middleman asks whether there is paper available this could be the OS checking that there is nothing else on screen.
• The drawer is our software. This handles the input from the user and produces an output to the screen.
Hardware, software and the OS: what kids learn in each year group
Please note that the following guidelines for what is taught in each primary year is for guidance only and may not be representative of the way computing is taught at your child’s school.
The basic parts of a computer are introduced and a definition of software is given.
The difference between input and output devices are learned and the OS is explained graphically.
Children learn about processing devices and memory.
Processing devices will be linked to using the OS and students will learn about how parts of the computer communicate.
The concept of software will be revised through discussion and practice of programming techniques.
Students will tie their understanding together to be able to describe parts of a computer, what they do and how they communicate.