Operating Systems

Most people use computers because they want to use application software(such as word processing, internet browsing) however these applications only work inside of an operating system environment. The operating system is the software that controls, manages and run all of the applications on the computer.

The functions of an operating system include:

  • Loading a software interface for the user to interact with (usually a GUI or CLI)
  • Managing hardware resources such as memory and devices
  • User management and authentication
  • File management

When a user is using a computer they are either interacting directly with the operating system ( e.g. logging in to the computer) or via an application (e.g. saving a word processing document)

Command Line Interface

Command line operating systems were the original interfaces that all computers used, until the invention of graphical user interfaces. The consist of text only screens and graphics could only displayed using a technique known as ASCII Art.

Advantages of CLIs

  • Quick and easy to program
  • Fast to use when you are experienced in the system
  • Very Reliable
  • Distraction free
  • Low resource usage – good for battery powered devices like UAVs and weather stations

Disadvantages of CLIs

  • Very difficult / un-intuitive for beginners ( you have to know the commands)
  • Can’t display graphics
  • Not good for multi-tasking
  • Not pretty looking

Command line interfaces are still widely used today in a number of specialist and technical areas, including:

  • Coding
  • Hacking
  • System restore interfaces
  • Micro-controller controlled devices
  • Servers
I Linux Command Line Interface

Graphical User Interface

Graphical user interfaces were invented much later than CLIs but are now the most widely used type of interface. Users interact with the system with the combination of a keyboard and a mouse/point (or a touch screen).

Advantages of GUI

  • Can display images, videos and graphics
  • Because of the use of a pointer or touch screen they are far more beginner friendly
  • Pretty looking
  • Can have multiple windows open for multi-tasking

Disadvantages of GUI

  • Take longer to code
  • More prone to bugs
  • More resource intensive
  • Screen clutter can be distracting.
  • Can take longer to perform tasks than a CLI.
The Windows Graphic User Interface

Multitasking

Most general use systems (e.g. desktops, laptops, tablets) allow multitasking, where most than one program is open at one time.