Original: corrected Chinese people's misunderstanding and misunderstanding of Linux

Source: Internet
Author: User

The incorrect impressions and understandings are listed as follows:

1. There are too few software in linux.

A: There are a lot of software in linux. When windows is still in the mother's stomach, Unix has become very popular. Do you know what is the first operating system developed by Microsoft? It is a thing called Xenix, a branch of Unix, and then DOS. Someone asked again, Unix is not Linux. You must know that Linux has completely implemented Unix again and is a complete Unix-like system, almost all Unix software needs to be transplanted to Linux without any effort, and even binary code can be copied (provided that the hardware platform is the same ). In addition, the Free Software under GNU is countless and can fully meet your needs.
If it is hard to say anything about Linux, the game software is insufficient. Many familiar games in windows cannot be played directly in linux. However, some software is available, which means that the software in windows runs directly in linux, such as wine. as far as I know, after wine is installed in Linux, it can run many games, including Warcraft and so on. It is not card-free and smooth. However, it is a pity that wine is not very mature and some software cannot run.
However, there are still a lot of game software in Linux, but many are not familiar with it, but they are very popular in Europe and America. Linux is quite popular in Europe and America.
In terms of game software, the software in Linux can completely replace windows. There are a lot of important software, even for the Linux version, not for the windows version (you know, in Hollywood, making movie special effects, windows is completely defeated in Linux ). Next we will list the replacement products of common software in linux.
Photoshop ---> Gimp
Office ------> OpenOffice, etc.
......
Only the replacement of autoCAD cannot be used, or I do not know.

2. Linux software is difficult to use
To be honest, many software is based on command line, and it is hard to get used to it because you need to remember a lot of commands and parameters. But when you get used to it, you will fall in love with him. The reason is as follows: although the GUI is easy to use, after the functions are complex to a certain extent, you will surely find that you have not been able to find any menu to hide a function for a long time. At this time, it is very convenient to call the command. In the aspect of drawing, the GUI is not accurate enough, for example, the command interface is designed in autoCAD. If there is a lot of work and there are some repeated operations, using GUI is no longer a pleasure, but a torment. At this time, you certainly need a program to automate these operations, that is, the so-called scripted. Scripting is a natural thing in the command line. You can do a lot of work with GUI, but it is not expressive enough to express complicated things. For example, in word, you must have such an experience and want to adjust some positions and spacing, however, word does not mean its own life and death, and it cannot express its own precise meaning with the mouse. It is only annoying. I am not talking about this, but I want to explain that the GUI is not omnipotent and its defects can be perfectly compensated by the command line.
Linux does not only have command lines, but also has rich guis. You can configure your desktop and play some fancy special effects, such as 3D, imitating Apple's dazzling app bar, you can do anything you want.
However, one thing to admit is that Unix is a system designed for programmers, so it is inevitable for common users to find it difficult to use. However, this point has been greatly compensated through the GUI.

3. The development environment in linux is unfriendly and there is no good integrated development environment.
Here, I just want to say that you must be a cainiao. You certainly don't know what happened after you compile the program in VS, what programs are called when you debug the program, and how your modules are connected, you only need to click the button. Integrated development environment, also called IDE, means to integrate the editor, compiler, debugger, file manager, and so on.
Insert a Unix knowledge here: Unix culture has the following points:
1. A program only does one thing and completes it well.
2. Programs collaborate to create a complex task.
Therefore, under the guidance of these ideas, Unix is quite opposed to IDE. Software like IDE hides many values behind windows:
1. Integrate functions into a software.
2. If the function needs to be improved, you need to wait for the software to upgrade to the next version.
The difference between the two is obvious. in windows, a function is often implemented once and again. For example, VS implements the editor, word implements the editor, and notepad also implements the editor. If each software requires an editor, if there is a special need, You need to implement it yourself. In Unix, the editor is separated. If almost all the software is designed for editing, a sub-process will call a special editor program. If you are used to vi, you can always choose to use vi for editing.

Of course, there is also an IDE in Linux, and Emacs can basically be. Some people joke that Emacs is an operating system disguised as an editor. You can search for the number of people using Emacs and the number of people using this item.

The editor uses vi or Emacs, the compiler uses gcc, And the debugger uses gdb (which can be used together with vi and Emacs) to compile the entire software using make and write makefile by yourself, or use a tool to automatically generate makefile. These habits make it easy to find out. In addition, programming in Linux often uses some code generators, such as lex and yacc, which are basic standardized tools that are not very useful in IDE (WINDOWS ), it is common to write in makefile.
Users who are used to it in Windows will surely have a deep memory for constantly updating the software and think that the world is like this. In UNIX, because they are all separate programs, if you are not satisfied with the editor, you will have to change the editor instead of upgrading it.
Things in windows have no core value, and many technologies will depreciate or even disappear over time.
Things in UNIX have core values, and the technology is barely devalued. For example, the VI editor has been around for about 80 years. As of today, basic operations have rarely changed and remain popular, your skills will not be ineffective.
For example, Perl, Lex, YACC, etc. There are too many programs that have been used for decades.
In Windows, similar to MFC, no one is using it now, and VB is almost changed to another language. net, I was still using the development project last year. NET 2.0, which is now available. net 4.0, and I always feel like I keep chasing after Microsoft. New things have not been learned yet and may be eliminated. What M language is Microsoft engaged in? My Tianna, the technology depreciation speed is too fast.
In Linux, I can happily learn the software I had decades ago, without worrying about going out of date. It doesn't mean that there will be no software out of date in Linux, But you will know what will not be out of date and what may be out of date. It cannot be done in windows.

4. Differences between windows and Unix/Linux
After a long time in an operating system, the corresponding culture will surely be created. The Windows culture, also known as common sense, has the following features: the software is huge, the software is getting fatter, the system needs to be reinstalled every few months, the software is frequently upgraded, and the virus is eliminated; chaotic registry; new installed systems can't do anything, search for cracked software all over the world, search for registration code all over the world, installed software may also be poisoned ......
In Unix/Linux, these cultures almost do not exist. A new operating system cannot be damaged unless it is damaged by itself. The premise is that you do not need to log on to the desktop as a root user to develop the habit of using sudo. There is almost no virus. I used it for a year and never encountered a virus. The software is large and complete, and generally the size is small. It is not the kind of large-scale software package that does everything, but the collaboration of many specialized small programs. When necessary, it is easy to write a small software to collaborate with the original software set. In extreme cases, only 10 lines of C code can be done. The configuration file is put under/etc, which is neat and orderly. Some readers may want to know more details. Here I will talk a little about it:
In Linux, every device (except the NIC) is a file, which is basically stored in/dev. You can use basic copy commands to operate these files. Therefore, a virtual optical drive is not required for Linux. For an iso file, you only need to put it on the loopback device, and then mount it to the main file system:
# Losetup xx. iso/dev/loop0
# Mount/dev/loop0/mnt/cdrom
Or simply, use the mount command:
# Mount-o loop-t iso9660 xx. iso/mnt/cdrom
These commands must be basic commands for each Linux release.
Backup hard disk MBR: there is no special software in windows, but it cannot be done, but in Linux:
# Dd if =/dev/sda of =/home/MBR. backup bs = 512 count = 1
Done. The dd command is a basic Linux Command.
Creating a memory disk is to virtualize a hard disk partition in the memory. Specialized software is required in windows, and basic things can be easily done in linux:
For a small partition, use the/dev/ram0-15 system to bring up 16 memory device files, as long as you format these device files and mount them to the file system:
$ Sudo mkfs. ext2/dev/ram0
$ Sudo mount-t ext2/dev/ram0/mnt/my_directory
Sudo means that the super administrator privilege is used to execute this command. In this way, the size of the mounted partitions is usually only 64 MB. For a large partition, you can use the tmpfs File System:
$ Sudo mount-t tmpfs arbitrary name/mnt/my_directory
Done. By default, this partition occupies half of the memory.
Now you see it! What is device as a file? You can use the command to operate a common file to operate a device file! No additional software is required. I don't know if this is convenient?
Count the Word Frequency of an English article: Do you need special programming or software in windows? In linux, see:
Tr 'a-z'' A-Z' | tr-cs 'a-z''/012 '| grep-V' ^/s * $' | sort | uniq- c | sort-n
The result is displayed. Explanation: | indicates the pipeline, which means that the output of the previous program is used as the input of the next program to form a series of filters. The first tr command converts all uppercase letters to lowercase letters. The second tr command converts letters not a-Z to line breaks, and the next grep filters out empty lines, then, sort the repeated words in sort order. uniq puts the number of repeated words in front of the word, and finally uses sort to sort the number of words. How is it? Pretty. All the commands used here are basic commands in Linux.
Furthermore, if you write a sort program and want to test the performance, you can do this:
SEQ 10000 | Shuf | time sort
The seq command generates a sequence of numbers, ranging from 1 to 10000. The result is transmitted to the Shuf command through a pipeline. the Shuf command is used to randomly disrupt the order of input rows and then send them to sort. Put time in front of sort is the time to test Sort execution.
In Linux, it is common to combine various small programs to complete a task. Now you can understand why many Linux programs are not outdated? Programming will make you very interesting, because writing a program requires only one thing, and other programs can work together. Many programs do not need to write much, that is, to generate some text and filter some text. It is simple and everything is done.
I'm afraid I don't want to think about this in windows. I heard that Windows 7 now has a power shell, which means to surpass the powerful functions of Unix/Linux Shell!

 

Postscript: For more information, search for Wu Yin's famous article "Work with Linux" on the Internet.

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.