- Learn Linux Quickly
- Ahmed AlKabary
- 617字
- 2021-06-11 18:43:41
A little bit of history
The story of Linux began in 1991 when Linus Torvalds, who was a computer science student at the University of Helsinki in Finland, began writing a free operating sys-tem as a hobby! It is funny to realize now that his side hobby project became the world's biggest open-source project in history. Oh, and in case you haven't figured it out already, this free operating system was Linux. There are a lot of definitions out there on the web for open-source, and some of them are somewhat confusing for the inexperienced reader, so here is a simplified explanation:
WHAT IS OPEN-SOURCE?
An open-source project is a software project that has its source code made accessible for the public to view and edit.
The source code is simply the collection of code (programs) used to develop soft-ware; in the context of Linux, it refers to the programming code that built the Linux operating system. Now since you know what open-source means, it is easy to imagine what closed-source is:
WHAT IS CLOSED-SOURCE?
A closed-source project is a software project that has its source code NOT made accessible for the public to view and edit.
Linux is the ultimate most famous example of an open-source project. On the other hand, Microsoft Windows is the most famous example of a closed-source project.
Some people don't know what an operating system is, but don't worry; I got you covered. Here is a simple definition of an operating system:
WHAT IS AN OPERATING SYSTEM?
An operating system is a software program that manages a computer's resources such as memory and disk space. It also allows a computer's hardware and software to communicate with each other. Operating systems may also include other applications: text editor, file manager, graphical user interface, software manager, etc.
There are a lot of different operating systems out there; here are a few examples:
- Linux
- Android
- macOS
- Microsoft Windows
- Apple iOS
- BlackBerry
Keep in mind that this list is very short and is in no way comprehensive. There is a massive number of operating systems out there, and it is hard even to count them all.
When talking about operating systems, we have to mention the kernel, which is the core of any operating system.
WHAT IS A KERNEL?
A kernel is simply the core of any operating system. It is the part of the operating system that organizes access to system resources like CPU, memory, and disk.
Notice that in the definition, I said the kernel is a part of the operating system. And the following figure can help you visualize the difference between a kernel and an operating system.

Figure 1: Operating System vs. Kernel
Unlike Microsoft Windows or macOS, Linux has a lot of different flavors; these flavors are called distributions, and they are also referred to as distros for short.
WHAT IS A LINUX DISTRIBUTION?
Since Linux is open-source, many people and organizations have mod-ified the Linux kernel along with other components of the Linux operating system to develop and customize their own flavor of Linux that suits their needs.
There are literally hundreds of Linux distributions out there! You can go to www.distrowatch.com to check out the enormous list of Linux distros.
The good thing about distrowatch.com is that it shows you the popularity ranking of all the Linux distros in the world. You will even see that some Linux distros are designed with a specific purpose in mind. For example, Scientific Linux is a popular Linux distro among many scientists as it contains a lot of scientific applica-tions preinstalled, which makes it the number one Linux choice among the scientific community.
- 青少年美育趣味課堂:XMind思維導圖制作
- The React Workshop
- Microsoft System Center Orchestrator 2012 R2 Essentials
- Visual FoxPro程序設計習題集及實驗指導(第四版)
- HTML5+CSS3 Web前端開發技術(第2版)
- ServiceNow:Building Powerful Workflows
- Domain-Driven Design in PHP
- OpenCV with Python By Example
- GitHub入門與實踐
- Python開發基礎
- WebStorm Essentials
- Java自然語言處理(原書第2版)
- 3ds Max 2018從入門到精通
- 從零開始學Unity游戲開發:場景+角色+腳本+交互+體驗+效果+發布
- C#網絡編程高級篇之網頁游戲輔助程序設計