9.1. Operating SystemsΒΆ

An operating system is a complex program that keeps the hardware and software components of a computer system coordinated. Usually it is the only program that has full access to the computer hardware - its primary task is to manage that hardware and allow other programs to use it safely.

Although the simplest microprocessors (like those inside simple electronic devices) may not have an operating system, every complex modern computational device uses one. There are a wide range of operating systems, some specialized for running personal computers, others for smart phones and others for more specialized hardware. How many of the operating system logos do you recognize in the image below?

../_images/operating-system-logos.jpg
Popular operating systems logos. Clockwise from top-left: Macintosh, Linux, Windows, iOS, Android, FreeBSD

Operating systems that solve similar problems on similar hardware tend to themselves be similar. Windows, OSX, and Linux desktops all provide similar ways to view files, and interact with programs because they are used on personal computers with mice and keyboards. Phone operating systems like Android and iOS are similar because they generally operate on devices with smaller screens that are touch sensitive.

You are probably most familiar with the kind of operating system that runs on a personal computer or smart phone to make it easier to use and program. It is however worth recognizing that there are other types of operating systems designed to run different kinds of hardware or satisfy different constraints.

Note

What’s the deal with Linux?

You may or may not have tried working with a PC running Linux - it is an alternative to Windows or Mac OSX for powering personal computers. But it also the operating system that powers many of the electrical devices in your home, the majority of web servers in the world as well as most big scientific computers.

Where did it come from? Why is it so popular? This video tells the quick version of the story of Linux and free, open source software: