Linux Kernel and GNU Program

Source: Internet
Author: User

Linux has been developing for ten years and has been developing very rapidly. Do you know about Linux kernel? The Linux kernel name is also "Linux ". The Linux operating system is also the most famous example in the development of free software and open source code. We will focus on the Linux kernel version.

Linux has two different version numbers since Version 1.0, called the version tree. A version tree consists of an experimental version and a product version. Each version consists of three digits. The second digit indicates the version type. If the second digit is an even number, it indicates that this version is a productized version. If it is an odd number, it is an experimental version. For example, version 1.2.0 is a productized version, and version 1.3.0 is an experimental version. These two versions are associated and completed one after the other. The start time of each version tree is the same. Then, with the continuous growth of the two versions, the stable code will be added to the product version, the code in the test phase is added to the experiment version. When linus determines that the lab version has sufficient new features and stable performance, it is called code freeze ). At this time, the stable lab version becomes the new x. y.0, And the development is based on the new version.

For example, 1.0.0 and 1.1.0 are the same. 1.0.1 is the first bug fix for version 1.0 code, while 1.1.1 is the first new function added to version 1.1. Finally, the error in 1.0.9 is fixed in 1.0, and 1.1.9 is 1.1. Finally, when the new functions increase to a sufficient number of new functions, the code will be frozen, the version will be upgraded to 1.2.0 and 1.3.0 together, and then 1.2.0 will continue to fix errors and 1.3.0 will add features.

We can see that the development history of Linux is much shorter than that of other operating systems. There are many reasons for this, but when talking about the development of Linux, We have to first talk about the Free Software Foundation and its GNU program. We know that currently popular software can be roughly divided into three modes based on their provision: commercial software, shared software, and free software. Commercial software is sold by developers and provides technical services. Users only have the right to use it, but cannot perform unauthorized copying, spreading, modifying or adding new functions; shared Software is a copy of the software trial program provided by the developer. After using the Shared Software for a period of time, the user must pay the developer the usage fee, and the developer will provide the corresponding upgrade and technical services; free software is provided by developers with all the source code of the software. Any user has the right to use, copy, spread, and modify the software. At the same time, the user is obligated to disclose the source code of the modified program.

In fact, in the early stages of the development of the computer industry, there were no such three models. At that time, software was only an accessory to hardware. The company only sells hardware and presents software with the system. During this period, software design ideas, new algorithms and software source code were freely exchanged between experts and technical staff, promoting the rapid development of software. However, the company quickly realized the value of the software, implemented copyright control on the software, and restricted the release of source code. The intellectual wealth originally created by the public has become the private property of the company. The software development method has also changed to a closed development model with the company as the main body. Unix is such an example. Although AT&T has created a Unix History, its development and perfection are inseparable from the efforts of many university experts and technicians. In fact, Unix is developed based on collaboration. When AT&T enforced Copyright Control on Unix usage and release in the end of 1970s, people who contributed to the development of Unix were disappointed.

Richard Stallman and BillGates were former students at Harvard University. At this time, he launched a movement to support the development of free software in the software development group. Since 1984, MIT began to support him, which led to the establishment of the Free Software Foundation (FSF) of the Free Software Foundation.

In the same year, Richard Stallman organized and developed a software system plan based entirely on Free Software-the GNU (GNU's Not Unix) program, which aims to develop a completely free program, similar to Unix but more powerful operating systems, it provides a basic system with complete functionality and good performance for all computer users. The GNU name is very interesting. It uses an infinite recursion rule to name it. Its full name is "GNU's Not Unix", meaning that GNU is Not Unix. The first letter of each of its words constitutes "GNU ". When the GNU project was started, there were not many high-quality free software available for the project. Therefore, Member of FSF, people who contributed to the GNU project, first developed a large number of free software starting with system application software and tools. However, the development speed of the core gnu hurd is very slow. It has not been officially released yet and is still in the testing stage.

Richard Stallman also organized a General Public License GPL (General Public License) for the GNU program ), it is used to regulate the release, replication, and modification of these "Free Software. You may have heard of the GPL license, but there are still some people who are not very clear about it or have misunderstandings about it. Many people think that the software under the GPL license is in the public domain and has no copyright. In fact, GPL is copyrighted. Its copyright belongs to developers and is protected by the standard international copyright law. The purpose of the GPL clause is to ensure that the software is freely released and modified. It is prohibited to make a profit on the issuance and use of transactions, and it is not allowed to restrict the rights of others in terms of publishing and modification. However, what puzzles many people about the GPL clause is that it allows groups or individuals to make profits from software that buys and sells GPL copyrights. In other words, it allows them to charge a certain fee or even make profits at the time of release.

At first glance, it seems like a self-contradiction. Why is it possible to sell software for profit and allow free access by anyone on the other hand? In fact, this is not hard to understand. Free does not mean that it does not cost money. Although this is usually the case. The code is free of charge. If a company wants to install a large number of free software on a CD-Rom for release, then the company will definitely charge a certain amount of money to pay for the cost of producing and distributing CD-Rom. If the company makes a profit, this is also permitted by the GPL clause. It is quite good to allow companies to release and sell free software. We can think about it. Not all people have the opportunity to get free GPL software over the Internet, GPL clauses allow companies or groups to sell GPL software, thus expanding the scope of the software release and greatly expanding the full user base of the software. The GNU program of the Free Software Foundation laid a solid foundation for the rapid development of Linux operating systems.

In 1994, when Linus released Linux's first "product" Linux1.0, it was published according to the copyright of the free release. This copyright requires that all source code be made public, and no one can make a profit from Linux transactions. This pure free software method is actually a hindrance to the release and Development of Linux, because it limits the possibility of Linux releasing in the form of disks, CD-Rom, and other media, at the same time, some commercial companies are limited to participate in the further development of Linux and provide technical support. So half a year later, Linus decided to change Linux to GPL copyright. This step is very important for the development of Linux. It has won support from many professionals who have transplanted many of the GNU project's achievements to Linux systems. Many system toolkit, program development environment, applications, and so on, and even standard file tools (such as ls, mv, cp, and rm) are part of the GNU utility kit. Therefore, when we first talked about Linux, there was a scientific saying that Linux is just an operating system kernel. In fact, this is also true, linux only has some disk access code and few software. It has gained many benefits from GNU.

The above is the Linux kernel version and the GNU program.

  1. Command Introduction: Basic Linux commands for file and directory management
  2. Operation notes: Linux Desktop GNOME Operation Skills
  3. Linux File Installation and uninstallation
  4. 2010the Linux operating system is about to bloom
  5. Practical Operation Log: Install JDK in Linux

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.