Linux is one of the popular versions of UNIX operating system. It is open source as its source code is freely available. It is free to use. Linux was designed considering UNIX compatibility. Its functionality list if quite similar to UNIX.
Linux is a kernel which communicates with the hardware of the system which includes memory and the scheduling of running programs.
A kernel is a part of any operating system that is always available in the memory which facilitates the communication between software and hardware components.
The most obvious way in which you interact with Linux systems is through browsing the World Wide Web and using e-commerce sites to buy and sell products. Linux also manages point-of-sale systems and the world’s stock markets and also powers smart TV’s and inflight entertainment systems.
Moreover, Linux is case sensitive and space sensitive language.
The most commonly used Linux are: –
CentOS, Red hat, Ubuntu, openSUSE, Fedora.
It powers the cloud revolution and the tools used to build the next generation of container based micro services applications, software-based storage technologies and big data solutions.
Why should we learn Linux?
The following are the reasons to learn Linux:
- In application development, Linux hosts the application or its runtime.
- In cloud computing, the cloud instances in the private or public cloud environment use linux as the Operating system.
- With mobile application or the Internet of things (IoT), the chances for the operating system of your device to use the Linux are high.
Why did Linux become popular?
There are three great reasons:
1-Linux is an open source software which doesn’t only mean that you can see how the system works, moreover, you can also experiment with changes and share them freely for others to use. It means the improvement is easier to make and enables faster innovations.
2-Linux provides easy access to a powerful and scriptable command line interface (CLI).Linux was built around basic design and philosophy that users can perform all the administration tasks from the CLI. It enables easier automation, deployment and provisioning, and simplifies both local and remote system administration.
3-Linux is a modular operating system that allows you to easily replace or remove components. Components of the system can be upgraded and updated as needed.
What is Virtual memory?
It is defined as the total memory available on the system that includes the physical memory and swap memory in the system.
Physical memory + Swap memory = Virtual memory.
CPU communicates with RAM, and RAM access the non-active and non-dirty pages.
NOTE: All the dirty pages gets stored in the swap memory for an instance, when sometimes we shut the flap of the laptop without actually closing the tap ,automatically the pages get stored in the swap memory for the fastest access of pages when system is turned on.
What is paging?
Another name of Swapping which defines the dirty pages available to get loaded again when the system reboots or turned on. It is said that more swapping is not good as it slower down the machine and the lifecycle of the CPU can get disturbed.
Open Source Software:-
It is a software with source code that anyone can use, study, modify and share. Source code is the set of human-readable instructions that are used to make programs. Open source promotes collaboration, sharing, transparency, and rapid innovation because it encourages people beyond the original developers to make modifications and improvements to the software and to share it with others.
It is a critical part of many organizations for commercial operations which has many benefits of the users:
- Control: See what the code does and change it to improve it.
- Training: Learn from real-world code and develop more useful applications.
- Security: Inspect sensitive code, fix with or without the original developers help.
- Stability: Code can survive the loss of the original developer.
Two types of open source licenses:
1. Copyleft: Licenses that are designed to encourage keeping code open source.
2. Permissive: Licenses that are designed maximize code reusability.
Copy left passes the freedom to copy, change and distribute the code. The basic advantage to this code is to get help from the existing code and improvement to that code. For example, General public license (GPL) and the Lesser GNU Public license (LGPL).
Permissive licenses are intended to maximize the reusability of the source code. For example MIT/X11 license, the Simplified BSD license and Apache software license 2.0.