Monthly Archive for October, 2009

New FreeBSD Foundation Project: Flattened Device Tree

FreeBSD foundation logoThe FreeBSD Foundation has announced another funded project!

“Rafal Jaworowski and Semihalf has been awarded a grant to provide FreeBSD with support for the flattened device tree (FDT) technology. This project allows for describing hardware resources of a computer system and their dependencies in a platform-neutral and portable way.

The main consumers of this functionality are embedded systems whose hardware resources assignment cannot be probed or self-discovered.

The FDT idea is inherited from Open Firmware IEEE 1275 device-tree notion (part of the regular Open Firmware implementation), and among other deployments is used as a basis for Power.org’s embedded platform
reference specification (ePAPR).

Rafal JaworowskiThanks to this project, embedded FreeBSD platforms will grow in a uniform and extensible way of representing hardware devices, compliant with industry standards (ePAPR, Open Firmware), independent of architecture and platform (portable across ARM, MIPS, PowerPC etc.),

said Rafal Jaworoski, FreeBSD Developer.

Semihalf is a privately owned company, based in Krakow, Poland. They specialize in embedded systems design and development, with expertise in both software and hardware. Among their portfolio are FreeBSD ports to high-end embedded processors (including multi-core) with a wide range of peripheral drivers (storage, networking, pattern matching, security engines etc.); most of this work is publicly available from the FreeBSD repository.

You can find out more about the project at http://wiki.freebsd.org/FlattenedDeviceTree.

This project will complete by February 2010.”

If you want, you can support this project too.

New FreeBSD Foundation Project: HAST

FreeBSD foundation logoThe FreeBSD Foundation has announced that is funding a new funded project: HAST

“Pawel Jakub Dawidek has been awarded a grant to implement storage replication software that will enable users to use the FreeBSD operating system for highly available configurations where data has to be shared across the cluster nodes. The project is partly being funded by OMCnet Internet Service and TransIP BV.

The software will allow for synchronous block-level replication of any storage media (GEOM providers, using FreeBSD nomenclature) over the TCP/IP network and for fast failure recovery. HAST will provide storage
using GEOM infrastructure, which means it will be file system and application independent and could be combined with any existing GEOM class. In case of a master node failure, the cluster will be able to
switch to the slave node, check and mount UFS file system or import ZFS pool and continue to work without missing a single bit of data.

High-availability is the number one requirement for any serious use of any operating system,

Pawel Jakub Dawideksaid Pawel Jakub Dawidek, FreeBSD Developer.

Highly available storage is one of the key components in such environments. I strongly believe there are many FreeBSD users that have been waiting a long time for this functionality. I’ll do my best to deliver software that matches FreeBSD quality and that will satisfy the needs of our users.

Pawel has been an active FreeBSD committer since 2003. During this period, he has touched almost every part of the kernel. But, his main interest in FreeBSD is storage and security related topics. Pawel is the author of various GEOM classes (eli, mirror, gate, label, journal, hsec, etc.), geom(8) utility, various opencrypto improvements as well as port of the ZFS file system from OpenSolaris to FreeBSD.

The project will complete by February 2010.”

If you want, you can support this project too.

FreeBSD Release Process

Ivan Voras sumarised a little while ago the FreeBSD release procedure:

“It goes something like this (or at least it did/will be for 8.0-RELEASE):

  1. An approximate date is set on one of the DevSummits – this is usually of the granularity of “autumn 2009″ rather than a specific day.
  2. As the set date approaches, a more specific deadline is set for a “code freeze”.
  3. Developers try to get as much code into the tree as they can before the code freeze – this is still “free-for-all” time.
  4. After the code freeze, only code specifically approved by the release engineering (releng) team can go in.
  5. During various BETA releases, a RELENG branch – what is known for the users as a “STABLE” branch is created from VCS “head”. Some early beta releases might be cut of the “head” of the tree, latter from the RELENG branch.
  6. Release candidates are cut from the RELENG (STABLE) branch. This is where debugging is turned off system-wide and the performance is as it should be in the released versions. Debugging is never turned back on for STABLE branches (except of course that developers have it on by themeselves).
  7. After a certain amount of BETA and RC releases, the number of which is determined ad-hoc as needed, a release comes out. Everyone is happy, especially developers who can now commit freely to “head” again.
  8. The release engineering period for a major .0 release takes any time from a month to several months.”
  9. To find out more about FreeBSD release engineering, visit the FreeBSD Release Enginering page or Murray Stokely’s Release Document.

    FreeBSD 6.3 end of life

    On January 31st, FreeBSD 6.3 will reach its End of Life and will no longer be supported by the FreeBSD Security Team. Users of this release are strongly encouraged to upgrade to a newer release before that date — more conservative users will probably wish to upgrade to FreeBSD 6.4 or FreeBSD 7.1 (which are both extended-support branches), while others will probably wish to upgrade to FreeBSD 7.2 or the upcoming FreeBSD 8.0.

    Read the announcement

    Clang/LLVM support on FreeBSD

    A couple of developers are working to replace GCC in the FreeBSD base system with clang/LLVM. Clang is a compiler built on the Low Level Virtual Machine compiler infrastructure. Both clang and llvm are released under a BSD like license, unlike GCC that’s GPL licensed.

    Roman Divacky has an update on the project:

    The situation as of late September:

    • i386 – kernel boots, world needs little hacks but works
    • amd64 – kernel compiles but does not boot, world needs little hacks
    • ppc – broken because of unknown RTLD bug

    All other platforms are untested. Ie. this is a regression from the situation in early spring when we could boot amd64 as well…

    A lot has happened over the spring/summer – amd64 got proper mcmodel=kernel support, compiler-rt was introduced (paving the way for libgcc replacement), we ran two experimental ports build to see how clang does there, C++ support is able to parse devd.cc without warnings, we got kernel working with -O2, we promoted FreeBSD to be officially supported plaform in LLVM etc. etc.

    The developers could do with a bit of support and help with the testing. Can you?

    We have problems though: we don’t have manpower for testing (thats why amd64 kernel stopped booting) and developers for integrating stuff into FreeBSD (maintaining ports etc.). So if you are interested in helping please contact me or join us on IRC in #freebsd-clang on irc.oftc.net. We especially need amd64 testers (because of the amd64 kernel bug) and people with minor platforms like arm/mips/sparc to see how clang/llvm performs there and improve that
    situation.

    FreeBSD Quarterly Status Report (April-Sep 2009)

    freebsd project logo 100x100The FreeBSD Project has released it’s ‘quarterly’ update with an overview of current and finished projects:

    This report covers FreeBSD related projects between April and September 2009. During that time a lot of work has been done on wide variety of projects, including the Google Summer of Code projects. The BSDCan conference was held in Ottawa, CA, in May. The EuroBSDCon conference was held in Cambridge, UK, in September. Both events were very successful. A new major version of FreeBSD, 8.0 is to be released soon

    Table of contents:

    Google Summer of Code

    Projects

    FreeBSD Team Reports

    Network Infrastructure

    Kernel

    Documentation

    Architectures

    Ports

    Miscellaneous

    Could Oracle embrace BSD?

    Mikel King thinks Oracle should embrace BSD:

    However, Sun has utterly failed in that respect garnering little support in the general Open Source community. The would have fared better served retooling Solaris into a commercial entity based on one of the BSDs like FreeBSD, NetBSD or OpenBSD. Often overlooked by Linux junkies the BSDs have commercial friendly licensing which is why Apple embraced FreeBSD as the foundation of Mac OS X. The difference is that Oracle should embrace the chosen BSD operating system and develop Open Solaris as an add-on. In addition they should openly embrace the BSD community fostering active development in the product.

    Following this concept Oracle could make Open Solaris a desktop product for installation upon the appropriate BSD operating system. In addition they could offer their code base, releasing much needed drivers into the BSD community. The community would benefit from the advances in the SPARC platform, and Oracle would benefits from the access to a wider variety of system architectures.

    continues…

    Oracle; ready for dinner, if only the EU would stop messing with the soup…

    BSD Professional Job Task Analysis Survey

    The BSD Certification group has posted a survey that is meant to help determine the tasks that should be a part of the BSD Professional Certification Exam (BSDP).

    The BSD Professional Certification Exam is a more in-depth exam than our BSD Associate exam. The typical BSD Professional is experienced in using one or more versions of BSD such as NetBSD, FreeBSD, OpenBSD, DragonFly, or other BSD system for several years; may be employed as a senior BSD administrator; and typically has an in-depth knowledge of shell scripting, user administration, file and filesystem maintenance, kernel tuning, and many other technical tasks.

    Have a look and/or complete the survey here.

    Debian pushes development of kFreeBSD port

    Debian GNU/kFreeBSD has been around for a while, but now it will be an official part of the distro, combining the strength FreeBSD kernel with the GNU C library and userland utilities.

    The Debian Project has announced that it sees the port of the Debian system to the FreeBSD kernel fit to be handled equal with the other release ports. The upcoming release codenamed ‘Squeeze’ is planned to be the first Debian distribution to be released with Linux and FreeBSD kernels.

    The kFreeBSD architectures for the AMD64/Intel EM64T and i386 processor architectures are now release architectures. Severe bugs on these architectures will be considered release critical the same way as bugs on other architectures like armel or i386 are. If a particular package does not build or work properly on such an architecture this problem is considered release-critical.

    Debian’s main motivation for the inclusion of the FreeBSD kernel into the official release process is the opportunity to offer to its users a broader choice of kernels and also include a kernel that provides features such as jails, the OpenBSD Packet Filter and support for NDIS drivers in the mainline kernel with full support.

    As usual some think it’s an odd match and a waste of time and resource, others see it as a nice combination a development.

    Wowza Media Server FreeBSD port

    Dru mentiones thatWowza Media Server Pro, a commercial streaming server, was ported to FreeBSD.

    One may think that this is just another ported software to the already huge collection of FreeBSD’s ports. But this is something more, as FreeBSD has just expanded its possibilities in the commercial streaming area.

    The port was made by talented Polish engineers from InnerVision who are devoted to free and open source communities. It’s not the first FreeBSD port they have created, and as they say, definitely not the last.

    Read post