Featured image

Table of Contents Link to heading

Introduction Link to heading

Software that runs on a computing device and manages the hardware and software components that make up the system.

Task of an OS:

  1. Provide a user interface, receiving and executing commands and requests from users.
  2. Load, manage and execute software.
  3. Manage computer’s hardware resources (CPU, disk drives).

Users today have a choice between three major OSes:

  1. Microsoft Windows
  2. Apple macOS
  3. Linux

Only Microsoft Windows is based on proprietary code that is not Unix based.

Decision Points Link to heading

  • Role: Accessed by one user directly (desktop) or many users remotely (server)?
  • Function: Does it need to run specific software? What is the skill set of users?
  • Life Cycle: What is the service lifetime? OS types have different release cycles and maintenance cycles for support and updates.
  • Stability: Are OS releases beta (not tested “in the wild”) or stable (tested)?
  • Compatibility: Is it backwards compatible as in is it compatible with software made for earlier versions?
  • Cost: Important factor for new systems.
    • Microsoft has annual license fees.
    • Apple does not charge annual fees but only works on Apple hardware.
    • There are multiple Linux providers who offer enterprise support and although the software is free, support is not.

Microsoft Windows Link to heading

  • Offers desktop and server versions
  • Slow release cycle (3-5 years), long maintenance cycle
  • Emphasis on backward compatibility
  • Runs Graphical User Interface (GUI)
  • Improved scripting and management abilities are being developed to compete with Linux

Apple macOS Link to heading

  • Runs solely on Apple hardware
  • Server version adds packages to the desktop version to aid in management and sharing
  • UNIX certified
  • New major releases every 18-24 months

Linux Link to heading

  • Unique in that after choosing Linux, you must choose a distribution
  • Different distributions focus on different use cases (e.g., desktop, server, scientific, network)
  • Some distributions offer commercial support, most is volunteer based

Linux decision points:

  • Role: Distributions available for variety of systems; commercial for servers and desktop, specialised to repurposing computers, embedded systems, etc.
  • Function: Distributions can be chosen based on purpose of usage or security needed.
  • Life Cycle: Most distributions have major and minor update cycles. Some Linux releases have long-term support (LTS) (5+ years, 13 years for SUSE LTS).
  • Stability: Some distributions offer stable, testing, and unstable releases.
  • Compatibility: Distributions are zero cost. Depending on need, paying for support may be worthwhile. Enterprise users can pay for support or attempt self-support.

Linux Distributions Link to heading

Red Hat Link to heading

  • Focuses on server applications like web and file serving.
  • Releases Red Hat Enterprise Linux (RHEL), a stable distribution with long release cycles.
  • Sponsors the Fedora Project, a personal desktop with latest software.
  • CentOS is a free version of RHEL software which does not offer support.
  • Scientific Linux is a specific use distribution based on Red Hat.

SUSE Link to heading

  • One of the first distributions
  • Originally derived from Slackware
  • Contains proprietary code and is sold as a server product. Some modules or add-ons may contain proprietary code.
  • Sold as a server product although a Workstation version exists.
  • OpenSUSE is a completely open, free version with multiple desktop packages.

Debian Link to heading

  • Community effort that promotes the use of open-source software.
  • Invented its own package management system (apt) based on the .deb file format.
  • Ubuntu is its most popular derived distribution, which has variants for desktop, server, and applications. Ubuntu also offers an LTS version.
  • Linux Mint is a derivative of Ubuntu with various free versions, some have license restrictions.

Android Link to heading

  • Provides a platform for mobile users.
  • Lacks traditional GNU/Linux packages to make it compatible with desktop.
  • Sponsored by Google.

Others Link to heading

  • Raspbian is a Linux distribution designed to run on Raspberry Pi hardware.
  • Linux From Scratch (LFS) consists of an online book, source code, and instructions for building a custom Linux distribution. LFS can be used as a learning tool.