|
Red Hat Delivers Fedora Core 6 Community Release
Published: October 24, 2006
by Timothy Prickett Morgan
The Fedora Core 6 community development release of Red Hat's implementation of Linux may have come out a little bit late, but the members of the Fedora community, as well as the executives at Red Hat who are anticipating the launch of Enterprise Linux 5 later this year, are pretty pumped up about all of the new features that have made it into the Fedora Core 6 code that launches today.
The relationship between the community Fedora Core releases and Red Hat's commercialized Enterprise Linux releases tends to ebb and flow over time. Sometimes, Fedora Core gets way ahead of Enterprise Linux, as was the case with Fedora Core 5, the first release from Red Hat to play around with the Xen virtual machine hypervisor from XenSource; it also added support for the Mono clone of the .NET environment, and Yum package installer tools. In this case, Fedora Core 5, which came out in March 2006, was way ahead of the then-current Red Hat Enterprise Linux 4 commercial release. It was basically laying the second phase of the groundwork for Fedora Core 6, which in turn is the basis of the future RHEL 5 release. Fedora Core 4, which was launched in June 2005, was a very early foundation of the future RHEL 5 as well, since it had a very early implementation of Xen hypervisors and was built using the GNU gcc 4 compilers. Fedora Core 3, the first community-driven development release, came out in November 2004 and was the foundation for RHEL 4, which launched in February 2005. The Fedora Project was created in November 2003, and the project managed the transition of RHEL from the Linux 2.4 kernel to the Linux 2.6 kernel in the early years.
While Fedora Core may be the foundation on which RHEL releases are built, sometimes the members of the Fedora Project do things that make it easier for people and companies to use Fedora Core in a production environment, since it is popular on desktops and workstations as well as on servers where third-party technical and installation support is not much of an issue. (Think of academia, where graduate students are basically the technical support staff, or the government-sponsored supercomputing labs, where the scientists are probably as knowledgeable about Linux as the companies that create the commercial Linux distributions.)
According to Max Spevack, the manager of the Fedora Project, some of the biggest changes coming with Fedora Core 6 are in the Anaconda program installer. The core part of the Fedora Core name means it is the Linux kernel, the core Red Hat Linux operating system, and the core 2,500 or so applications that are distributed with RHEL. These are also distributed in Fedora Core, either electronically or on a DVD, and all of the software has its dependencies worked out. Of course, Fedora Core supports many more applications, and there is another set of 3,000 or so applications that are called Fedora Extras, which are commonly used by Linux shops but which are not in the core build. Now, Anaconda can use a network connection--a TCP/IP Link based on either IPv4 or IPv6--and grab code at install time from the sites where those Fedora Extras are stored on the Internet and deal with their dependencies and install them as if they were on the Fedora Core DVD or ISO images.
The line between Fedora Core and Fedora Extras is going away, and Red Hat is clearly testing a way to do a build over the Internet. Such a capability will be used to not only grab software in the Fedora Extra stack, but to allow companies that deploy their own home-grown Linux applications or those from third parties to be able to reach into their own code repositories or those of their partners at build time and do an install all at once.
This specifications for this capability were created by Fedora Project members outside of Red Hat, according to Spevack. "The work that project members did and the package guidelines to build RPMs were so good that we adopted them internally for Fedora Core 6," he says.
Way back with Fedora Core 3, the project started weaving support for the Yum package manager into the software, which used to have a package manager called up2date. The up2date package manager is still what RHEL4 uses, but RHEL5 will use Yum 3.0. More importantly, the Anaconda installer is now Yum-aware, thanks to work that was done in Fedora Core 5. To make the transition easier for RHEL customers, up2date apparently will be used as a wrapper around Yum in RHEL5. Third-party code repositories will also make use of the Anaconda-Yum combination. Yum is, of course, the Yellowdog Update Modified package manager, which is a variant of the Yellowdog Update Package, or Yup, that the Yellowdog Linux project created to manage its applications. Yum is a version of Yup that is compatible with Red Hat Package Manager (RPM) programs. Yum is network-aware, which is what makes it so useful. Anaconda is not only Yum-aware now, but is also uses the Squashfs file system to compress and store the Fedora Core applications in a much smaller space.
Another big feature on the management front inside Fedora Core 6 is the graphical Virtualization Machine Manager. This is the graphical front end for Red Hat's implementation of Xen. The interface for this manager was constructed using a mix of Glade and GTK+ and its back-end logic that links into Xen was implemented in Python, in case you are curious.
The SE Linux security features of Fedora also get a graphical troubleshooting tool and the Nautilus file manager that is part of SE Linux has also been improved.
Fedora Core 6 is based on the Linux 2.6.18 kernel. That kernel has been tweaked so it knows how to support single-processor and multi-processor architectures. Up until now, if you had multi-processor or mutli-core machines, you had to load a different Linux kernel from machines with just one single-core processor. Now, Fedora just sniffs the machine and does what it needs to do to support whatever you have. The software runs on 32-bit X86, 64-bit X64, 32-bit PowerPC, and 64-bit PowerPC platforms, and is notably the first Fedora distribution to officially support Apple's Intel-based Macintosh computers.
All of the 2,500 applications that make up Fedora Core 6 have been rebuilt using what is called the DT_GNU_Hash. Hashing is not when you mix corned beef and potatoes, but a sophisticated programming technique that allows quick indexing of data by using mathematical functions to take a string of text and turn it into a number, which can be looked up more quickly than that string. Hashes and hash tables are woven into all kinds of applications, and the DT_GNU_Hash was created to make applications that use dynamic linking run faster. This function is built into the GNU glibc C library and uses precomputed hash values for the dynamic links. In initial tests, Red Hat is seeing a 50 percent performance improvement in Fedora Core 6 compared to earlier releases because the hash makes better use of processor caches.
Fedora Core 6 has the Gnome 2.16 and the KDE 3.5.4 graphical user interfaces, and includes performance enhancements to the ext3 and NFS file systems that are popular on Linux systems.
Spevack says that those who play around with Fedora Core 6 on their desktops will not see a big change when Red Hat Desktop comes out later this year. Exactly how much of Fedora Core 6 makes it into RHEL 5 remains to be seen, but it is a fair guess that a lot of this functionality will be hardened and ready for prime time by the time RHEL 5 ships.
RELATED STORIES
Bugs Delay Fedora Core 6 Linux Release
Red Hat Puts Out RHEL 5 Beta 1 Code
PowerPC Cell Chip Gets Fedora Linux Support
OpenVZ Project Gets Migration Feature, Supports Fedora Core 5
|