Hi all, as you know I'll be working on DevFS for Google Summer of Code 2009. Some of you may know me already either from IRC, from random rant at the bug tracker or from my clang related mails to this list. For those who don't, a brief introduction: I'm an Electronic Engineering Undegraduate at University College London, but I'm German, although I've lived most of my life in Madrid, Spain. I've been around the DragonFly BSD Project for 4 months now, mostly doing small stuff like fixing some minor bugs off the bug tracker and working on clang support for DragonFly. I started off with an I/O Scheduler Framework which is now stalled due to exams but I intend to continue to work on it after completing DevFS.
The aim of the GSoC project is to implement a Device File System (DevFS) in the DragonFly Kernel to replace the current way of handling dev nodes. I'm sure all of you know the advantages of a DevFS so I won't go into much detail, just a few points on how I intend to implement it. The idea is to implement DevFS using fileops and integrating it directly with make_dev and destroy_dev. There will also be a userland daemon which will receive notifications of new devices; this daemon will basically be used to keep a configuration file for devfs including permissions and hence telling the devfs in the kernel which permissions to use to create a specific node. It could also be used to run specific programs/scripts/commands whenever something new is attached. DevFS will also affect the disk subsystem because currently there is no active probing of disk slices and labels. For DevFS to work properly, this will have to be changed. I intend to keep a page on http://leaf.dragonflybsd.org/~alexh/ about the progress on DevFS. It currently is a bit outdated as there is still the original idea about a proposal for DevFS. Also, if you happen to look around, both the LLVM/clang and I/O Scheduler pages need a major overhaul; better to just ignore them right now. Sorry for the long mail, but I'm looking forward to hear any ideas/suggestions/comments about this. Cheers, Alex