linux: past, present, and future theodore ts'o va linux systems [email protected]
Post on 18-Dec-2015
214 views
TRANSCRIPT
![Page 2: Linux: Past, Present, and Future Theodore Ts'o VA Linux Systems tytso@mit.edu](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d255503460f949fb772/html5/thumbnails/2.jpg)
Linux Past
July, 1991 --- Linus Torvalds releases the first version of Linux
1992 --- First fully functional system released. X Windows ported to Linux
1994 --- TCP/IP support added. Release of Linux 1.0
1995 --- Ported to Alpha and Sparc platforms. Release of Linux 1.2
![Page 3: Linux: Past, Present, and Future Theodore Ts'o VA Linux Systems tytso@mit.edu](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d255503460f949fb772/html5/thumbnails/3.jpg)
Linux History, Con't.
1996 --- SMP supported. Release of Linux 2.0
1997 --- Month Linux magazines started in Japan, Poland, Germany, Yugoslavia, and the U.K. Estimated 3.5 million users
1998 --- Linux is discovered by the mass media; lots of magazine articles
January, 1999 --- Linux 2.2 released. Estimated 7-10 million users.
![Page 4: Linux: Past, Present, and Future Theodore Ts'o VA Linux Systems tytso@mit.edu](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d255503460f949fb772/html5/thumbnails/4.jpg)
In the last year....
Major Linux companies go public Red Hat in August, 1999 VA Linux in December, 1999
Linux development for 2.3 kernel series continues.
Currently, estimated 20 million users.
![Page 5: Linux: Past, Present, and Future Theodore Ts'o VA Linux Systems tytso@mit.edu](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d255503460f949fb772/html5/thumbnails/5.jpg)
The Mindcraft Benchmark
Now quite infamous
Microsoft's IIS server losing market share Security Issues Performance on Dynamic pages beaten handily by
Apache
MS engineers decide to find a weak spot in Linux/Apache, benchmark it, get an independent 3rd party to verify the results.
Standard Marketing Ploy
![Page 6: Linux: Past, Present, and Future Theodore Ts'o VA Linux Systems tytso@mit.edu](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d255503460f949fb772/html5/thumbnails/6.jpg)
Nature of the Benchmark
Static files only
4-way SMP CPU
4 100 megabit ethernet card
Required special service pack which was just released, that rewrote the entire networking stack and made it use fine-grained locking. (This in a service pack?)
![Page 7: Linux: Past, Present, and Future Theodore Ts'o VA Linux Systems tytso@mit.edu](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d255503460f949fb772/html5/thumbnails/7.jpg)
Only Something Went Wrong...
Mindcraft released the results
Results were so counterintuitive that the Slashdot community goes ballistic
Weaknesses in the benchmark were quickly found The "independent" benchmark was really conducted on
the MS campus, with MS engineers present. A change in any part of the benchmark conditions
caused the results to change drastically. Benchmark didn't reflect real-world conditions.
![Page 8: Linux: Past, Present, and Future Theodore Ts'o VA Linux Systems tytso@mit.edu](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d255503460f949fb772/html5/thumbnails/8.jpg)
Yet the Results Were Real...
The Mindcraft benchmark did point out a real problem.
It was actually helpful to the Linux Community It encouraged developers to focus on fixing this
problem. It shows that Linux was real enough threat that
Microsoft was taking Linux seriously. Ultimately, it helped Linux from a marketing perspective as well.
![Page 9: Linux: Past, Present, and Future Theodore Ts'o VA Linux Systems tytso@mit.edu](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d255503460f949fb772/html5/thumbnails/9.jpg)
Microsoft Just Filed a Bug Report.....
Linus Torvalds reflected at his Usenix talk... At first I was pissed.... ... then I realized that MS had just filed a bug report... ... just in a non-traditional place (the WSJ instead of
the linux-kernel mailing list).
![Page 10: Linux: Past, Present, and Future Theodore Ts'o VA Linux Systems tytso@mit.edu](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d255503460f949fb772/html5/thumbnails/10.jpg)
Linux Present
2.4 almost ready to be released (really!)
2.4 is much more scaleable 64 Gig memory on IA32 64 bit file access on 32-bit platforms (LFS API) 32-bit uid, gid Much better SMP scaleability
Fine-grained locking (networking, VFS, etc.)
Better BUS support (PCMCIA, USB, firewire) NFS v3, NFS improvements RAW I/O
![Page 11: Linux: Past, Present, and Future Theodore Ts'o VA Linux Systems tytso@mit.edu](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d255503460f949fb772/html5/thumbnails/11.jpg)
Other Linux Developments
Development of Linux on the Desktop GNOME and KDE making impressive progress Sun has just recently open-sourced Star Office
Expansion of Linux into the Embedded sector Various companies (FSM labs, Atipa, Lineo, Red Hat)
agressively attacking this market Various products are being built around Linux
Tivo MP3 players
![Page 12: Linux: Past, Present, and Future Theodore Ts'o VA Linux Systems tytso@mit.edu](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d255503460f949fb772/html5/thumbnails/12.jpg)
Linux Future
Still a lot of work to be done!
Linux needs more work on scaleability Better SMP scaleability, NUMA support
Hopefully without sacrificing performance on UP and 2SMP systems
Better I/O performance (especially for block devices)
![Page 13: Linux: Past, Present, and Future Theodore Ts'o VA Linux Systems tytso@mit.edu](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d255503460f949fb772/html5/thumbnails/13.jpg)
Linux as an Industry Resource
OS enginering as a cost center, not a profit center
Multivendor, cooperative efforts Example: Trillian, Monterey
X Consortium Model Vendors contribute code for better functionality
Do what is necessary in that company's economic self-interest
Because of the overhead in merging changes to a moving mainline, incentive to merge those changes into the mainline
![Page 14: Linux: Past, Present, and Future Theodore Ts'o VA Linux Systems tytso@mit.edu](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d255503460f949fb772/html5/thumbnails/14.jpg)
Plays well with Linux
Challenge for companies that want to leverage Linux (and really, the open source community in general)
How to get changes into the kernel?
Case study of how NOT to do things: Hot swap PCI code: donated by Motorola Changes were scattered all over the kernel, and were
"ugly" Motorola threw the work over the transom, no
preparatory work, and no followthrough
![Page 15: Linux: Past, Present, and Future Theodore Ts'o VA Linux Systems tytso@mit.edu](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d255503460f949fb772/html5/thumbnails/15.jpg)
The Linux Kernel Development Community
There is no cabal Deliberately avoided a formal core team --- motivated
by watching some of the political problems in the early NetBSD, FreeBSD, OpenBSD days
![Page 16: Linux: Past, Present, and Future Theodore Ts'o VA Linux Systems tytso@mit.edu](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d255503460f949fb772/html5/thumbnails/16.jpg)
The Linux Kernel Development Community
There is no cabal Deliberately avoided a formal core team --- motivated
by watching some of the political problems in the early NetBSD, FreeBSD, OpenBSD days
There is a cabal There is a group of people who know each other and
trust each other.
![Page 17: Linux: Past, Present, and Future Theodore Ts'o VA Linux Systems tytso@mit.edu](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d255503460f949fb772/html5/thumbnails/17.jpg)
The Linux Kernel Development Community
There is no cabal Deliberately avoided a formal core team --- motivated
by watching some of the political problems in the early NetBSD, FreeBSD, OpenBSD days
There is a cabal There is a group of people who know each other and
trust each other. Very much an old boys club meritocracy
![Page 18: Linux: Past, Present, and Future Theodore Ts'o VA Linux Systems tytso@mit.edu](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d255503460f949fb772/html5/thumbnails/18.jpg)
Getting changes into the Kernel
Changes must be clean Long-term maintainability is more important than any
specific feature, or a particular vendor's timeline Be prepared to prove that no simpler solution will work. Good test for cleanliness: a change should solve more
than one problem. Justify the change two ways: why you need it, and show how it
fixes an existing problem in the kernel
Changes should be small. Break megapatches into functional chunks
![Page 19: Linux: Past, Present, and Future Theodore Ts'o VA Linux Systems tytso@mit.edu](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d255503460f949fb772/html5/thumbnails/19.jpg)
Getting changes in, con't.
Communication, communication, communication Talk to folks in advance --- some people may be
working on the problem already. When submitting the patch, explain why certain
approaches were taken etc.
Be prepared for changes LKDC may want to make changes before they are
comfortable with it. Most common reason: to make the code more general.
![Page 20: Linux: Past, Present, and Future Theodore Ts'o VA Linux Systems tytso@mit.edu](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d255503460f949fb772/html5/thumbnails/20.jpg)
Suggestion to Companies
Hire or allocate one or more kernel engineers Make joining the kernel development community be
part of their job description Part of their time should be spent helping to improve
the general linux kernel (not necessarily just the specific project(s) their company is focused upon.)
Functioning as the liaison between the company and the LKDC, they can help feed enhancements into the Linux kernel so they are accepted into the mainline.
Many companies have used this strategy quite successfully.
![Page 21: Linux: Past, Present, and Future Theodore Ts'o VA Linux Systems tytso@mit.edu](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d255503460f949fb772/html5/thumbnails/21.jpg)
Conclusion
Linux: coming from its hobbist past, moving into a computer industry future
Challenge: Keeping the advantage of Linux-as-a-hobby, while growing Linux into the enterprise space.
This requires a partnership between the Linux Kernel Development Community and our Industry partners
Some amount of cultural impedence matching may be necessary, but I'm confident we can be successful