December 2003


eWeek, an enterprised geared weekly magazine, has honored two open source projects, Samba 3.0 and Mozilla 1.5 as top products of the year.

According to the article, “Mozilla took some impressive steps this year to become the clear leader in quality”

Congrats to the Samba and Mozilla teams for creating leading enterprise level solutions.

SCO has recently made precise copyright claim to a number of files found in the Linux kernel. These claims were sent out to various companies with the ultimate intent of charging these companies $699 and up per CPU running Linux.

Linus Torvalds, creator of the Linux kernel, has refuted many of the copyright claims that SCO proclaimed in their letter to the corporations.

The bottom line, in his words:

“In short: for the files where I personally checked the history, I can definitely say that those files are trivially written by me personally, with no copying from any Unix code, ever. So it’s definitely not a question of ‘all derivative branches,’ [rather] it’s a question of the fact that I can show—and SCO should have been able to see—that [SCO’s] list clearly shows original work, not ‘copied’ work,”

He goes on (along with Eric S. Raymond, Bruce Perans and other Linux developers) to explain in detail where code has originated from, what code was originally written for Linux and not copied and sound reasoning to code that might appear to be copied (But infact is code based on published standards or public domain resources).

It does amaze me at the speed in which the Linux developers can pinpoint precisely when a piece of code has been entered into the Linux kernel, where the code originated from and, so far, provide a very sound defense to each publically announced aquisition that SCO has made.

According to this followup article on eWeek, the open source MySQL database is programmed better, 6x better, than commercial database offerings.

According to a study conducted by Reasoning Inc., MySQL had a defect density of 0.09 defects per 1000 lines of code. Reasoning Inc., compared this to 200 other products, over 35 million lines of code, and found that commercial offerings had a defect density of 0.57 defects per 1000 lines of code.

While the defects that Reasoning was looking at does not necessarily equate to a product being more or less reliable, it does point out that atleast the FOSS MySQL development team is more concious of programming flaws than their commercial counterparts.

The upside? The original report was published October. As of last Monday, the latest version of MySQL would pass their test with flying colors, 0 defects (as per their measurements) in the entire code base.

Congrats to the MySQL development team and all of the other development teams that have integrated creating error-free, high quality code into their development cycles.

Recently Microsoft has been in the news. Not the constant security exploits, software issues or marketing of a new, improved product that is “bigger, better and does everything perfectly” but about something else. Microsoft is looking at Linux as a model for software development.

According to itworld.com, the core Windows development team at Microsoft is researching the development model of Linux extensively. They are interested in “how Linux has been able to maintain a high level of consistency in the kernel while groups around it maintain maximum flexibility”.

In addition to this, there is a supposed Microsoft survey for Linux users. The survey is conducted using surveymonkey.com and to me doesn’t appear to be official Microsoft.. If it is legitimate, it is interesting to see this significant interest in how Linux operates.

So the question in my mind: Microsoft can research Linux and the FOSS development model to their hearts content, but does this allow them to build a product that would minimize the current migration to FOSS by virtually every computing sector across the world?

Right now, many organizations including several large tech companies (IBM, Hewlett Packard, Sun Microsystems, Yahoo, Google, Intel (I believe), Nvidia, etc), governments, small/mid-sized businesses, technology gurus, etc are actively developing FOSS. I’m not talking about traditional Windows-esque development such as device drivers and third-party applications, but development that in the Windows world has been exclusively done by Microsoft. I am talking kernel development, file system development, networking stack development, etc.

Case in point, Hewlett Packard has several full-time employees that work exclusively on the Samba windows/unix file sharing technology. Infact, with their help, they have made Windows file sharing on a *nix platform scale significantly better than Microsoft’s own methods (and Microsoft made the specificiations!) — things like 1000 queue print servers (with the printers dispersed globally), enterprise level file sharing with thousands of concurrent users, etc. Technology that is available to anyone and everyone, free of charge.

Right now, in many regards, the FOSS model provides superior solutions to technology issues. What is incredible is as FOSS is deployed in more organizations, governments and businesses, the model will strengthen. More IT staffs will be utilizing the software and giving back improvements to the code base to the core project teams. Current niche applications will develop larger user bases which will ultimatley accelerate the development cycle.

Granted, there is still a LOT of software that keeps people bound to Windows in one way or another (either via a native install or through emulation software). Unlike traditional software development, there is no central authority that states what a definitive “base install” looks like. As a result, while some of the software has standardized over the years, there truly is no standard “FOSS” desktop or server, so to speak. Perhaps as more of the user base is made up of true end users (ie non system administrators / programmer types), certain projects will be considered the best in their respective catagories and be considered the default.

However where does this leave Microsoft? Do they have a chance in truly competing with FOSS? I don’t think so. Do they have a chance to be successful? Sure. However, I believe they will need to truly embrace open standards and perhaps instead of staying exclusively Windows, develop software that is cross platform and meets the needs of niches where the FOSS model is not nearly as effective. Will they be able to do this? It is hard to say. There are huge expectations placed on Microsoft to maintain their current product lines and maintain their extraordinary success.

Not too long ago, the Linux 2.6.0 kernel was released. For those of you who do not know, the kernel is the “essential” thing that makes an operating system an operating system. It provides the low level interface between the hardware and software. This is the thing that controls the drivers, determines how applications multitask, how memory is allocated, etc.

The 2.6 release signifies a HUGE leap and has been under development for a few years. There are lots of new features that benefit pretty much any Linux user out there.

1. Scaling Down — Improved Embedded Systems support for things like set-top boxes, cell phones, etc …. Support for Hitachi’s H8/300 series, NEC v850, ETRAX CRIS, and Motorola’s m68k embedded processors is available. Ability to build a system without swap support and other features add to the robustness of the OS in embedded applications.

2. Scaling Up — Support for NUMA (Non-Uniform Memory Access), a step beyond SMP. This is good news for servers with 16 to 32 or more processors.

3. Subarchitecture Support — Ability for Linux to support slightly altered systems such as i386 processors that do not run on PC/AT-descendant servers. For example, a NAS (network attached storage) device running a i386 processor but completely different support chips/platform could be supported due to the subarchitecture support..

4. Hyperthreading support — instead of just seeing a hyperthreading system as two processors, Linux 2.6 recognizes them as virtual processors and can optimize process scheduling to maximize the usage of a virtual processor scenario.

5. Scalability Improvements — ability to access up to 64GB of RAM on a 32-bit x86 system … over 4 billion users can be supported on a single system (versus 65,000 on a Linux 2.4.x system). Process IDs (PIDs) have been inreased from 32,000 to 1 billion .. this improves application starting performance on busy or long lived systems. 16TB file systems are also supported on common hardware.

6. Interactivity and Responsiveness — preemptible kernel processes, I/O subsystems have been revamped, fast user-space mutexes provide for increases in user responsiveness (ie desktop system)

7. Hardware support — increased (or new support) for the following —> storage busses, filesystems, wireless devices, external devices, internal devices, human interface devices, audio & multimedia, networking.

8. User-mode linux — run a base linux system, then run virtualized linux systems on top. What is the use? This can essentially jail certain services from the rest of the system where there might be security concerns. It can also provide for “root” login in a virtual server enviroment that hosts multiple sites, and provides test enviroments for developers, administrators, etc.

As you can see, lots and lots has changed in the 2.6 kernel and as a result, the 2.6 kernel impacts virtually all Linux users. For a more comprehensive “high level” listing of changes/features/additions, please check out Wonderful World of Linux 2.6.

Next Page »