Summer of Code results: Efficient Wide-Character Regular Expressions

September 28, 2009 posted by Alistair Crooks

The 2009 Summer of Code project to implement efficient wide-character regular expressions for NetBSD was carried out by Matthias-Christian Ott, mentored by myself. This blog entry gives an overview of the progress and results of the project.

[Read More] [1 comment]


The state of accelerated graphics on NetBSD/sparc

September 03, 2009 posted by Michael Lorenz

Now that NetBSD/sparc switched to wscons in -current it can finally run the Xorg Xserver out of the box. This means we will support accelerated graphics in X and the kernel console on a lot more hardware than before with Xsun and friends, many with acceleration and in 24 bit colour if the hardware supports it.

[Read More] [1 comment]


Google Summer of Code: Miniaturise NetBSD

July 29, 2009 posted by Lloyd Parkes

NetBSD has a reputation for being somewhat minimalist, and it is widely used in embedded systems. The high level concepts behind miniaturising an operating system are quite straight forward and well understood. This project aims to provide NetBSD with an integrated system for constructing embedded systems so that system developers can get on with the job of implementing their application specific features.

[Read More] [1 comment]


GPIO Revisited

July 25, 2009 posted by Marc Balmer

NetBSD has had support for General Purpose Input/Output devices since the 4.0 release, when the GPIO framework from OpenBSD 3.6 was imported. GPIO devices, or gpios for short, provide an easy way to interface electronic circuits which can be as simple as a LED or that provide more complex functionality like a 1-Wire or I2C bus.

Since the import of the GPIO framework into NetBSD, I have reworked larger parts of that subsystem in OpenBSD to address some problems and drawbacks. I have now imported these changes into NetBSD and continued to improve on them. The new GPIO framework retains backwards compatibility while adding new features; integrates with the kauth(9) security framework, and has it's own config file format gpio.conf(5) and integrates with system startup scripts in /etc/rc.d.

[Read More] [7 comments]


NetBSD gets getdelim(3) and getline(3)

July 14, 2009 posted by Roy Marples

Last night I added getdelim(3) and getline(3) to NetBSD.

A few programs in base system needed to be changed due to having their own getline function, most of which aren't anything like getline(3). Hopefully there won't be much fallout in pkgsrc as a result.

getline(3) is prefered over over functions such as fgetln(3) and fgets(3) because it's standards based and you get a dynamic buffer for really really long lines. However, POSIX did drop the ball on making it a standard from the GNU extension - it should return 0 on EOF and more importantly be called fgetline. Oh well.

I shall be rolling getline(3) support into dhcpcd later, but I'll have to do a link test in the Makefile to see if we can use it. I'm unsure if I want to have a mini configure for dhcpcd or to keep using just make extensions ....



UDF enhancements (read-write CD/DVD file system)

July 13, 2009 posted by Reinoud Zandijk

UDF is a full read-write operating system independent file system to be used on CD and DVD media but also very usable on `flash media'. See the OSTA website and Wikipedia for a more in depth overview. A read-only version made it to NetBSD-4.0 and a full read-write version made it to NetBSD-5.0

Recent enhancements to UDF available in NetBSD-current and pulled up to netbsd-5 are

  • Accurate disc space calculation that won't allow overfilling discs that could previously panic the machine.
  • Rewritten read-modify-write backend.
  • Significant reduction of system time spend when encountering huge numbers of nodes.


    Google Summer of Code zfs-port project status update 2

    July 01, 2009 posted by Adam Hamsik

    ZFS as whole has 2 major parts the first one is ZVOL and the second one is ZPL. In my first status update I said that I had ported ZVOL layer to NetBSD, and I was able to create and use ZFS Zpools and Zvols (Logical partitions exported from one disk storage pool called zpool).

    Over the last few weeks I have worked on a ZPL port. ZPL is ZFS file system layer. I have ported zfs_vfsops.c file and zfs_vnops.c file to NetBSD. Today I have ZFS to state where I can mount ZFS data set, copy whole kernel source tree there and finally build NetBSD kernel on it.

    [Read More] [0 comments]


    Google Summer of Code: GPT bootloader

    July 01, 2009 posted by Mike M. Volokhov

    The GUID Partition Table is a new standard for disk partitioning. The GPT layout provides a set of advanced partitioning features including, but not limited to:

    • modern logical block addressing (LBA)
    • 64-bit LBA pointers, allowing partitions up to 8 Zbytes in size, and even bigger
    • suitable for disks with sector size, other than 512 bytes
    • by default up to 128 partitions per disk
    • backup partition table.

    The NetBSD already has support for GPT disks via dkwedges, but can't boot off a GPT partitioned disk. My GSoC project is to implement a GPT aware bootloader for the NetBSD operating system by extending its existing MBR/disklabel BIOS-based multistaged kernel loader.

    [Read More] [0 comments]


    Google Summer of Code: Efficient wide character regular expressions

    June 29, 2009 posted by Matthias-Christian Ott

    During this year’s Google Summer of Code I’m improving the performance of NetBSD’s regular expression library and add support to it for wide characters.

    We made good progress and I’m glad that I can announce that tre is very likely to replace the regular expression code in libc

    [Read More] [0 comments]


    Google Summer of Code: Improving RAIDframe parity handling

    June 21, 2009 posted by Jed Davis

    A NetBSD system, in order to tolerate disk failures, can use the software RAID driver raid(4). Currently, if that system is shut down uncleanly (e.g., loses power or crashes), then when it comes back up it will have to check the entire RAID set's redundancy information. This process can take many hours, during which it imposes a substantial load on the system. It is also a distinct disadvantage to using NetBSD in server applications, and the inclusion of a journaling filesystem in NetBSD 5 makes it all the more prominent.

    The goal of my Summer of Code project is to shorten that check from hours to minutes.

    [Read More] [0 comments]


    Google Summer of Code Generic file system mounting project

    June 21, 2009 posted by Arnaud Ysmal

    Progress report of the generic file system mounting GSoC project. This project aims to remove the struct <fs>_args opaque container (the data argument in the mount(2) system call) so as to get a generic way to mount a file system whatever its type is.

    [Read More] [0 comments]


    XML tools update

    June 20, 2009 posted by David Young

    My Google Summer of Code student, Nhat Minh Le, is working on a suite of simple, efficient, stream-oriented tools for processing XML on UNIX systems. Nhat Minh is making good progress on xmlgrep, a grep-alike program that understands XML syntax.

    Read about Nhat Minh's progress on his blog.

    Keep reading for my explanation of the niche where Nhat Minh's tools fit.

    [Read More] [1 comment]