Journal of the Association for Computing Machinery at UIUC
foo
foo
[ Home ]

Linux Users Group

By Sean O'Connor

This spring, the Linux Users Group is keeping very busy! We have an EOH project that has been very interesting and educational. The EOH project team took on the daunting task of writing a device driver, and prevailed.

We coded a kernel module for the Metrabyte DASH-16 family of data-acquisition boards, an ISA peripheral popular in lab settings. It has 16 single-ended A/D input channels or 8 differential inputs. This ISA-card is used by the CS department's own Professor Sylvian Ray to read sound data for advanced projects. This will enable him to use the Linux OS for some of his future projects, which he was unable to do previously. We hope to produce and maintain a release-quality version of the software, and make it widely availible for Linux-based PC's to use in scientific measurement and other A/D & D/A applications.

The DASH-16 transfers data over the PC's DMA controller, which is not a pretty device to work with. Linux, however, nicely hides a lot of the sheer ugliness of the PC architecture, providing handy functions for I/O, DMA transfers, and interrupt handling. We coded an interrupt (IRQ) service routine, standard file operation functions, hardware probing, and "ioctl" functions. Sound mildly intimidating? Sound fun? Good, that's what EOH is for :)

Our project also involved reading quite a bit of kernel and device driver code, and learning a great deal about the internal workings of the Linux kernel. I think we can safely say that this has given us new respect for the work and planning that has gone into creating and expanding the Linux system, and also helped us understand a great deal about how an OS really works. You don't get that kind of real-world experience by sticking to your average lame CS homework.

Another very important part of LUG is user support for Linux around campus. We put on an "Install-Fest" in mid-February, when we presented common installation procedures for popular distributions of Linux. We then invited prospective Linux users to come spend an afternoon installing linux on their own computers with the help of our more experienced members. This is always a popular way to introduce Linux to interested people who may not have the resources to go it alone.

On the horizon, we hope to get around to one more project this spring (implementing "savecore", a real help to kernel debugging, in the Linux kernel), as well as producing some documentation for helping future Linux users with the UIUC network, printing, and dialup environments.

The UIUC LUG meets at 8pm every Tuesday in 1102 DCL. See our newsgroup, uiuc.sw.linux, and our homepage. Come join us!