Understanding Linux - LINUX: Easy Linux For Beginners, Your Step-By-Step Guide to Learning The Linux Operating System and Command Line (2015)

LINUX: Easy Linux For Beginners, Your Step-By-Step Guide to Learning The Linux Operating System and Command Line (2015)

Chapter Two: Understanding Linux

In this chapter, I will provide short information on this operating system’s architecture and also discuss about the different flavours of Linux that a beginner can choose from.

Linux Architecture

Linux architecture can be divided into two: the User Space and the Kernel Space.

· User Space – This is where the applications are used. The GNU C library in the User space is the interface that connects to the kernel and transitions between User and Kernel space. This uses all the available memory.

· Kernel Space – All Kernel services are processed here. The Kernel space is further divided into 3.

o System Call Interface – A User process can access Kernel space through a System Call. When a System Call is performed, arguments are passed from User to Kernel space. This is the layer that implements basic functions.

o Kernel Code – This is the architecture-independent code and can be seen in all architectures that Linux supports.

o Architecture-Dependent Kernel Code – This is the layer for platform-specific codes.

Figure 1: Linux Architecture


Linux Distributions

Each Linux distribution consists of a Linux kernel plus utilities and configuration files. Most Linux distributions can be downloaded from their websites.

Let’s take a look at how several of the popular Linux distributions, or flavours, differ from each other based on the following criteria:

- Availability

As previously mentioned, Linux is a free software but companies offering a support contract and proprietary components offer it for a fee. In the table below, Red Hat Enterprise and SUSE Enterprise both offer Linux commercially but they also have the free alternatives – Fedora and openSUSE.

- Package Format

Linux distributions come in packages. Packages are files grouped into one single file. RPM is the most commonly used.

- Release Cycle

This is how often a distribution releases new software. The ones with shorter release cycles provide the latest software in the shortest possible length of time while those distributions with longer release cycles aim to offer the most stable environments possible. A distribution can have it done both ways. Take a look at Ubuntu who releases both long-term support (LTS) versions (longer cycle) and the latest software through a 6month cycle.

Distribution

Availability

Package Format

Release Cycle

Arch

Free

pacman

Rolling

CentOS

Free

RPM

Approx. 2-yr

Debian

Free

Debian

2-yr

Fedora

Free

RPM

Approx. 6-mo

Gentoo

Free

ebuild

Rolling

Mint

Free

Debian

6-month

openSUSE

Free

RPM

8-month

Red Hat Enterprise

Commercial

RPM

Approx. 2-yr.

Scientific

Free

RPM

Approx. 6-mo

Slackware

Free

tarballs

Irregular

SUSE Enterprise

Commercial

RPM

2-3 years

Ubuntu

Free

Debian

6-month

Table 1: Comparison of Popular Linux Distributions

To help you decide on which is the right distribution for you, consider the criteria mentioned above and research on the other fields listed below:

- Desktop environment: Do your research and find out if the particular distribution that you’re eyeing has a basic look and feel that you like plus check how customizable it is

- Hardware Compatibility: Depending on the hardware that you are using, some drivers might not be available yet by the time you install your distro. Check from online resources first to know which ones can be supported out-of-the-box.

- Community Support: Find the one with a large online community. The bigger the community is, the easier it will be to find documentation and get support.

I personally recommend Linux Mint for those who have never used Linux before. The installation is easy and fuss-free, plus the menus are familiar (see image below). It also comes with an added bonus of proprietary software that comes preinstalled (eg. Adobe Flash, MP3 support).

Figure 2: Mint Desktop

Once you are familiar with Mint and you feel like you want to branch out to other distributions, I recommend Ubuntu as your next distro. Ubuntu makes Linux easy to use for the experienced, average user. The distro also comes with a standard set of programs that can get you working in no time after installation.

Figure 3: Ubuntu Distribution

***

In this chapter, we talked about the different components that make up Linux and touched on the differences of popular distributions. I hope this will help you find the right distribution that you want to start your Linux experience on. In the next chapter, I will walk you through the process of Linux installation.