Translation: English to Chinese refuses machine translation.

1991The post posted on comp.os.minix on July 3rd mentioned that POSIX information was being collected. (Of course, the name Linux doesn't exist at this time. At that time, what Linus was thinking might be FREAX, which means grotesque, monster, whimsical and so on in English. It is revealed that he is developing a Linux system. At the beginning of Linux, he had the idea of realizing compatibility with POSIX (the international standard of UNIX).

The birth of Linux operating system

198 1 year, IBM introduced the world-famous microcomputer IBM PC. During the years of1981-1991,the MS-DOS operating system has always been the dominant operating system on microcomputers. At this time, although the price of computer hardware is decreasing year by year, the price of software is still high. At that time, Apple's MACs operating system could be said to have the best performance, but its sky-high price was not easily accessible.

At that time, another computer technology camp was the Unix world. But Unix operating system is not only expensive. In order to seek high interest rates, Unix dealers will raise prices so high that small PC users can't get close to them. UNIX source code has been licensed by Bell Labs and can be used in university teaching, but it has been carefully protected from being made public. For the vast number of PC users, the big suppliers in the software industry have never given effective solutions. At this moment, the MINIX operating system appeared, and a detailed book described its design and implementation principle. Because AST is very detailed and well described, computer enthusiasts all over the world are reading this book to understand the working principle of the operating system. It also includes Linus Benedict Torvalds, the founder of Linux system. At that time (199 1 year), Linus Benedict Torvalds was a sophomore in the computer department of Helsinki University, and taught himself to be a hacker. This 2 1 year-old Finnish young man likes to play with computers and test their abilities and limitations. But what was lacking at that time was a professional operating system. Although MINIX is very good, it is only a simple operating system for teaching, not a powerful and practical operating system.

By 199 1 year, GNU project has developed many tools and software. The most anticipated Gnu C compiler has appeared, but no free Gnu operating system has been developed. Even MINIX began to have copyright and needed to be purchased to get the source code. The GNU operating system HURD has been under development, but it can't be completed in a few years. For Linus, it cannot wait. From April of 199 1, I started to write my own operating system. At first, his purpose was simple, just to learn the programming technology in Intel 386 architecture protection mode. But then the development of Linux completely changed its original intention.

199 1, Linux began to learn the minix operating system on a 386sx compatible microcomputer. Through learning, he gradually failed to meet the existing performance of minix system and began to develop a new free operating system. According to the news posted by Linus on comp.os.minix news group, we can know his process from learning minix system to developing his own Linux.

Linus sent the message of 1 time to comp.os.minix on March 29th,1year. The topic is "gcc is not optimized on minix-386", which is about the optimization of gcc compiler running on minix-386. It can be seen that Linus began to study the minix system in the early days of 199 1, and during this time, he had the idea of improving the minix operating system, and gradually evolved to want to learn the minix system again. When he answered questions on minix, the first thing he said was "read the source code" ("RTFSC (read the fucking source code:)"). He thinks the answer lies in the source program. This also shows that for learning system software, you not only need to understand the basic working principle of the system, but also need to learn the implementation method of the actual system in combination with the actual system. Because theory is a theory after all, which omits many side issues, and these side issues are an essential part of a system, just like a feather on a sparrow, although they don't have much theoretical content.

Since April of 199 1, Linus has spent almost all his time studying 386-minix system (black kernel) and trying to transplant GNU software (GNU gcc, bash, gdb, etc.). ) to this system. And on April 13, 2003, I posted the news that I had successfully transplanted bash to minix. I couldn't put it down without this shell software.

The first news related to Linux was published in comp.os.minix on July 3rd, 199 1 (Of course, the name of Linux didn't exist at this time, and Linus was thinking about FREAX, which means grotesque, monster, whimsical and so on in English. It is revealed that he is developing a Linux system. At the beginning of Linux, he had the idea of realizing compatibility with POSIX (the international standard of UNIX).

In Linus's next press release (August 25th, 0 19965438+comp.os.minix), he asked all minix users, "What do you want to see in minix?" "What do you want to see most on minix?" ), in which he revealed for the first time that he was developing a (free) 386(486) operating system, and said that it was just an interest, and the code would not be very large, nor would it be as professional as GNU. The idea of developing a free operating system has been brewing since April. I hope you can give us feedback on what functions you like and dislike in minix system. For practical and other reasons, the newly developed system is very similar to minix at first (and uses minix's file system). And bash (version bash( 1.08) and GCC (version gcc( 1.40) have been successfully transplanted to the new system, and will be practical in a few months.

Finally, Linus declared that the operating system he developed did not use a line of minix source code; Moreover, due to the task switching characteristics of 386, the operating system is not portable (no portability) and can only be used on the hard disk. Linus did not consider the portability of Linux at that time. But now Linux can run on almost any hardware architecture.

On June 5th, 199 1, Linus posted a message on comp.os.minix newsgroup, officially announcing the birth of 386-at Linux kernel resource. This news can be called the birth declaration of Linux, and it is widely circulated. So June 5th of 10 is a special day for the Linux community, and many later new versions of Linux chose this day. Therefore, it is no accident that RedHat chose this date to release its new system.

Linux operating system version is changed by 0.00 (199 1.2-4? ) The two processes display AAA BBB respectively.

The kernel of 0. 13 version of Linux system is directly renamed to 0.95 version, and Linus means that we should not feel far away from 1.0 version. At the same time, since version 0.95, many improvements to the kernel (providing patches) were mainly made by others, and Linus' main task began to become to maintain the kernel and decide whether to adopt patches.

The origin of Linux name

Linux operating system was not originally called Linux, but Linus named his operating system FREAX, which means grotesque, monster and whimsical in English. When the administrator Ali Lemcke uploaded the new operating system to the ftp.funet.fi server, he didn't like the name. He thinks that since Linus is an operating system, let's take its homophonic Linux as the directory of the operating system, so the name Linux has been handed down.

In Linus' autobiography Just for Fun, Linus explained: "Frankly speaking, I never thought of releasing this operating system under the name of Linux, because this name is a bit too conceited. What name shall I prepare for the final version? Relax. In fact, some early makefiles in kernel code describe how to compile source code files-including the name "Freax", which has existed for about half a year. But in fact, it doesn't matter. I didn't need a name, because I haven't released the kernel code to anyone yet. On the other hand, Ali Lemcke insisted on putting the kernel code on the ftp site in his own way and disliked the name Freax very much. He insisted on using his current name (Linux), and I admit that I didn't argue with him much at that time. But these are his names. So I can honestly say that I am not conceited, or partially frankly, I am not selfish. But I think, well, it's also a good name, and I can always convince others in the future, just like I am now. " -Linus Torvalds, Just for fun, pp. 84-88.

From the above description, we can summarize the five pillars of Linux as follows:

(1) UNIX operating system-UNIX was born in Bell Labs in 1969. Linux is a clone system of UNIX. The importance of UNIX goes without saying.

② MINIX operating system-Minix operating system is also a UNIX clone system, which was developed by Andrew S. Tanenbaum, a famous computer professor, in 1987. Because of the appearance of MINIX system and the provision of source code (which can only be used for free in universities), there is a whirlwind of learning UNIX system in universities all over the world. Linux was first developed in 199 1 reference Minix system.

(3) GNU plan-the development of Linux operating system. Most of the software used on Linux basically comes from GNU plan. Linux is just a kernel of the operating system. Without GNU software environment (such as bash shell), Linux will be unable to move forward.

④ POSIX standard-This standard has played an important role in promoting the normal development of Linux operating system. It is a beacon of Linux progress.

⑤ Internet-Without the selfless dedication of the Internet and countless computer hackers all over the world, Linux can only develop to the level of 0. 13(0.95) at most.