[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

GSoC proposal, device driver glue code

From: Anastassios A. Nanos
Subject: GSoC proposal, device driver glue code
Date: Thu, 22 Mar 2007 23:16:20 +0000
User-agent: Icedove (X11/20061220)

Hi there!
This is my first mail to the list.

I'm interested in submitting an application to GSoC for the Hurd project concerning the device driver glue code.
The proposal is @ http://www.cslab.ntua.gr/~ananos/proposal.html

my first try for the abstract produced this:

The GNU/Hurd running on top of GNU/Mach is a free Operating System (free as in freedom). The Hurd is a set of "servers" that run over the Mach micro-kernel providing support for various tasks needed to complete the tasks of a generic OS. It has not been released yet, but it's on a growth trajectory - being constantly developed and improved based on a stable snapshot. It only supports i386 architecture and a set of small-range hardware components. This is due to the way the device driver framework is designed. The device drivers used are those of the Linux Kernel (versions 1.3 to 2.0) being emulated by means of a framework designed in 1996 (and a lot alike ndiswrapper). Glue code has been added in GNU/Mach to support various features needed by the Linux Kernel and it's drivers. The purpose of this proposal is to update gnumach's device support: specifically, I aspire to rewrite and extend the glue code residing in GNU/Mach source tree so as to support modern hardware with Linux Kernel's device drivers (versions 2.6.x) in the bosom of Google's Summer of Code program and the GNU/Hurd project developers.

Redesigning the device driver framework of GNU/Mach is an intriguing task. However, the project's perspective is to be stable enough to be released while being able to support a wide range of common hardware used nowadays.

The device driver glue code used currently in GNU/Mach is by and large outdated. Using the existing code and design as a starting point, the Linux Kernel device drivers as the core and help provided by the GNU/hurd project maintainers, I intend to rewrite the glue code needed to support updated Linux Kernel's device drivers. The current framework, as it stands, necessitates the introduction of the following changes in three dimensions. At first, the device drivers have to run unchanged. This means that the glue code has to be designed as a layer between the real driver code and GNU/Mach's way of interfacing with devices. Next, various adjustments have to be introduced so as to implement features that the Linux Kernel drivers need to run smoothly. Finally, the code has to be fully documented, so as to render the task of maintaining as easy as possible.

I would really appreciate some feedback. Sorry if this mail appears as spam to you.

Thank you in advance for your time.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]