System software research is the issue
Robert Pike
Bell Laboratory
Lucent Technology
Rob@plan9.bell-labs.com
February 21, 2000
Alarm
This topic is an argument that reflects my pessimistic idea in modern system software research. I no longer say more optimistic, since others can tell me; everyone is excited about the computer industry. I may therefore show a picture that is more faint to some extent.
Anyway, I think the situation is really bad and needs to be active.
topic
System software research has become an exciting edge of the computer industry.
When did you see exciting non-commercial DEMO?
What is ridiculous is that when computer technology is almost innovative definitions, in college about software and hardware research and most industries or isolated, rigid and orthographic.
There are many reasons, some can be avoided, some are deep roots.
There may be methods to improve the current situation, but the efforts of the whole society are needed.
Explain
system
software
the study
Yes
Proprietary
Decreased field
SOSP new operating system
"In short, who needs a new operating system?" You asked. No one may, then it supports my point of view.
"But now there are many papers regarding file system, platform, security, web super cache." You said. Yes, but people who are not in the research are concerned about?
System research contribution to prosperity
A high-end workstation:
Hardware has already happened dramatic changes, while software is stagnant.
Where is innovation?
Microsoft is very likely. Then you will compare Microsoft's 1990 software and 2000 software.
If you think that is not innovation, but a simple copy, I will tell you that Java is like Windows for Machintosh: a response to a system software industry for an interesting rather than the technical defect.
If the system research is correct, we should see that the new operating system and new language have an impact on the industry, just as we do in the seventy and 1980s.
In contrast, we see a prosperous software industry, which greatly hinders research; and research groups prefer to discuss the writings rather than development software.
Linux
Innovation? new? No, it is just another copy of the old things.
Old material. Compare Linux program development and Microsoft's Visual Stdio or IBM one of the Java / Web Development Kit.
Linux's success is perhaps the only most convincing argument in my topic: People who have a decades of blanks in the operating system for decades cannot make up for blank.
In addition, Linux's excessive people are not in the software itself in development model, no matter how comparative, it is difficult to say a victory of computer science theories (especially software engineering).
What is a modern system study?
Web super cache, web server, file system, network packet delayed things. Platform, peripherals, applications, not the kernel or even user-level applications.
Even so, there is still a lot of evaluation; it is generally misunderstood and misuse of scientific methods.
Just too many phenomenological: inventive creation has been observed. Now we see papers compared to Linux and Windows interrupted papers, they may be very interesting, even useful, but they are not research.
Those misleading want people to think that it is scientific, there are too many evaluations: a chart of messy scribe and difference.
By comparing, you can know that a new computer language or operating system allows your computer to feel different, you can give it fresh and energetic.
But today, these should make computer implementation, but not implemented by a very COOL website or a higher CPU clock frequency or a flexible small device. That kind of art disappeared.
But the art is not scientific after all, it is just some of them. System research cannot be scientific; there must be engineering, design and art.
What happened?
Many things:
personal computer
Microsoft
The internet
standard
Tradition
Digital calculation changes
Unix
Linux
Operation
grandmother
personal computer
Hardware becomes cheap. Cheap hardware becomes easy to use. Finally, if it cannot be used in a personal computer, it is nothing to do, because moderate, ordinary computers are personal computers.
Even in the 1980s, many system work was carried out around the new structure (RISC, IAPX / 432, LISP machine). It is no longer now. Source of most interesting issues and possible interesting solutions disappear.
Many system work around the structure of disturbing things: also portability. But when the hardware is still so, it has no progress.
Plan9 may be the best operating system in the world. We will only make a new version for the PC. (Taking into account the old age, we will contain the source code for other structures, but hope that no one can use it)
That is like a personal computer as hardware; as a software, it is also the same problem.
Microsoft
It is already enough to say about this topic. (Although people will say more)
Microsoft is a simple goal, but it is a crimist, not a real difficult root.
Here are details.
The internet
The network was produced in the 1990s, which made computer scientists were surprised, just like it became a business.
Then it occupies most of the discussion, but there is no effect. Commercial controlled it. (The network is from the physicist, developing into an industry.)
IBM's Bruce Lindsay said: HDLC is approximately equal to HTTP / HTML, and 3270 software is replaced by the web browser (more VisicalC and PC).
Despite many papers regarding super cache, proxy, server structure, the contribution to research is not large.
standard
As a feasible computer system, you must follow a huge and frequently changed standard list:
TCP / IP, HTTP, HTML, XML, CORBA, Unicode, POSIX, NFS, SMB, MIME, POP, IMAP, X ...
Great amounts of work, but if you don't follow these standards, you will be excluded.
It is estimated that the PLAN9 has 90% to 95% of the work to follow the criteria for external strength directly or indirectly.
From another level, instruction structures, bus, etc. have the same influence.
With so many external structures, there is not much new creation.
In addition, "owned" standard commercial companies like Microsoft, intentional standards are still difficult to follow, to defeat competitors. The academic community is a victim.
Tradition
PhD from today's graduation uses UNIX, X, Emacs, and TEX. That is their world, it is usually the only calculation method they have used to study technology.
Twenty years ago, even a student, there will be a variety of operating systems, which are all advantages and disadvantages.
Now our new employees in our laboratory have brought their consistent style, or I hope it can be there when they arrive. That is reasonable, but once, enter a new laboratory is an opportunity to explore new ways.
The narrowness of experience led to the narrowness of the imagination.
The situation in the computer language is not so good - many courses, including revealing functional language, etc. - but also has a language of traditional --c and Java.
In science, we left the highest honor to those who prove we are wrong. But in computer science ... digital calculation changes
Under so many external constraints, and many things have been done, this interesting job is largely needed to work greatly.
Write a modern, realistic system requires many manpower and time. That is the range of each department in most universities.
Moreover, the time span is very long: from the design to the final version of 5 years. That is also the scope of most alumni.
This means that the industry tends to be large, defined engineering - operating systems, underlying structures, etc., small studies must find a small thing.
Three possible results:
No development, comment. (Phenomenology, not new things)
2. Do not pursue breadth and pursue depth. (Microtelation, not system-level work.)
3. Pick up a presence, distort it.
I believe this is the main interpretation of the SOSP curve.
Unix
The current new operating system tends to be re-implemented by UNIX. If they have an unusual structure - some is indeed - that is the first step to build a UINX analog layer.
If the generated operating system is difficult to distinguish, how is the operating system study to cut the topic?
In the late 1970s, there is an advocate that UNIX has killed the operating system research, because no one will try other things. At that time, I didn't believe it. Now, I barely accept the point of view that thinks it may be correct (although it is Microsoft).
It is a disadvantage that it is successful: the portability can lead to flood. That means that the structure is not important, so there is only this one now.
Linux is a hot new thing ... but it is just another UNIX.
Linux - Microsoft Windows in the University
Holy Trinity: Linux, GCC and Netscape.
Of course, it is just another tradition.
These have become idols, not because they are, but because they are not what: Microsoft.
But technology they are not hot. Microsoft has worked hard, and I advocate that from many (not all) perspections, Microsoft's binding products are technically better, they are still improving.
Linux may fall into the trap of Macintosh: it is degraded (close) degradation (close).
Also, systematic research is very small for improving these three integration.
Operation
Operation is the most important competition, for the academic, ideological, foundation, funds, personnel departments (other is Microsoft, big companies, many free hackers, IETF agencies).
In response, the special cooperation study of government funded is taken to quickly "get profitable."
This song is prioritized:
Studies have made more money in a year. (First public offer)
For long-term working gaze too short. (This involves the problem of the structure and measures.)
The fund source (government, industry) feels the same pressure, so it produces a vicious circle.
Value metric is wrong.
Stanford University now encourages students to work, because successful CEOs can donate to schools. The new chairman of Stanford University is a successful computer entrepreneur.
grandmother
Grandma is being online. This means that the industry is designing systems and services for ordinary people.
The focus is placed on the application and device, not on the underlying and structure, which occupies the dominance of system research.
The reason is a huge marketization, and the result is a proliferation of incompatible equipment. You can't make money on the software, you can only on the hardware, so design a scam put in an appropriate location, not a very new idea.
Programmability - Higher see the computer technology - has begun to tend to tend. Besides, the system research failed.
What to do
Overgrowly focused on the actual results of the short cycle and attempt new things. The excessive focus of the big company is trying to try the existing priorities of fresh things. Operation from the study to absorb energy. But only the rushing village is left behind; ready to move.
Fiona's story: "Why do you use PLAN9?"
Go back to think and construct the system. Narrow is wrong; breadth is correct: it is the essence of the system.
Be dedicated to how the system is performance, work, not how to compare. Concentrate on interfaces and structures, not just engineering.
Brave. Try different things; do experiments. Try to give a Cool's Demo.
Investment subject: invest in some bold, special long-term projects. University, should gradually explore how students are committed to long-term engineering.
Use ideas to measure success, not papers and money. Let the industry "want" your work.
To build something
There are many effective, useful, interesting things to do. As an evidence I provide a small example. If this area is sluggish, it is not because of the lack of possibilities.
Only one GUI was seriously tried, and its best creative is traced from the 1970s. (In some aspects, it becomes worse; today, the screen is covered by a chaotic small picture) must have other possibilities. (Linux interface is as bad as Windows!)
There are many conversations to the composition, but there is only one real success: UNIX pipeline. It may be constructed from each part to build interactive, distributed applications.
In the future, it will be distributed calculations, but the language consistency has a small impact on the possibility of positioning.
The Web has already managed how the system performs and uses information: model is forced to interact with each other; users must get it. On the contrary, let us go back and give the data to the user.
System administrators still have a difficult problem. Bored, must be, but there is enough space to do a huge, or even the business masterpiece.
infer
This world has decided to make the computer what it is. In some extent, the system software research community affects this decision, but very small, it has terminated negotiations.
It is said that this time, I doubt a great system engineering will be funded, and if it is, the body will not be found. This chance is very low, now they are actually zero.
Research Association - University, Students, Industries, Investment Subjects - The privilege must be changed.
The community must accept and discover non-traditional views.
The community must separate research from market capitalization.