UpFront

diff -u: What's New in Kernel Development

Zack Brown

Issue #114, October 2003

A new system call, tgkill(), has been introduced to handle certain obscure error conditions in which a signal sent to one process may end up going to a completely different process. Ingo Molnar implemented the call, and Linus Torvalds suggested the name tgkill to correspond to the call's inputs: thread and group. The old call, pthread_kill(), allowed the bug involving signal misplacement and only operated on thread IDs as input.

Eugene Weiss has created Submount, a new attempt to support hard disk hot plugging. It includes a module called subfs, which creates a dummy filesystem at the desired mountpoint. This module then performs mounting and unmounting operations before and after all filesystem operations. This way, the hardware can be removed at any time, without risk of data corruption.

The OpenPOSIX test suite has reached 1.0.0. This milestone contains tests for core POSIX conformance in the areas of signals, message queues, semaphores, timers and process scheduling. Although this is not a Linux-specific tool and Linux itself is not as concerned with POSIX conformance as other OSes, the OpenPOSIX test suite still is quite useful for areas where Linux does value conformance.

Martin Schlemmer found that OSS sound worked on his ICH5 (Intel I/O Controller Hub), simply by adding the ICH5 IDs to the list in the kernel sources. This could be useful for some systems, but as Jeff Garzik has pointed out, it does not work for all ICH5s out there.

QLogic has rewritten its Fibre Channel (FC) driver completely for its ISP21xx/ISP22xx/ISP23xx chips and HBAs. The driver removes all support for the 2.4 kernel but adds significant performance enhancements. Their goal is to get the driver into the official 2.5 tree before the 2.6 time frame.

In preparation for Serial ATA (SATA), Jeff Garzik has created a driver to access ATA disks across the SCSI interface. He says the particular features of SCSI, as well as its advanced support for modern kernel features like SysFS, make it a very good host for SATA support. By going through the SCSI layer, he was able to rely on many such features that he otherwise would have had to code by hand.

Ingo Molnar has announced the Exec Shield security feature, which provides protection against many (though not all) potential exploits. Stack, buffer and function pointer overflows all are guarded against, along with many other attacks. This is done without requiring any recompilation of user applications. Although not a complete solution, Exec Shield promises to be quite effective in conjunction with other security measures.

Development Management System in a Box: GForge

Don Marti

Issue #114, October 2003

GForge (gforge.org), the Web-based collaborative software development system, has released a 3.0 version. GForge combines features such as a bug tracking system, CVS version control, Web interface to CVS, and archived Mailman mailing lists. New features for 3.0 include a project management system with Gantt charts, along with internationalization and simpler installation. GForge is the actively maintained free software fork of the software that powers SourceForge.net. Requires: PostgreSQL, Apache, OpenSSL and PHP.

LJ Index—October 2003


  • 1. Millions of requests for Python in May 2003: 11.9

  • 2. Thousands of different servers making requests for Python in May 2003: 325

  • 3. Dollars (equivalent to 188 million yen) the Japanese government will spend on a new IBM/Oki payroll system using Linux: 1,590,000

  • 4. Number of Japanese government employees whose payrolls will be handled by the new payroll system: 800,000

  • 5. Yearly costs to Japan in billions of dollars (350 billion yen) for its current payroll system: 2.96

  • 6. Expected savings to the Japanese government in billions of dollars from implementing the new Linux-based system: 1.48

  • 7. Dollars spent each year on proprietary software licenses by the South African government: 352

  • 8. Years Linux has been in use by the Canadian National Railway: 10

  • 9. Wireless LAN equipment sales in billions of dollars by 2006: 4

  • 10. Thousands of technicians certified by the Linux Professional Institute: 27

  • 11. Thousands of (Linux-based) TiVo customers: 750

  • 12. Projected millions of households that will have TiVo-like PVRs (personal video recorders) by 2006: 30

  • 13. Percentage of advertisers who say they will cut TV ad spending, based on projected PVR penetration: 76

  • 14. Thousands of Linux-based HP workstations producing movies at DreamWorks: 1

  • 15. Thousands of Linux-based processors in renderfarms at DreamWorks: 3

  • 16. Millions of lines of code ported to Linux by Pixar: 300

  • 17. Broadband penetration percentage in Korea: 70

  • 18. Broadband penetration percentage in the US: 35.9

  • 19. Apache market share percentage among top Web servers in July 2003: 63.72

Jahshaka: Open-Source Real-Time Editing and Effects

Doc Searls

Issue #114, October 2003

Let's say you want to do real-time editing and effects—the kind of stuff you get with high-end Avid systems or applications like Adobe Premiere and Apple Final Cut Pro. You're going to spend thousands, and if you're really serious, the costs can run into six figures, easy.

Well, not anymore, thanks to Jahshaka, “The World's First Open-Source Real-Time Editing and Effects System”. The brainchild of Jah Shaka, a native of Kingston, Jamaica, and a music industry veteran, the project has (at the time of this writing) reached the alpha stage and runs on Linux, IRIX, Windows and (soon) OS X. Right now the modules include Effects, Animation, Editing, Paint, Text, Player and Compositor. Jahshaka is developed in the OpenML programming environment, which supports capturing, transporting, processing, displaying and synchronizing digital media. It's GPL'd too. See www.jahshaka.com and www.khronos.org/openml.

PhotoGen: shawley.myip.org/projects/photogen.php

David A. Bandel

Issue #114, October 2003

PhotoGen is another great, easy-to-use script to create a Web album of photos effortlessly. Scripts like this make it easy for anyone to create an index page of thumbnails and directly transfer the entire directory to a Web server. With a quick link to the directory, anyone can view your photos. Requires: bash and ImageMagick.

Remote Filesystem Checker: rfc.sourceforge.net

David A. Bandel

Issue #114, October 2003

The remote filesystem checker (RFC) allows you to run filesystem checks on a number of remote systems from one master node. RFC uses SSH to log in and check each system. This can be run nightly from cron and a report is sent to the administrator, which lets you see a number of systems on one report rather than getting one from each individual system. Requires: OpenSSH, BASH, cron, Perl and AIDE (optional).

They Said It

Linux is now the new VHS.

—Jeff Gerhardt

Never doubt that a small group of thoughtful, committed citizens can change the world. Indeed, it's the only thing that ever has.

—Margaret Mead

In the age of the leak and the blog, of evidence extraction and link discovery, truths will either be out or be outed, later if not sooner.

—William Gibson

When it gets to the point where people are canceling publishing of books, it's very scary. It's a sort of censorship.

—Bill Pollock, No Starch Press, on the Digital Millennium Copyright Act, New York Times, July 10, 2003

The great anti-Linux mantra is gone. It has disappeared. Not one of the more than 60 responses mentioned a need for easier installation of the operating system. Kudos to everyone who helped to make that happen.

—Joe Barr, NewsForge

vshnu: www.cs.indiana.edu/~kinzler/vshnu

David A. Bandel

Issue #114, October 2003

A variation on a shell, this particular “shell” provides a graphical environment for a virtual terminal, while still allowing access to the underlying system. Properly setup, vshnu could serve as a batch menu file for new users. Written in Perl, all of Perl's power is available from vshnu. If you want a change from your standard CLI, this is worth a look, though it takes a little getting used to. Requires: Perl, Perl modules: Term::Screen, Term::ANSIColor, Term::ReadLine::Perl and a termcap file.