More student project updates.

Submitted by: cnst@, Matus, and Fabio.
This commit is contained in:
Murray Stokely 2007-09-15 09:14:47 +00:00
parent fb2af8d45c
commit ab05f787d2
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/www/; revision=30782

View file

@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//FreeBSD//DTD HTML 4.01 Transitional-Based Extension//EN" [
<!ENTITY base CDATA "..">
<!ENTITY date "$FreeBSD: www/en/projects/summerofcode-2007.sgml,v 1.7 2007/09/15 08:16:03 murray Exp $">
<!ENTITY date "$FreeBSD: www/en/projects/summerofcode-2007.sgml,v 1.8 2007/09/15 08:45:45 murray Exp $">
<!ENTITY title "FreeBSD Summer of Code 2007">
<!ENTITY % navinclude.developers "INCLUDE">
<!ENTITY % developers SYSTEM "../developers.sgml"> %developers;
@ -94,19 +94,22 @@
<strong>Student:</strong> Matus Harvan<br>
<strong>Mentor:</strong> &a.mlaier;<br>
<strong>Summary:</strong>
<p>The project implements the Super Tunnel
Daemon, a tunneling daemon using plugins for different
encapsulations and automagically selecting the best
encapsulation in each environment. When the environment
change, the user should not notice the transition to a
different encapsulation except for a small delay. Connections
established within the tunnel shall seamlessly migrate to
a different encapsulation. In this way, mobility is
supported as well, even to the extent of changing between
different physical network interfaces, e.g. disabling the
wireless interface and plugging in an ethernet cable. New
encapsulations can easily be added in the future using the
plugin interface.</p>
<p>The daemon and several plugins have been written. The daemon
now has multi-user support, i.e., one server supports multiple
clients. Plugins implemented so far are UDP, TCP, ICMP,
DNS. There are also sys patches allowing to listen on all
unused UDP and TCP ports as well as processing ICMP echo
requests in the user space.</p>
<p>Missing features:</p>
<ul>
<li>more plugins (HTTP, SSH,...)</li>
<li>config file format and parsing</li>
<li>and some more...</li>
</ul>
<p>More details are available at
<a href="http://wiki.freebsd.org/mtund">http://wiki.freebsd.org/mtund</a></p>
<strong>Ready to enter CVS:</strong> not determined yet
</li>
@ -261,12 +264,31 @@
<strong>Student:</strong> Constantine A. Murenin<br>
<strong>Mentor:</strong> &a.syrinx;<br>
<strong>Summary:</strong>
<p>This project involved porting the sysctl hw.sensors framework and
related utilities from OpenBSD to FreeBSD. Apart from the
framework itself, lm(4) and it(4) where ported. The goal was to
enable users to access temperature and other sensors in a
unified fashion from sysctl, systat, sensorsd and
ports/sysutils/symon.</p>
<p>The GSoC2007/cnst-sensors project was about porting the
sysctl hw.sensors framework from OpenBSD to FreeBSD. The
project was successfully completed, and is pending final
<a href="http://lists.freebsd.org/pipermail/freebsd-hackers/2007-September">review
and integration</a> into the CVS tree.</p>
<p>The sensors framework provides a unified interface for
storing, registering and accessing information about hardware
monitoring sensors. Sensor types include, but are not limited
to, temperature, voltage, fan RPM, time offset and logical
drive status. In OpenBSD base system, the framework spans
sensor_attach(9), sysctl(3), sysctl(8), systat(1), sensorsd(8)
and ntpd(8). Several third-party tools are also available,
for example, a plug-in for Nagios and ports/sysutils/symon.</p>
<p>As a part of this project, all major parts of the framework
were ported, including sysctl, systat and sensorsd. Some
drivers for most popular Super I/O Hardware Monitors were
ported, too: it(4), supporting most contemporary ITE Tech
Super I/O, and lm(4), supporting most contemporary Winbond
Super I/O. Moreover, some existing FreeBSD drivers were
modified to use the new framework, for example,
coretemp(4).</p>
<strong>Ready to enter CVS:</strong> after more testing and review
</li>
@ -428,19 +450,28 @@
<strong>Mentor:</strong> Luigi Rizzo<br>
<strong>Summary:</strong>
<p>Linux KVM is a Virtual Machine Monitor, part of the Linux
kernel, that uses Intel VT-x Intel VT-x or AMD-V extensions
for x86 processors to create a full virtualization
environment. This project consisted of porting Linux KVM to
the FreeBSD kernel.</p>
kernel, that uses Intel VT-x or AMD-V extensions for x86
processors to create a full virtualization environment. This
project consists in porting Linux KVM to the FreeBSD
kernel.</p>
<p>Since Linux KVM has a structure similar to that of a device
driver (actually, it is a device driver, from many points of
view,) core kernel changes where not be required, and the final
product of this project is an external loadable kernel
module, exporting an interface based on ioctl() calls to a
device descriptor. Part of the project was also the
porting of the userspace client for that interface, a modified
qemu that uses KVM for host execution.</p>
view) core kernel changes are not required to support it, so
it is an external loadable kernel module, exporting an
interface based on ioctl() calls to a device descriptor. Part
of the project was also the porting of the userspace client for
that interface, a modified qemu that uses KVM to execute its
guests.</p>
<p>A project snapshot at the end of the Summer of Code is
available. It supports only AMD-V (SVM) on amd64, as this was
the hardware used during the development (adding support for
other platforms is in progress); it is still highly
experimental code, but it can boot FreeBSD guests.</p>
<p>For code, further details, and future developments, please refer to:
<a href="http://feanor.sssup.it/~fabio/soc07/">http://feanor.sssup.it/~fabio/soc07/</a></p>
<strong>Ready to enter CVS:</strong> not determined yet
</li>
</ul>