OS Parts

Operating systems have many parts that fit together to provide hardware resources (RAM, disk, network and CPU) to programs. The many different parts of software required to assemble a full operating system are made to work well together. A number of different organizations exist to create the "upstream" software projects used in the complete solutions.

What is Linux, anyway? Here is our explanation.

The GNU project created by Richard Stallman created many of the parts that make up what is commonly called a Linux or GNU/Linux distribution. The knowledgeable people that do this work pass along fixes to the upstream projects, helping everyone.

Operating systems do not create themselves. Perhaps due to complexity there is not much transparency for regular users about how many people are involved in creating the software they use.

For each program, there are quite a few parts. Real people are involved in making a program available through a distribution. Software developers write code and make it available on the Internet. Many eyes make bugs shallow. As other people use the software they improve it for their own needs and often share these changes with the developers. From the perspective of a GNU/Linux distribution the coordination needed for a program are done by the packagers. Packagers are often volunteers, sometimes paid professionals, who prepare programs for installation within a distribution. Packagers decide if problems encountered by the users of their distribution are problems with their packaged version of the software or if the problems exist for everyone. If it exists for everyone they forward the problems (often with fixes) to the upstream software developers.

The software parts that people see the most are called the user interface.

  • touch interfaces are common on phones and tablets
  • windows, icons, mouse, and pointer graphical interfaces are common on laptop and desktop computers
  • command line
  • – blinking cursors where you type in a command and arguments

Bootstrapping (aka. booting) is a process that every computer goes through to start itself. The Basic Input-Output System (BIOS) starts a boot loader which starts the operating system.