The Bullet Points: Linux 2.4
These big changes for Linux have all been of great advantage to desktop users, but Linux 2.4 will include many advantages to those who are using more traditional Linux (server) boxes. The change which has garnered the most media attention is wake one.
At heart, wake one is a simple change meant to counteract the “stampede effect” seen under certain conditions on busy web servers. Previously, when a number of daemons or other processes were waiting for something to happen over the network, they would all sit idle and then all spring into action at the first sign of communication. Unfortunately, for every web connection, only one daemon can be talking and so most of these lose out and go back to waiting and hoping that they're next. Linux 2.4 has integrated changes which basically wake one of the processes instead of all of them. This results in less unnecessary thrashing of daemon processes and a faster system overall.
Simple? Maybe. In order to support this, Linux 2.4 required a complete rewrite of wait queues and other bits. In addition to solving this problem, Linux 2.4 queues will be more robust and scale better to multiple processors. Just to get an idea of how important Linus felt this change was to Linux, it should be noted that this was the first new feature in Linux 2.3 (the development version, which is to become Linux 2.4).
Also on the server front, Linux 2.4 includes support for a rather revolutionary idea: a web server actually integrated into the kernel. The advantages of this include a faster response time from the server, because it can work directly at the caching layer and doesn't need to make any network calls to user space. However, this change is not meant as a general solution to web hosting; it can serve only files, not CGIs, and it has been designed to be as simple as humanly possible. Any requests it can't handle can be passed to user-space, where Apache or another waiting web daemon can snatch it up and serve it. This double-decker style of web hosting has already been observed to increase server performance in synthetic load environments.
Many Linux users have actually spoken out against this feature, citing the kernel as no place for a web server. My personal feeling is that serving files in this manner is no different than any other in-kernel file server, and it actually does make sense in cases where performance is the true “key” issue and simplicity can be assured. Currently, only knfsd actually does file serving from the kernel, but the precedent is there. I don't believe we should, for instance, serve FTP from the kernel or integrate a DNS server into the kernel, but if there is a good advantage to doing something this way, then it should be an option.
Another feature for servers that Linux 2.4 will support is so-called “raw” devices. Raw devices are special device nodes which can be associated with normal block devices to provide direct and low-level access to devices. This can be used, for example, by databases that think they can handle their own caching better than the kernel. The jury is still out on how useful this feature will actually be, rather than how useful its proponents say it is, but this is nonetheless another big step toward providing “commercial grade” UNIX features under Linux.
This feature has long been requested by database developers and others who are used to the raw features of other UNIX systems for their server applications. I don't see much need for bypassing caching, except in the case where data integrity is paramount and loss of performance is not an issue. But maybe the feature just isn't for me, and makes perfect sense to a particular type of application.
Just as Windows and Macintoshes have their own protocols and methodologies for accessing shared drives, UNIX systems have NFS, the network file system. Linux has long supported NFS sharing and mounting in all of its flavors. Linux can even boot (without initrd) off such a shared drive. Linux 2.4 adds the oft-requested support for the latest version of the NFS protocol, NFSv3, which includes many improvements over the old system as well as ensuring Linux will be compatible with the commercial UNIX systems of the next millennium.
I believe both servers and desktop users will benefit from this change. Having a more robust NFS layer that supports the latest protocols and enhancements is always a win, and many desktop users who share files may be able to take advantage of the new features in the new NFS.
Practical Task Scheduling Deployment
July 20, 2016 12:00 pm CDT
One of the best things about the UNIX environment (aside from being stable and efficient) is the vast array of software tools available to help you do your job. Traditionally, a UNIX tool does only one thing, but does that one thing very well. For example, grep is very easy to use and can search vast amounts of data quickly. The find tool can find a particular file or files based on all kinds of criteria. It's pretty easy to string these tools together to build even more powerful tools, such as a tool that finds all of the .log files in the /home directory and searches each one for a particular entry. This erector-set mentality allows UNIX system administrators to seem to always have the right tool for the job.
Cron traditionally has been considered another such a tool for job scheduling, but is it enough? This webinar considers that very question. The first part builds on a previous Geek Guide, Beyond Cron, and briefly describes how to know when it might be time to consider upgrading your job scheduling infrastructure. The second part presents an actual planning and implementation framework.
Join Linux Journal's Mike Diehl and Pat Cameron of Help Systems.
Free to Linux Journal readers.Register Now!
- SUSE LLC's SUSE Manager
- My +1 Sword of Productivity
- Murat Yener and Onur Dundar's Expert Android Studio (Wrox)
- Managing Linux Using Puppet
- Non-Linux FOSS: Caffeine!
- Doing for User Space What We Did for Kernel Space
- SuperTuxKart 0.9.2 Released
- Parsing an RSS News Feed with a Bash Script
- Google's SwiftShader Released
- Rogue Wave Software's Zend Server
With all the industry talk about the benefits of Linux on Power and all the performance advantages offered by its open architecture, you may be considering a move in that direction. If you are thinking about analytics, big data and cloud computing, you would be right to evaluate Power. The idea of using commodity x86 hardware and replacing it every three years is an outdated cost model. It doesn’t consider the total cost of ownership, and it doesn’t consider the advantage of real processing power, high-availability and multithreading like a demon.
This ebook takes a look at some of the practical applications of the Linux on Power platform and ways you might bring all the performance power of this open architecture to bear for your organization. There are no smoke and mirrors here—just hard, cold, empirical evidence provided by independent sources. I also consider some innovative ways Linux on Power will be used in the future.Get the Guide