Haiku

We are a project dedicated to the creation of a new open source operating system designed from the ground up for desktop computing called Haiku. Inspired by the BeOS, Haiku aims to provide users of all levels with a personal computing experience that is simple yet powerful, and free of any unnecessary complexities. Haiku is supported by Haiku, Inc., a 501(c)3 not-for-profit organization founded with the purpose of promoting our project.

Projects

add cpuidle support to haiku
In modern Operating Systems, power efficiency is one of the important areas. Many OSs make use of both Macro and Micro technology to improve its power efficiency. The former includes suspend to ram, suspend to disk etc. The later includes the so called tickless, cpufreq and cpuidle. Generally speaking, cpufreq is used to change the clock speed of the CPUs based on system load while cpuidle is used to put CPU into deeper idle states(for example, C2, C3 state on x86) when idle.
Currently, haiku lacks of deeper CPU idle state support. For example, on x86 during idle haiku only calls hlt instruction[1] which put CPU into C1 state. This project will add cpuidle support to haiku, including platform and driver independent framework and platform dependent drivers. This project will benefit haiku in power efficiency and will extends laptop's battery life under haiku.

BFS Partition Resizer
The goal of this project is to create a command line utility for resizing BFS partitions (more specifically, moving the end of the partition forwards or backwards). I would also attempt to add the resize functional to DriveSetup if there is time left for that.

NFSv4 client
The goal of this project is to develop a NFS client that will use the fourth version of the protocol including caching and delegations.

x86_64 port
My proposal is an initial port of Haiku to the x86_64 architecture. While this is not a goal for R1, it is something that I think will benefit Haiku in the long term, as 64-bit CPUs are pretty much standard in PCs these days. It is unlikely that I will be able to complete a full port during the GSoC coding period, however it should be possible to complete at least a port of the boot loader, kernel and some modules/drivers, as well as possibly a small subset of userland.