Explaining the mechanism of Linux that you do not know unexpectedly

Hello, my name is Kazumi. This time I would like to explain the mechanism of Linux quickly.

What is Linux?

Like Mac and Windows, it is widely used in the OS (Operating System) from smartphones to the cloud.

** OS type **

Windows macOs Linux/UNIX iOS AndroidOS

There are two minimum ideas necessary to understand Linux, so I will explain from them.

Difference between hardware and software

As many of you may know about this difference, ** hardware ** refers to the computer machine itself. On the other hand, ** software is a program that runs on ** hardware.

It will be easier to understand if you imagine the relationship between the game console (= hardware) and the game software (= software).

Difference between basic software and applied software

There are two main types of software explained earlier. That is basic software and applied software.

Basic software refers to the OS, and application software refers to the applications that run on it. The basic software is Windows, Linux, and macOs, which I mentioned earlier. Word, Excel, etc. are application software.

Based on the above, what is Linux? It is easy to understand when you think about.

What are the features of Linux?

Shell and login

Linux provides an operation input environment with interactive commands. The shell understands and executes the command entered. Also, on Linux, enter the user name and password when you start using it. The combination of user name and password is called an account, and starting to use Linux with an account is called ** logging in **.

So how does Linux work?

The basic software described earlier is further divided into two areas. They are called ** kernel ** and ** userrad **.

kernel

The kernel is the core part of the OS and has the most core functions such as direct communication with the hardware. The kernel is responsible for absorbing hardware differences and allowing programs to run on any hardware.

Userland

It is the part other than the kernel required for the OS to operate. Refers to basic software such as file systems, file operation commands, and shells.

alt

The figure is from Linux standard textbook

Linux programs use the GPL license format

It is one of the free software licenses including the following features.

Freedom to run the program Freedom to modify the source Freedom to use and redistribute Right to release an improved program

For more information, please refer to Understanding the OSS license (Do you know the difference between "use" and "use"?).

Comprehension test

What is the difference between hardware and software?

What is the difference between basic software and applied software?

What are the features of Linux?

Digression

I also update Twitter every day, so please follow me.

Kazumi's Twitter

Recommended Posts

Explaining the mechanism of Linux that you do not know unexpectedly
How much do you know the basics of Python?
[Linux] A list of Linux commands that beginners should know
[Introduction to Python] Basic usage of the library scipy that you absolutely must know
LINE Bot that notifies you of the stocks of interest
Which day of the week do you buy gold?
What you should not do in the process of time series data analysis (including reflection)
Command collection (server edition) that you should know by isolating the cause of failure response
Grep so that grep does not appear at the time of grep
The websocket of toio (nodejs) and python / websocket do not connect.
How to execute Linux commands on Windows by people who do not know Linux (ubuntu) [Until checking the operation of R and python]
The story that the version of python 3.7.7 was not adapted to Heroku
Shell script (Linux, macOS) that outputs the date of the last week
You should not use the --color = always option of the grep command
The story of the release work of the application that Google does not tell
The problem that the version of Vue CLI did not go up
Knowledge of linear algebra that you should know when doing AI
[AtCoder for beginners] A story about the amount of calculation that you want to know very roughly
I investigated the mechanism of flask-login!
Try the Linux kernel lockdown mechanism
Linux commands that you often forget
A memo for utilizing the unit test mechanism KUnit of the Linux kernel
Do not change the order of columns when concatenating pandas data frames.
Python Note: When you want to know the attributes of an object
A note about the functions of the Linux standard library that handles time
[Linux] Why do I, an infrastructure engineer, not use the "hostname" command?
A general-purpose tool that programmers who do not know this will lose