Things that Windows can do but Linux cannot do are things that do not need to be done
Work completely with GNU/Linux
Understand GNU/Linux
"UNIX is simple, and you don't need to be a genius to understand this simplicity."
Since the word GNU/Linux is too long, unless otherwise specified, "Linux" will refer to "GNU/Linux".
In this day and age, I’m afraid no one needs me to introduce what Linux is, right? If you think "Linux is just like DOS", then you probably haven't seen the light of day in a cave for a long time, right? Please ask the Linux user next to you, what is the status of Linux?
Then why do I still write an article like this? Because, I found that there are still many people who don't understand Linux and UNIX. Although they also use it, they sometimes ask: "Why can't Linux be like Windows...?", "Why can't Redhat Linux mount NTFS partitions!" , "How to organize the hard drive under Linux?", "When will OpenOffice be fully compatible with Word files?", "Is there anything that Windows can do that Linux can't do now?"...
They have The 40G hard disk only allocates 2G space for Linux. Sometimes I complain, "Why does this thing take up so much hard disk!" It seems that Windows should take up most of the hard disk. They install important data in Windows partitions and seem to be distrustful of Linux. They are always looking for novel and good-looking GUI programs everywhere, and they don't care about command line things. They are very interested in Drag&Drop, menu configuration, and automatic upgrade. If they find a Linux program that is very similar to a Windows program, they will be happy to say: "Haha! Linux can also...!" If Linux beats Windows in some kind of test, they will jump with joy. When they couldn't solve the problem with Linux, they even used Wine to run Windows programs. Sometimes there is really no choice but to restart Windows, or simply save yourself the trouble and install a VMWare virtual machine under Windows to play with Linux.
You support Linux, you like Linux, and you can feel happy from it, which is very good. All you need to understand now is: Linux has never been a toy, it is the descendant of the genius UNIX. UNIX is the greatest invention since the transistor and was better designed than Windows from the day it was created. Linux does not need to catch up with Windows or defeat Microsoft. Its ultimate goal is to change the entire computer world, give people freedom, and give them fun and convenience. Many other UNIX have been defeated by Linux, not to mention Windows!
If the above situation occurs to you, it means that your thinking has been subtly influenced and misled by Windows. You fail to intrinsically understand the UNIX ideas that exist in Linux. Dennis Ritchie, the designer of UNIX, said: "Unix is ??simple. It just takes a genius to understand its simplicity." But I don't think so, because I am not a genius, but I bravely deleted Windows completely. Six months later, I Realized the ideas and benefits of UNIX. Because I believe in this belief: "What Windows can do, Linux can certainly do, and do better."
The words at the beginning of this section should be changed to: "Unix is ??simple, but in In this world that is riddled with misconceptions about Windows, you need faith and courage to understand its simplicity!" I will tell you some of what I understand below.
Microsoft's status
You may have heard that Microsoft has a bad reputation in universities in Europe and the United States, especially in computer science departments. The professors I know at MIT, Stanford, experts at Bell Labs, and even a high school computer teacher in a small European country never mention Microsoft's name. In their eyes, Microsoft is just a small company that has no real technology and relies exclusively on commercial propaganda and monopoly operations in backward countries. This "small" does not mean that it has few people or money, but that it has few advanced technologies.
Last time I collaborated with Wang Yi to write an algorithm demonstration program. The algorithm was a genius invention of Steven Fortune, a scientist at Bell Labs. In order for the program to be used by most people around us, we chose VC+MFC as a platform.
When I was analyzing the algorithm, I received enthusiastic encouragement from Fortune, who sent me a copy of the information and wrote back many times to patiently explain many details to me. But after the program was completed, I sent the sample to Fortune, and he wrote back: "Sorry. I don't have MFC on my machine." It was very polite, but I could already feel his disdain for Windows. Then I statically compiled MFC into the program and sent it to him, but he didn't reply again. It was obvious that he didn't look down on me, but that he really had a problem.
Can you feel this scientist’s attitude towards Microsoft and Windows? It's not that he's disgusted, but that he doesn't even have Windows in his heart! Microsoft is not developing in the high-tech field, so how can it survive? If I go to a developing country to develop my career, their people still know nothing about computers. I might even be able to get into the computer science department of a university. I give them software, I donate money to build buildings, and I find Turing Award winners to give lectures!
Okay, now in universities across the country, including Tsinghua University, almost all computers must have pirated versions of Win2000 and Office 863 projects all use VC to write programs. I saw a newspaper a long time ago that said, "Why doesn't Microsoft crack down on piracy?" This article said that Microsoft not only failed to crack down on piracy in China, but also had a tendency to let it go. Playing the long game, "I want you to pay me back twice as much in the future!" Indeed, its purpose is about to be achieved.
China’s computer education under Windows
To put it shamefully, Bill Gates was my idol a long time ago... //blush
In China, Bill Gates is regarded as a god by many people, a "young computer genius", and some people even make a gesture of "holding their fists to the sky" when his name is mentioned. Many people talk about Microsoft's "new technology" and "high technology" with great excitement. Various "VC Programming Bibles", "In-depth Understanding of Visual C++" and other books will have very disgusting words in the first few pages, "In the chaos, a pioneering spirit, Windows 1.0, was born... ”
Microsoft’s software has been stolen by so many people, so how do people use these pirated programs? Let’s take a look at computer training classes first. They teach some DOS commands, typing, basic Windows operations, Word document processing, PowerPoint, and advanced classes may include Excel, Access... There is an endless stream of people taking various Microsoft certification exams, MCSE, MSDE. Absolutely, exam tutoring classes have posted signs such as "280 yuan. Until you pass the exam." Exam reference materials are even more expensive. In some computer bookstores, two entire bookshelves are filled with "Microsoft Press" items. One of my classmates took the certification exam. Each exam costs more than 200 yuan, and if you fail the exam once, you have to pay again. He later happily told me, "Look, I spent XXXX (a four-digit number) to pass the Microsoft certification exam, and got a certificate signed by Bill Gates and an internal distribution version of Windows XP worth 6,000 yuan."
“Computers must start with babies.” Let’s take a look at what the babies learn. When most parents buy computers for their children, they first install a pirated copy of Windows, and then buy pirated games and start playing them. If any kid can program in Delphi, that's a big deal. Newspaper reporters and TV stations rushed to report that a certain junior high school student from a certain school was already writing programs in Delphi when others were still playing computer games in the "primary stage". The camera also focused on the portrait of Bill Gates in the frame above his monitor!
When I first entered the computer department of the university, I didn’t know what an operating system was because I had only used the “China Learning Machine” before. I saw all the new students talking about "Windows 95", "VC"... I felt like I was decades behind, and the natives couldn't even talk to them. Finally, I found a familiar classmate and asked: "What is win95 that you talk about every day?" The answer: "win95 is an operating system, the same as DOS." "What is win95?" "You even You don’t even know what DOS is? Don’t study in the computer department.” Of course, the school doesn’t teach anything like VC programming, but the teacher who taught Pascal once said, “Hey, everyone in our school is really backward.” , C++, and even VC, we are still teaching Pascal. I don’t know when we will have VC classes. You have to use VC when you go out, so you have to study on your own. "Some students often hold a very heavy book in class." "Windows Programming Encyclopedia" and other books, I didn't listen to the lectures at all. During the meal, they muttered to me, "The optimization of the code is endless", "The Hungarian nomenclature is really a great invention"... This is the computer department of many universities in China. situation.
Feeling ignorant? This is not an accident, but Microsoft's long-term wishful thinking.
It wants everyone who is ignorant to regard it as sacred, and it wants people who support UNIX and Xwindow to say that UNIX is good and Xwindow is good, they will be surrounded by a group of people and preach: "This Windows can also do it", " "You are biased against Windows", "Microsoft is the mainstream", "Do you dare to look down on win2k?", ".NET is the world trend", "Microsoft's is a new technology after all", "Having money means having technology"... even After a debate and comparison, I still have to say: "Windows performance is poor, but it is easy to use", "Windows is used by ordinary people, so the requirements should not be so high", "Microsoft is so rich, it will not be easy to surpass UNIX in the future. "...
Computer education in developed countries
I met a Danish person when I posted a question about Scheme language on USENET some time ago. He solved all my problems and suggested that I read some very "esoteric" books about programming language syntax and grammar. He told me that there are many websites where I can learn LISP, Scheme, artificial intelligence, and algorithms. He asked me to read Jonathan Rees’s paper. He also packaged and sent me a copy of MIT's "How to Design Programs". He said that he installed Linux on his PC, and he used Emacs to edit and run Scheme programs. His knowledge and love of Emacs is truly amazing. The graduation project he did when he graduated from university was a Scheme interpreter. This is beyond reach for me.
He was so patient and answered every question I had in detail. Sometimes I think it's too detailed. Why are you so patient? I feel like he is my high school teacher. What kind of person is he? I curiously inquired about his situation. It turns out that she is a computer teacher at an ordinary high school in Denmark! Notice I changed the personal pronouns!
She said that she teaches programming and algorithms, and computer language grammatical analysis in high schools. She said that with Scheme, her students no longer have to worry about pointer out-of-bounds, memory leaks and other problems in the programming language itself, but focus on the problem and algorithm itself. It is conducive to cultivating students' problem-solving abilities, especially the ability to use computers to solve mathematical problems.
Oh my God! Why are there so many mathematicians and geometers in Europe? Look what others value! If our computer education continues like this, it will only go further and further along a detour!
The wishful thinking of Microsoft and its friends
Let’s take a look at how Microsoft’s revenue comes from. First of all, the Windows 98 series operating systems cost more than 100 US dollars each, and each upgrade costs almost the same price. Windows NT is several times more expensive, and there is a limit on the number of users, 5 users, 10 users... If you want to increase the number of users in the future, you will have to pay proportionally. This strange phenomenon was likened by the president of General Motors: "The Microsoft car you buy only has one seat at the beginning. You have to pay the car company for each additional seat. It needs to be overhauled every 100 miles. Every year. I need to change the engine."
Can the operating system purchased for so much money be used? It doesn't even provide a compression program! The first thing you usually do after installing Windows is to download WinZip, "only $29." Windows is infected with viruses, so spend $70 on Norton AntiVirus right now. And what about hackers? Just buy another Norton Internet Security, $100. The system needs to be optimized and the disk needs to be deflated. Buying Norton System Works is your best solution for $100.
But you still can’t do business now! Do you want a Word, PowerPoint? Then buy a set of Office XP, it’s cheaper to buy them together, ?$459.90.
Those programs don’t work! How to set up those menus and what functions do they have? You can't learn it by looking at "Help". Buy this book and read it. I recommend "Special Edition Using Microsoft Office XP", it's not expensive, ?$27.99. Most of this book contains screen captures, so it’s more cost-effective to buy a used copy, ?$17.85.
If you are just a secretary, the above is almost enough. But you have a higher pursuit, you want to become a Windows programmer. First buy a Visual Studio.NET, otherwise how to compile the program. ?$494.95.
In order to keep up with Microsoft trends and world trends, you have to register for MSDN or something, right? This one is a little more expensive, but it’s worth every penny, ?$2,799.
Well, you are now an upper class, white-collar person.
You can now live a "free" and "safe" life like this:
What is something that Windows can do but Linux cannot?
“Things that Windows can do but Linux can’t do are things that don’t need to be done.”
A friend sees that I haven’t used Windows for half a year, and sometimes he asks me: “ If you only use Linux, have you ever found that there are things that Windows can do that Linux can’t do? ”
I replied: “Things that Windows can do but Linux can’t do are things that don’t need to be done.”< /p>
Linux can do all the useful things that Windows can do
Some functions under Windows are indeed what we need, so Linux developers and users also need such functions. They will implement this function, and it is much better than the Windows way. Since most scientists and engineers use Linux or some kind of commercial UNIX, almost all commercial scientific engineering programs, such as Matlab, Mathematica, AutoCAD, Candence, Synopsys, Avant!... are all based on UNIX. version (including Linux), and then consider porting to Windows, or even not porting to Windows at all, because Windows machines generally do not have enough capabilities to run such programs. Don't think that Windows only has VPN. UNIX's VPN is much better and can run on large hosts. Of course they are not free, but they are worth the price.
But there are some things under Windows that are not very similar under Linux, or you can find many similar ones, but each of them is much worse than the Windows program. There are two possibilities:
There is an exactly similar program, but you have overlooked it because it doesn't look pretty at first glance.
Although other programs look beautiful, they are written by people who are new to programming. Nowadays, due to the birth of Gtk+ and Qt, it is extremely simple to develop graphical interface programs under Linux. Many junior high school students and even elementary school students can easily compile some beautiful but useless programs. If you look for such programs all day long, you will never find one that satisfies you.
I have made this mistake before, and I have ignored the excellent FVWM, lftp, Mutt, and wget! I was so ashamed when I got them back, they are all my friends now Smile With these programs you can change everything about them, the first time I saw FVWM I thought it was just a thick, thick Ugly border stuff. But now, my classmates see FVWM and say: "Wow! It's so beautiful."
There is a completely different way to achieve the same goal, even better.
Many people are very concerned about Open Office, Star Office, AbiWord, ... How they look forward to the day when a certain Linux program can open a complex doc document with full compatibility. But you will never have that day. Why? Because in order to occupy the market, Microsoft will not allow other system programs to be fully compatible with its document format! It will definitely keep changing the internal structure of the doc document, hiding some secrets, so that other companies' programs will always have some kind of problem when opening the doc document, so you have to buy Microsoft Office and Windows.
You should think about it, so many highly intelligent university professors, scientists, and students use Linux or other types of UNIX. They don’t have Word available, so how do they process documents? There hasn't been a program like Open Office for so many years. Isn't there a way for everyone to write documents?
Obviously not. Look at those high-level academic magazines, papers, those university professors’ web pages, and those beautiful PDF slides. What are they made of? It turns out that UNIX users have already had very convenient troff, LaTeX, SGML and other tools to process documents, and they are much more sophisticated than Word. Word has obviously been ignored by these big players, so much so that no one has wanted to develop a Word-like program under Linux for a long time, unless some companies want to steal Microsoft's jobs.
The reason many people keep Windows on their hard drive is simply to use Word and PowerPoint.
You can take a look at my TeX page later, and you will know why I can leave Windows completely.
Linux can never do the useless things that Windows can do
Computer Games
Some people say that Linux cannot play all the games available under Windows. Indeed, there are a few games under Linux, such as Quake. But it doesn't have Counter Strike, it doesn't have Star Craft,...
It doesn't mean that computer games shouldn't be played, but it should be done in moderation. The computer is a tool used to handle affairs, help you learn, and solve problems, not a toy! If you are addicted to computer games all day long without going out to experience the outside world, you will become more and more cold and impersonal. You are getting further and further away from the real world.
You can kill people in CS, you can explore in Tomb Raider, you can even skateboard in Tony Hawk's Pro Skaters... But It's not real! Although you have high "anti-terrorism skills", you are so cowardly when encountering gangsters; although you control Laura's quick reach, why do you always get the ball stolen when you play basketball? Although you can easily make a "360 kickflip to hangten grind to fakie" in THPS, you still can't ollie when stepping on your own skateboard!
Having said that, it’s not bad if you play computer games occasionally. But there are far better ways to play than Windows + PC. Sony's PlayStation2, SEGA's DreamCast, Nintendo's N64, Namco's arcade... each one is more exciting than Windows games, and each one has such high 3D performance that even Pentium4, Itanium + GeForce4 cannot compare with them!
Linux users are all concerned about solving key problems in the world. Where do they have time to play games on their own machines? They use Linux to finish their work efficiently every day and then go out to enjoy nature in the sun. To play games, you can also play some intellectual games such as pushing boxes and snakes. So, you know why there are almost no games for Linux anymore, right? Smile
"Declutter the hard drive and optimize the system"
This is a very interesting topic, second only to the topic about "viruses". I believe many Windows users have the experience of defragmenting their hard drives. In the eyes of many Windows users, "the hard drive will become fragmented after being used for a long time, and the speed will slow down. It needs a program to sort it out. Do not do other work while sorting the hard drive." This seems to be a matter of course.
I also watched with relish as Norton Defrag sorted and adjusted my hard drive bit by bit, displayed it graphically, and then reported: "100% fragment-free. Your hard drive is now fragmented." At its best.” I realize now how naive I was.
Linux and UNIX users never seem to have the idea of ??"organizing the hard drive"? Do you think it's strange? If you find it strange, it means that your mind is imprisoned by Microsoft's junk program to some extent. You need to understand that many UNIX mainframes must run 24 hours a day, 365 and 1/4 days a year. If the hard disk has to be sorted every week, you can hardly do anything during the sorting. That is Absolutely not going to work!
Linux machines do not need to defragment the hard disk at all, which is why I have never seen Linux users defragmenting the hard disk. The Linux file system is much more advanced than Windows' FAT, FAT32, and NTFS. Not only can they set permissions on files and implement complete protection, but they can also "become neater with more use" and "less fragmented with more use"! You should put most of your files on a Linux partition rather than a Windows partition because it is much more reliable than a Windows partition.
An even more ridiculous thing is that there are many programs such as "Norton System Doctor", "Windows Optimization Master", and "Super Bunny Registry Magic", and they are expensive. It seems that an operating system is supposed to have a lot of problems, requiring other manufacturers to make programs to "optimize" it, and in order to get optimization, you need to pay! Linux does not have these problems at all, so no optimization is needed. The Linux kernel itself is highly optimized.
IDE
Some people are complaining about why Linux does not have a good IDE development environment. There are already some IDEs for Linux now, but there are always a lot of problems.
Are you looking for and hoping that Linux will one day have a development environment like VC? Have you ever found that you are entering the vicious circle that Microsoft has set for you? Why do you have to use an IDE? You said: "IDE is fast to develop, easy to debug, and suitable for large programs..." That means Microsoft's programs are more ingrained in your mind. You need to wake up and let me tell you.
Skilled UNIX programmers don't use IDEs. IDEs have always been used by junior Windows programmers.
Look at the large UNIX programs, including the Linux kernel, various network service programs, and Xwindow programs. Which one is created by an IDE? None of the EDA programs in our laboratory were written by IDEs. I also know that the high-performance graphical interface EDA programs of Candence, Synopsys, and Mentor were not written by IDEs. Believe it or not, people at Microsoft didn’t use an IDE at all when writing Windows itself!
Once a magazine interviewed some famous Linux kernel programmers, including Linus, no one used IDE, some used VIM, some used Emacs, only Linus said "GNU Emacs is evil" ”, but in fact he is using MicroEmacs, which has the same key binding function as Emacs. Everyone uses an editor to edit the program file, and then uses an automatic tool like make to call the gcc compiler to complete the compilation work.
I have programmed Windows programs before: applications, drivers. But I don't use VC's IDE. Linux taught me that I can call CL on the command line, and I know that CL is the VC compiler. I can use CL in cygwin Makefile. I also know what the parameters of CL are used for. But these are not things that someone who has used an IDE from the beginning can quickly understand.
I believe: IDE is evil. I have friends who write programs using Windows IDEs, and they are already very proficient in that stuff. But I was surprised to find that they didn't even understand the concepts of compiler and assembler, and some even confused "editor" and "compiler"! They only know that they enter code in a window and click a button to compile the program, but they don't know how it works! Their view is blocked by the window covering it, and they may even think that the button is the compiler!
They are very familiar with those IDE hotkeys, but I saw them turning other people's ANSI style code into VC style function by function. Think about how easy this is in VIM, it can be done in a flash.
Why don’t UNIX programmers use IDEs? Once you understand this truth, you will be able to appreciate the design thinking of UNIX. First of all, an IDE integrates editor, compiler, assembler, debugger, tracker... The editor function is definitely not as good as VIM or Emacs, the compiler is not as good as GCC, the assembler is not as good as as, and the debugger It is not as good as gdb, ddd, and the tracker is not as good as strace, ltrace, and truss. What you get is a well put together moronic program. If you are not satisfied with the functions of the debugger, you have to switch to another IDE, but the hotkeys, menus, editor functions, buttons of this IDE are very different from the original one. You have to spend a lot of time getting familiar with the new environment without being able to keep some of the original things.
It is different under UNIX. You can use your favorite VIM editing program. You can call GNU make in VIM, and make can call gcc, ld,... In fact, make can help you a lot. The error information of make can be captured by VIM, and VIM can help you locate it in the source program. If you like icc, you can tell make to use icc instead of gcc. If you find it troublesome for gdb to track variables, you can use ddd to display the relationship between various data structures. You can also call gdb in Emacs, which will display the source code simultaneously. Moreover, VIM and Emacs can also edit many other things, such as letters, LaTeX documents, HTML, configuration files... You don't need to find another editor to do these chores. Many programs such as Mutt and tin can use VIM internally, which is more convenient.
Release memory
One of the stupidest things I have ever done under Windows is to "release memory".
One day I saw a Windows program that said: "This program can help you release a large amount of memory for a large program." I tried it, and it released 48M of my 64M memory at once! I couldn't be happier. Now think about it, what a stupid thing that is, what is so much memory reserved for? It’s useless if you don’t use it! An operating system actually needs a program written by others to release memory. What kind of operating system is that?
Using the free command under Linux, you will find that your memory is almost used up almost all the time. That's because Linux uses most of its memory as disk buffer. Linux has more advanced disk buffering technology than Windows. Have you ever found that when you write data to the hard disk, it is completed quickly? That's because Linux has a lot of disk buffers in memory. The data you want to write to the hard disk is first written to these memories, and then Linux tells you "copy completed". When you immediately want to delete something you just wrote, When removing some data, Linux simply removes the data from memory and reports "Deletion Complete." After a certain interval, Linux writes the data back to the hard disk. This is not only efficient and avoids multiple hard disk operations, but also reduces file discontinuity, which means it reduces "fragmentation". Of course, Windows also has disk buffering, but due to the inefficiency of its memory management, it does not dare to use a large amount of memory as disk buffering because it does not have the ability to take back the memory at any time when it is used.
Linux can do advanced things that Windows cannot do
Of course, there are many things that are patented by Linux/UNIX. Because Windows can only be installed on PCs, it seems that there was an Alpha that could use Windows NT before, but I just didn’t see anyone using it. The capabilities of PCs are very low. For those of us who program to deal with NP-Hard problems, Windows machines are obviously not fast enough, and sometimes a problem can last for days or even weeks. Windows machines are famous for "crash" Yes, how can we rest assured?
So almost all scientific computing programs, EDA programs, and high-performance image processing programs are not Windows. They sometimes port some to Windows, but often reduce the capabilities of those programs. Have you compared the Windows version of Mathematica to the Linux version?
The largest parallel computer made by IBM has more than 8,000 processors. Windows cannot possibly have the ability to manage so many processors. What operating system does it use? The answer is Linux.
The three-dimensional animation in the "Titanic" movie is so delicate and lifelike, can a Windows machine do it? no. That's what Linux machines do, too.
Windows is certainly powerless with the virtual reality training equipment used by the Civil Aviation Administration of China to train ground situation personnel. Those were commercial IRIX machines.
UNIX was the first system to support the TCP/IP network protocol. It has many network service programs that can cooperate with each other. After years of use and revision, they have reached a relatively complete level. As recently as 1997, Microsoft's Bill Gates was still threatening: "The Internet has no future." Everyone should have seen this "foresight" of Microsoft. The network service program IIS it later added had so many vulnerabilities that it made The Ministry of Public Security has frequently issued warnings, and everyone has seen this.
In fact, you know that there is nothing useful that Windows can do better than UNIX.
Windows can’t do useful things that Linux can’t do
Of course, Linux is not omnipotent. There are things it can't do, and there are things computers can't do. But what Linux can’t do, Windows certainly can’t do. These are the things we need to explore and work hard on. Linux must be your best friend during your exploration.
What is the true meaning of UNIX?
Let smart people do whatever they want.
One of the characteristics of UNIX is its very high flexibility, and Xwindow also has this flexibility. Where does this flexibility lie?
UNIX programs generally have many parameters. No matter what you are using now or not, there are always people who need certain parameters. Many of their behaviors can be changed using configuration files.
For example, in GNU bash, the default command line input method is usually the Emacs method, but as long as I edit an .inputrc file, I can change it into the vi input method, and I can also bind it myself