BSDTalk has a 38 minutes interview with some FreeBSD developers at last weeks BSDCan 2009: Robert Watson, Brooks Davis, Hiroki Sato, Philip Paeps, and George V. Neville-Neil. They talk about the recent FreeBSD 7.2 release, and what is coming for 8.
Mail system for distributed network. Presentation held by Andrey Zakharchenko at AsiaBSDCon2009:
Sometimes it is necessary to organize a mail domain for large and geographically distributed network, which may consist of independent subnets with their own separate Internet connections (and some of those connections may be not very good, or not very fast, or not very cheap). But users of the network need mail system, and it should be fast, convenient, and reliable.
In this paper some ways of distributed mail domain implementation are discussed, and a new one is introduced. The new method allows us to implement distributed mail system fast and convenient for end users, convenient for administrators, using network traffic sparingly, and reliable enough (at least without single point of failure).
Kristaps Dzonsons’ presentation: Deprecating groff for BSD manual display, AsiaBSDCon2009:
There are few GPL-licensed utilities remaining in BSD base installations, most of them written in C++. groff, GNU’s roff text-processing language implementation, claims a significant share of this count. Why does groff still persist in base? Although its text-processing features have been mostly usurped by LaTeX, groff persists in order to render Unix manual pages. In this paper, we introduce mdocml, a compiler for mdoc documents. mdocml replaces a very specific function of groff — namely, that of rendering mdoc documents for one or more output devices. It’s our intention, in contributing this tool, to deprecate groff as the default utility for Unix manual page display; by doing so, and presuming that manual display is the primary usage of groff, we intend to decouple BSD base installations from another GPL and C++ tool.
This paper describes low level design and implementation of the FreeBSD operating system port for the MPC8572 system-on-chip device, a high-end member of the Freescale PowerQUICC III family. The primary focus of this work is describing how the multi-core operation was brought forward and full SMP capabilities achieved, but other major components developed in the course of this project, device drivers in particular, are also covered.
The FreeBSD 2009 Quarterly Status Report is now available (Jan – Mar):
Since the last Status Reports there has been interesting progress in FreeBSD Development. FreeBSD 7.2 was released just a few days ago. Some of the highlights include: Support for superpages in the FreeBSD Virtual Memory subsystem. The FreeBSD Kernel Virtual Address space has been increased to 6GB on amd64. An updated jail(8) subsystem that supports multi-IPv4/IPv6/noIP and much more.
Table of contents:
- Clang replacing GCC in the base system
- Device mmap() Extensions
- Release Engineering
- Sysinfo – a set of scripts which document your system
- TrustedBSD MAC Framework in GENERIC
- VFS/NFS DTrace Probes
- VirtualBox on FreeBSD
FreeBSD Team Reports
Google Summer of Code
Whole report below: [Read more…]
I sent an email to Dylan Cochran with some question regarding his Evoke BSD project. It’s been sitting in my email for a little while, so it’s time to post it.
These were my questions and Dylan’s answers:
1) Can you give a quick update on the state of the project and what you’re planning for 2009.
We are going to make a release soon, and have been working on solidifying procedures, adding documentation, etc. A lot of the unexciting phases.
2) Can you explain how Evoke is different from nanoBSD.
NanoBSD, TinyBSD, PicoBSD, etc, are toolkits to build FreeBSD for embedded devices.
Evoke is not primarily a toolkit, though we have a flexible build system similar to TinyBSD’s, it’s not intended to be used by the users.
I could spend several paragraphs explaining out differences in detail, however, I’d rather talk about our goals. For one, we have tried to clean up our namespace; so that there are no collisions in operation. This means that we can have multiple versions of evoke on a disk, support multiple architectures per version, and even, multiple abis per version. Since the beginning, we’ve built for 6.x and 7.x at the same time, and we’ve also had amd64 and i386 support being built at the same time (Unfortunately, due to economics, we can’t build the amd64 binaries at this time)
The active version, abi, architecture, they are all seperated on several levels. This allows us to remove restrictions that prevent users from running arbitrary i386 binaries on amd64, from moving a
machine from i386 to amd64, to i386, to back again, without losing data or putting the system in an inconsistant state if problems occur.
We also abstract as many interfaces as we can, that may be architecture or abi specific. For example, rather then using mount, you would use mounter, which has a more abstract interface for
handling various filesystems, native, fuse, or otherwise. This grew out of the necessity of dealing with many different mount interfaces between various kernels.
This is a small sample, there is much more. I’ve been pulling in a lot of design elements from a lot of sources, and using the most effective ones for our needs. It’s deceptively simple.
3) When are you planning to release a new version (alpha, beta?)
We are nearing our first ‘real’ release, 0.1. Though we aren’t there yet, there are some autoconf related bugs in the 6.4 target, and some missing features that I consider show stoppers. A big problem is Xorg support, as Xorg and it’s modules take up a large amount of disk space; inflating our image size signficantly. I would rather use kdrive, and build Xvesa, but all my attempts at porting it so far have
failed. So it’s still up in the air on whether or not X support will be in 0.1.
4) Are you planning to track FreeBSD releases (like PC-BSD, FreeNAS, pfSense etc) as the underlying base or are you forking (like MidnightBSD or DragonFlyBSD)
We build for multiple targets, FreeBSD 6.4, 7.1, and even 8-CURRENT. We also have support for other kernels, Linux, Plan 9, etc, but the build system and scripts don’t have any real support for it.
5) Does the project have a new logo yet?
6) Any other things you want to let the BSD community know?
We are always looking for help, our blog has an entry on contributions, and a list of things we are having problems with. If anyone has any knowledge on these problems (especially kdrive) I will be grateful.
Many thanks to Dylan for his time and for explaining a bit more about the background of Evoke.
Tonight I’ve updated the FreeBSD Flavours and projects page. There was a broken link, some missing pictures and the content had to be updated here and there.
Please have a look and let me know what you think and/or if anything is missing.
Also, I’d like to include some non English FreeBSD projects on there as well, and I need your help really. If you’re aware of, say, a Russian FreeBSD project (by Russions, for Russions), I’d love to hear from you. So if you know a localised, non-English FreeBSD project, please let me know, so they can be included here.
Android is an exciting and much promising (open source) mobile phone platform developed by Google.
Android 1.5 (Cupcake), has now been released and promises to be(come) a strong contender for Apple’s iPhone. The first Android powered netbook is coming, Acer is working on several Android devices, and Samsung is releasing the Android I7500 phone.
So, why am I writing this?
First, Android is exciting; second, there’s a project working on porting the Android framework to FreeBSD: BSDroid, and thirdly, the Android software uses bits of NetBSD and OpenBSD userland code.
The main goal of project is to provide native binaries for tools and make it possible to develop Android applications on FreeBSD powered system without Android SDK for Linux.
Visit BSDroid for more information and downloads
The developers of the CoreBoot project have released FlashROM 0.9 which is able to read, delete, rewrite and verify the flash chips which store a systems BIOS.
coreboot (formerly known as LinuxBIOS) is a Free Software project aimed at replacing the proprietary BIOS (firmware) you can find in most of today’s computers. It performs just a little bit of hardware initialization and then executes a so-called payload.
Benefits: 100% Free Software (GPL), no royalties, no license fees! Fast boot times (3 seconds to Linux console)
FlashROM runs on FreeBSD, Linux, Solaris and Mac OS X and allows re-flashing to take place from the command line on a running operating system. With FlashROM it is possible to re-flash the BIOS without rebooting the PC at all. Most manufacturers’ flash programming utilities only support Windows / DOS and require you to reboot the PC in order to re-flash the BIOS. The FlashROM program only requires root access to a system and can be run remotely via SSH.
A wide range of motherboards and flash chip-sets (157 flash chip families and 75 different chip-sets) are supported. There’s also support for dozens of non-standard x86 motherboards are supported in the 0.9.0 release.
ZFS is a relatively new and exciting file storage system developed by Sun.
The features of ZFS include support for high storage capacities, integration of the concepts of filesystem and volume management, snapshots and copy-on-write clones, continuous integrity checking and automatic repair, RAID-Z and native NFSv4 ACLs. – Wikipedia
This page has some specific FreeBSD info relating to ZFS.
Interested to find out more about the strengths of ZFS? Have a look at the video’s below: