Practical Technology

for practical people.

February 5, 2007
by sjvn01
0 comments

Super Kernel Sunday score: Linux 2.6.20, Vista 1.0

In a message entitled, “Super Kernel Sunday!” to the LKML (Linux Kernel Mailing List), Linus Torvalds announced news far more important than the Colts beating the Bears — to serious Linux users, anyway. The newest stable version of the Linux kernel, version 2.6.20, has been released.

Torvalds, with his tongue firmly planted in his cheek, went on “Before downloading the actual new kernel, most avid kernel hackers have been involved in a 2-hour pre-kernel-compilation count-down, with some even spending the preceding week doing typing exercises and reciting PI to a thousand decimal places.”

And, Torvalds added, “As ICD head analyst Walter Dickweed put it: ‘Releasing a new kernel on Superbowl Sunday means that the important ‘pasty white nerd’ constituency finally has something to do while the rest of the country sits comatose in front of their [65-inch] plasma screens.'”

After some more fun, Torvalds moved on to business. “I tried rather hard to make 2.6.20 largely a ‘stabilization release.’ Unlike a lot of kernels lately, there aren’t really any big fundamental changes to some core infrastructure area, and while we always have bugs, I really am hoping that we fixed many more than we introduced,” wrote Torvalds.

The one major new addition to the 2.6.20 kernel is the long-awaited addition of KVM (Kernel-based virtual machine for Linux). KVM, like Xen and OpenVZ, is an open-source virtualization platform.

KVM works only on the latest x86 processors that include virtualization extensions. These include Intel’s VT (Virtualization Technology aka Vanderpool) and AMD’s AMD-V (aka Pacifica) technologies. With chips that support these technologies, such as Intel’s Core 2 Duo processor, virtualization programs that support these extensions can run much more efficiently.

With Linux 2.6.20, KVM consists of a loadable kernel module, kvm.ko, which implements the core virtualization infrastructure, along with a processor specific module, kvm-intel.ko or kvm-amd.ko, which supports the appropriate instruction set. At this time, KVM also requires a modified QEMU to work properly. QEMU is an open-source VM (virtual machine) monitor, or “hypervisor.”

With KVM and the right chips, users will be able run multiple VMs running both unmodified Linux and Windows. Each VM has its own private virtualized hardware: a network card, disk, graphics adapter, and so on.

In one early test of a Linux 2.6.20 with a KVM release candidate, “KVM was not the clear winner in all of the benchmarks,” according to a review by Michael Larabel on Phoronix.com. It did do well, however, and its strong points reportedly included “high performance, stable, no modifications of the guest operating system are necessary, and a great deal of other capabilities (e.g. using the Linux scheduler).”

Source code to Sunday’s Linux 2.6.20 release can be downloaded from kernel.org. Expect to see it begin showing up in your favorite distro in the coming months.

Vista, meanwhile remains at version 1.0.

A version of this story first appeared in Linux-Watch.

February 1, 2007
by sjvn01
0 comments

Microsoft & Novell’s Joint Lab

When Novell and Microsoft announced their unlikely partnership, a part of the arrangement that got little attention at the time was that they’d create a joint research facility, where both company’s technical experts would collaborate on new joint software solutions. Now, they’re staffing up.

According to Sam Ramji, Microsoft’s director of platform technology strategy, the companies are looking for a few good program managers and software engineers to populate that joint research facility.

In a Port 25 message, Ramji wrote that as a result of the partnership, two companies are opening a Joint Interoperability Lab, which “will be around for the long term, and will focus on interoperable virtualization between the Windows and SLES (SUSE Linux Enterprise Server). This lab will be part of the product engineering teams for both companies.”

In particular, the Lab will focus on several areas: “Virtualization, Office OpenXML/ODF interoperability, WS-Management interoperability, and directory federation.” Ramji, and his Novell colleagues, are looking for program managers and software design engineers. Depending on the particular job, one might work for Novell, while another would draw his or her pay-checks from Microsoft.

The job descriptions make it clear, though, that virtualization is at the top of the priority list for the two companies.

Specifically, Microsoft wants a “Software Design Engineer in Test, Linux Interoperability” and a “Program Manager, Linux Interoperability,” while Novell is seeking a “Software Design Engineer in Test, Windows Interoperability.”

For its software engineer, Microsoft wants an experienced “Software Development Engineer in Test who can take on the challenging role of qualifying Microsoft’s new Longhorn Server Hypervisor based virtual machine solution in a collaborative project with Novell. This position will require candidates with substantial knowledge of Microsoft’s device driver models; strong experience in developing and testing software written in C, C++ or C#; working knowledge of Linux (preferably SLES); and knowledge of Microsoft’s server class feature and applications.”

From this, it would seem that Microsoft and Novell have joint plans for XenSource Inc.‘s Xen virtualization system. Microsoft announced a strategic partnership with XenSource last July. At the time, Bob Muglia, the senior vice president for servers and tools at Microsoft, said, “Virtualization is an important trend in the industry as well as a specific area where there are great opportunities for interoperability because of the ability for an operating system such as Windows, with the virtualization technology we are building in, to support Linux in a very native and high-performance way.”

Novell, of course, has long partnered with XenSource. Xen is already working in SLES 10 (SUSE Linux Enterprise Server). Indeed, there have been recent rumors that >Novell XenSource.

In turn, Novell is looking for “an experienced Software Development Engineer in Test who can take on the challenging role of qualifying SLES10 based virtual machine solution in a collaborative project with Microsoft. This position will require candidates with substantial knowledge of Linux device driver models; strong experience in developing and testing software written in C, C++ and various scripting languages; working knowledge of Microsoft server environment; and knowledge of server class feature and applications on Linux.”

It seems clear that a virtualization solution that will run both on Longhorn, the next version of Windows server, and on future editions of SLES is in the works. Microsoft’s other job description, though, indicates that Microsoft isn’t replacing its own home-grown virtualization program, Viridian, with Xen.

Regarding its “Program Manager, Linux Interoperability” job opening, Microsoft says the person who is hired for that “highly visible senior program management position will have the opportunity to work in one of the core areas of growth for Microsoft.”

Microsoft adds that “The main focus of this position is to drive interoperability between Linux and Windows, including planning and leading the Microsoft/Novell Joint Interoperability Lab. This is a multi-million dollar, multi-year effort that will ensure high performance and availability of both SUSE Linux on Viridian and Longhorn Server on Xen.”

This job will require the manager to lead a small team of software engineers in virtualization product development with both Microsoft and Novell virtualization engineering teams; analyze Fortune 100 customers’ needs, engage with open-source communities, work on the Microsoft’s Interoperability Roadmap, and “Scale impact of interoperability work across the company, including worldwide field engagement.”

Need it be said that Microsoft is looking for a top-level technical leader for the job? In addition, this will be “a high visibility role that involves strategic and technical communication at all levels.”

One question, though, that any job seeker will have is still unanswered. Ramji said that the location for the Joint Interoperability Lab is still secret.

January 31, 2007
by sjvn01
0 comments

Linux hackers offer to create device drivers for free

Ask Linux users what they find most annoying about Linux, and many will complain about device drivers. While the vast majority of PC components and peripherals work with Linux, some don’t work at all, and others are marginal. A leading Linux kernel developer has come up with a solution.

In a recent blog and email posting, kernel hacker Greg Kroah-Hartman wrote, “The Linux kernel community is offering all companies free Linux driver development. No longer do you have to suffer through all of the different examples in the Linux Device Driver Kit, or pick through the thousands of example drivers in the Linux kernel source tree trying to determine which one is the closest to what you need to do.”

That’s a significant point. While many hardware vendors don’t want to open up their devices APIs (application programming interfaces) and ABIs (application binary interfaces) to the open-source community, it’s often not because they have any real secret ingredient. No, it’s just that they don’t want a device driver out there that they haven’t had a hand in making, and they also don’t have the cash on hand to build it themselves. By enabling the equipment vendor to have some say in the matter, while not costing them a thin dime, Kroah-Hartman hopes that the hardware companies will work with open source developers.

Kroah-Hartman continued, “All that is needed is some kind of specification that describes how your device works, or the email address of an engineer that is willing to answer questions every once in a while. A few sample devices might be good to have so that debugging doesn’t have to be done by email, but if necessary, that can be done.”

And what will the hardware manufacturers get? “In return, you will receive a complete and working Linux driver that is added to the main Linux kernel source tree,” Kroah-Hartman says.

“The driver will be written by some of the members of the Linux kernel developer community (over 1500 strong and growing). This driver will then be automatically included in all Linux distributions, including the ‘enterprise’ ones. It will be automatically kept up to date and working through all Linux kernel API changes.”

Any device is fair-game for this new Linux project. “This offer is in effect for all different types of devices, from USB toys to PCI video devices to high-speed networking cards. If you manufacture it, we can get Linux drivers working for it.”

Kroah-Hartman also gave vendors a marketing carrot: “This driver will work with all of the different CPU types supported by Linux, the largest number of CPU types supported by any operating system ever before in the history of computing.”

Even for a hardware maker that thinks the Linux market for its product is small, the idea of having a driver that will let the equipment work on any architecture must be an attractive one. Later, Kroah-Hartman added, “Now your developers will have more time to work on drivers for all of the other operating systems out there, and you can add ‘supported on Linux’ to your product’s marketing material” underlining that vendors can gain a lot with very little effort on their parts.

According to Kroah-Hartman, the vendor won’t even need to worry about support. Both the community and enterprise Linux employee developers will take care of driver support.

What about a vendor that really doesn’t want anyone peeking inside its firmware, or the like? Kroah-Hartman has an answer for that, too: “If your company is worried about NDA (non-disclosure agreement) issues surrounding your device’s specifications, we have arranged a program with [the Linux Foundation‘s (the merged OSDL and the FSF‘s)] Tech Board to provide the legal framework where a company can interact with a member of the kernel community in order to properly assure that all needed NDA requirements are fulfilled.”

The majority of the Linux kernel development community has rallied to Kroah-Hartman’s call. A few, though, think he may have gone too far in his claims. Linux kernel developer Roland Dreier, for example, wrote on the LKML (Linux Kernel Mailing List): “I’m all for openness of device programming specs, but I think it’s a bit disingenuous to suggest that all a company has to do to get a driver written and supported is throw some documentation over the wall. And it’s crazy to suggest that the driver will work on every platform and be supported by enterprise distros.”

Kroah-Hartman replied, and was seconded by many other LKML developers, that there was nothing crazy about it all since “We do that already today with the majority of drivers in Linux.”

Others, such as Adrian Bunk, the maintainer of the 2.6.16 Linux Kernel, observed that while “Writing a driver for shiny new hardware is cool…, understanding and maintaining an already existing driver and working on bug reports for this driver is something not-so-cool.” Bunk then asks, “Would someone from your long list of people e.g. be willing to maintain drivers/block/floppy.c? [the floppy disk driver]

“What? Throw a fresh-faced newbie instantly into the tar-pit of despair that floppy.c is? Do you want everyone just to run screaming from kernel development never to be seen again?,” asked Kroah-Hartman in his humorous reply.

“Seriously, Kroah-Hartman continued, “if you need help with something like this, bring it up on the kernel-janitors list, there are lots of people there that are willing to help out with stuff like long-term maintenance and bug fixing but don’t know where to start.”

Will this plan work? Only time, the vendors, and the kernel developers will be able to tell, but the project is on its way. Kroah-Hartman invites vendors to email him at greg@kroah.com to get their free open-source driver started.

A version of this story was first published in Linux-Watch.

January 29, 2007
by sjvn01
0 comments

PDF to become an open, ISO standard

Adobe Systems Inc. on Jan. 29 announced that it has released the full PDF (Portable Document Format) 1.7 specification to AIIM, the Association for Information and Image Management. AIIM, in turn, will start working on making PDF an ISO standard.

In this release, Adobe is opening up the full PDF 1.7 specification as defined in Adobe’s PDF Reference Manual. According to Sarah Rosenbaum, Adobe’s director of product management, this is the next logical step for Adobe with its PDF formats. In the 14 years since Adobe published the complete PDF specification in 1993, PDF has become a de facto global standard for secure and dependable information exchange and archival storage.

Since 1995, Adobe has participated in various working groups that develop technical specifications for publication by ISO, and worked within the ISO process to deliver specialized subsets of PDF as standards for specific industries and functions. Through these efforts, PDF/Archive (PDF/A) and PDF/Exchange (PDF/X) have already become ISO standards, and PDF for Engineering (PDF/E) and PDF for Universal Access (PDF/UA) are well on their ways to becoming ISO standards.

Additionally, PDF for Healthcare (PDF/H) is an AIIM proposed Best Practice Guide. AIIM already serves as the administrator for PDF/A, PDF/E, PDF/UA and PDF/H.

One reason Adobe is releasing the full PDF 1.7 specification at this time is that so many industry-specific versions of PDF already were ISO standards, Rosenbaum explained. “We see a lot of standards based on PDF format that are specific to industries or archiving. That’s great, but for customers want to do documents in PDF, submitting the entire specification will make it easier for them,” she said.

From here, a joint committee formed under AIIM will identify issues to be addressed, as well as proposed solutions with the proposed standard. This committee will then develop a draft document that will be presented to a Joint Working Group of ISO for development and approval as an international standard.

By opening up PDF in this manner, Adobe’s customers will be more easily able to use PDFs in all their document management programs. Additionally, this move will also “provide an umbrella for the current alphabet soup of Adobe PDF standards,” Rosenbaum added. Another factor in Adobe’s decision was that with the rise of ODF (open document format), “there’s a stronger market trend towards standardizing on open standards … umbrella.”

However, this move by Adobe does not, Rosenbaum asserted, have anything to do with Microsoft’s PDF competitor: the Metro format, aka XPS (XML Paper Specification) print path.

XPS, which is now available in Vista, at one time was described as a “PDF killer.” In Vista, XPS appears as a printer named “XPS Document Writer.” If a user prints to this “printer” from an application, the resulting file will be an XPS Document. XPS is also supported in Office 2007.

Kevin Lynch, Adobe’s chief software architect and senior vice president of company’s platform business unit, stated: “Today’s announcement is the next logical step in the evolution of PDF from de facto standard to a formal, de jure standard. By releasing the full PDF specification for ISO standardization, we are reinforcing our commitment to openness. As governments and organizations increasingly request open formats, maintenance of the PDF specification by an external and participatory organization will help continue to drive innovation and expand the rich PDF ecosystem that has evolved over the past 15 years.”

Interestingly, this announcement by Adobe comes just one day prior to the Jan. 30 public release of both Vista and Office 2007 by Microsoft.

A version of this story appeared in DesktopLinux.

January 23, 2007
by sjvn01
0 comments

Linspire’s CNR to go multi-Linux, remain free

Linspire announced today that it plans to expand its CNR (“Click ‘N Run”) digital download and software management service to support multiple desktop Linux distributions beyond Linspire and Freespire, initially adding Debian, Fedora, OpenSUSE, and Ubuntu, using both .deb and .rpm packages. And, the standard CNR service will remain free.

CNR was developed by Linspire in 2002 to allow desktop Linux users to find, install, uninstall, manage, and update thousands of software programs on their Linspire-based Linux computers.

Previously available only for Linspire and Freespire desktop Linux users, the CNR Service will begin providing users of other desktop Linux distributions a free and easy way to access more than 20,000 desktop Linux products, packages and libraries, a Linspire spokesperson said.

Continue Reading →

January 16, 2007
by sjvn01
0 comments

Sun to release OpenSolaris under GPL version 3

Sun is going to add the upcoming GNU General Public License version 3 (GPLv3) to OpenSolaris in addition to its current CDDL (Common Development and Distribution License). This may give OpenSolaris a much needed kick in the pants.

I have never liked the CDDL. Like many other open source licenses, which are based on the MPL (Mozilla Public License), the CDDL artificially restricts the intellectual freedom that makes open source such an incredible powerhouse of software development.

As Larry Rosen, a partner in the technology law firm Rosenlaw & Einschlag and author of “Open-Source Licensing: Software Freedom and Intellectual Property Law,” told me a while back, “My biggest concern about the proliferation of reciprocal license such as the CDDL is that we end up not with one commons of free software but multiple islands of it that can’t be interchanged for creating derivative works. We get some of the benefits of the open-source paradigm but — as the Apache foundation is so fond of reminding us — reciprocal licenses prevent free software from being available to absolutely everyone for modification and reuse.”

He’s right, of course. What I find even more disturbing is that the CDDL has been followed by many other MPL-based licenses — like Scalix, Socialtext, SugarCRM, and Zimbra — that add even more restrictions. For example, the SugarCRM Public License, has now added a logo to its license. If you write an application based on Sugar’s code, Sugar insists that you display in your user interface a 106 x 23 pixel logo that states “Powered by SugarCRM.” This new, and I think annoying, trend is dubbed “badgeware.”

Thankfully, though, Sun hasn’t done this, and they’re now backing off a bit from the CDDL by placing OpenSolaris under the GPLv3, as well. This can only be good news for OpenSolaris and its developers.

This will enable programmers to share code among OpenSolaris and other GPLv3 open-source software projects. While it still looks very doubtful that Linux will go GPLv3, we can be certain that the Free Software Foundation Gnu Project’s 5,000 plus programs will be available under the GPLv3. In addition, the Samba Team has announced that it will be making its popular Samba CIFS (Common Internet File System) software GPLv3.

What all this adds up to is that by going GPLv3, OpenSolaris is building bridges to the other open-source islands. This can only benefit both OpenSolaris and the other GPLv3 programs.

At the same time, having a major operating system under GPLv3 will help with the acceptance of this revised license. I have long worried that the GPLv3 would be dead on arrival. Now, however, I’m sure that it will become a major open-source license.

I still believe that the GPLv2, thanks to the loyal support of Linus Torvalds and the other Linux core developers, will continue to be the single most important open-source license. I now think, however, that the GPLv3 will soon become a strong number two.

A version of this story first appeared in Linux-Watch.