diff --git a/en/projects/summerofcode.sgml b/en/projects/summerofcode.sgml
index 7d33d60cb6..e1355195b8 100644
--- a/en/projects/summerofcode.sgml
+++ b/en/projects/summerofcode.sgml
@@ -1,538 +1,137 @@
-
+
%developers;
]>
&header;
-
The FreeBSD Project is excited to take part in the Google Summer of Code
- 2006. This project endeavors to fund students to contribute to
- an open source project over the summer break.
+The FreeBSD Project was a successful mentoring organization in the
+ Google Summer of
+ Code. This program funds students to contribute to an open
+ source project over the summer break. We had dozens of successful
+ students working on FreeBSD as part of this program in 2005 and 2006.
-Student Projects
-
-
-
-| Student: | Spencer Whitman |
-| Summary: | K - The Kernel meta-language |
-| Mentor: | &a.phk; <phk@FreeBSD.org> |
-| |
-
-| Student: | Shteryana Sotirova Shopova |
-| Summary: | Integrated SNMP monitoring |
-| Mentor: | &a.bz; <bz@FreeBSD.org> |
-| Web: | Wiki |
-| |
-
-| Student: | Clement Lecigne |
-| Summary: | IPv6 stack vulnerabilities |
-| Mentor: | &a.gnn; <gnn@FreeBSD.org> |
-| |
-
-| Student: | Roman Divacky |
-| Summary: | Linux emulator |
-| Mentor: | &a.netchild; <netchild@FreeBSD.org> |
-| Web: | Wiki |
-| |
-
-| Student: | ADAM David Alan Martin |
-| Summary: | AutoFS on FreeBSD 6 |
-| Mentor: | &a.benno; <benno@FreeBSD.org> |
-| |
-
-| Student: | Gábor Kövesdán |
-| Summary: | Improving FreeBSD Ports Collection |
-| Mentor: | &a.erwin; <erwin@FreeBSD.org> |
-| Web: | Wiki |
-| |
-
-| Student: | Ryan Beasley |
-| Summary: | Syncing with the 4Front Technologies OSS v4 API |
-| Mentor: | &a.ariff; <ariff@FreeBSD.org> |
-| |
-
-| Student: | Paolo Pisati |
-| Summary: | Study, analyze and improve the interrupt handling infrastructure in FreeBSD |
-| Mentor: | &a.jhb; <jhb@FreeBSD.org> |
-| Web: | Wiki |
-| |
-
-| Student: | Yuan, Jue |
-| Summary: | Integrate Xen Support to FreeBSD |
-| Mentor: | &a.kmacy; <kmacy@FreeBSD.org> |
-| |
-
-| Student: | Christopher Jones |
-| Summary: | Jail Resource Limits etc |
-| Mentor: | &a.kmacy; <kmacy@FreeBSD.org> |
-| Web: | Wiki |
-| |
-
-| Student: | Michael Bushkov |
-| Summary: | Nss-LDAP importing and nsswitch subsystem improvement |
-| Mentor: | &a.ume; <ume@FreeBSD.org> |
-| Web: | Wiki |
-| |
-
-| Student: | Markus Boelter |
-| Summary: | Bundled PXE Installer |
-| Mentor: | &a.ps; <ps@FreeBSD.org> |
-| |
-
-| Student: | Dongmei Liu |
-| Summary: | Provide a set of default SeBSD policy for many common network services on FreeBSD 6.0, develop a policy analyse tool and a policy configure tools for SeBSD |
-| Mentor: | &a.silby; <silby@FreeBSD.org> |
-| |
-
-| Student: | Ivan Voras |
-| Summary: | FreeBSD GEOM Storage Virtualisation Layer (gvirstor) |
-| Mentor: | &a.pjd; <pjd@FreeBSD.org> |
-| |
-
-
-
-See also Wiki and
-Google pages.
-
-
-Example Proposal Ideas
-
-In addition to the student project ideas listed below, the FreeBSD
-Project maintains a list of general projects looking for volunteers here.
-
-
-Userland / Installation Tools
-
-
- - Bundled PXE Installer: It would be great to
- have a bundled PXE installer. This would allow one to boot an
- install server from a FreeSBIE live CDROM on one box, set the BIOS
- on subsequent boxes to PXE boot, and then have the rest happen by
- magic. This would be very helpful for installing cluster nodes,
- etc.
-
- - Fully Integrated SNMP monitoring: Plugins for
- our BSNMP pieces to monitor elements of system state such as load,
- disk space, VM statistics, entropy, firewall rules and states,
- sendmail queues and accepts/rejects, and the like. An SNMP client
- that could pull and centralize the data gathering, render it,
- etc. &a.philip;, &a.glebius;, &a.harti;, and &a.rwatson; are
- coordinating.
-
- - Integrate Xen Support: Support for the Xen virtual
- machine monitor is coming into FreeBSD -CURRENT, so the
- installer could be updated to make it possible to setup a Xen
- system with several FreeBSD nodes, etc. Please coordinate with
- &a.kmacy; who has done work
- in this area.
-
- - Improve our regression testing system: Nik
- Clayton has written a regression test infrastructure using Perl.
- More of the regression tests should be made to work with libtap.
- There are two main parts to it. First, many of the existing tests
- should be moved from using assert() to using ok() and friends from
- libtap. Second, more regression tests should be written.
- Students familiar with scripting languages and software testing
- are encouraged to work on this. &a.nik; is the coordinator.
-
-
- - Tracking performance over time: One of the major
- issues in a project the size of FreeBSD is monitoring changes in
- performance characteristics over time. Doing this requires several
- things. Those include a suite of appropriate tests, hardware to run
- the tests on, a database to store results in, and software to
- extract interesting results and display them. Solving the whole
- problems is probably beyond the scope of one summer's work, but an
- interesting subset should be manageable. &a.brooks; is the coordinator.
-
- - Improvements to FreeBSD's userland profiling:
- There are a number of enhancements possible to FreeBSD profiling
- infrastructure: (a) allowing the profiling clock used by executables
- compiled for profiling to be driven by hardware performance monitoring
- counters, (b) enhancing gprof(1) to profile dynamically linked executables,
- and (c) making gprof(1) and moncontrol(3) to be architecture independent.
- &a.jkoshy; is the coordinator.
-
- - A GUI front end for hwpmc(4): Create a GUI
- tool that can collect performance data using hwpmc(4) and display
- it visually. In brief such a tool would offer: live and offline
- analysis of a hwpmc(4) data stream, visual indication of hotspots
- in executables and shared libraries with the ability to drill down
- to an annotated source or machine code listing, system-wide as well
- as process-specific analyses, visual representations of callgraphs.
- &a.jkoshy; is the coordinator.
-
- - BSD licensed API compatible version of GNU
- readline: Create a cleanroom implementation that is API
- compatible with GNU readline but which is not encumbered by the
- GPL. &a.jkh; is the
- coordinator.
-
-
-
-Filesystem
-
-
- - inode versioning: Introduce an inode version
- number into UFS, so we can store inodes in different formats. As
- an example of how to use this, introduce a new inode format that
- has a 32 bit link count field. &a.dwmalone; is the
- coordinator.
-
- - Autofs: Create the autofs filesystem from a
- specification. Candidates should have some filesystem knowledge
- and network filesystem knowledge. Kernel transport and
- interaction with the "amd"
- automounter needs to be completed. &a.alfred; is coordinating.
-
- - Logical Volume Manager
-
-
-
-
-Networking
-
-
-
- - IPv6 stack vulnerabilities: Review the last few
- years worth of IP stack vulnerabilities. Check that these have been
- fixed in the IPv6 stack too. Fix ones that haven't been fixed. &a.dwmalone; is the
- coordinator.
-
- - IPv6 feature parity: Review new features that
- have been added to the IP stack (hostcache, TCP MD5 checksums,
- ...). Check if these include IPv6 support. Implement if it
- hasn't. &a.dwmalone; is
- the coordinator.
-
- - NFS Lockd (improve semantics): Improve the
- semantics of the NFS lockd in FreeBSD. Apple has made certain
- enhancements that can be leveraged in our code base. Implement
- state recovery in the lockd. Candidate would learn how to port
- code from one kernel to another as well as how to maintain state
- on the client side. This would be a good resume addition. &a.alfred; is coordinating.
-
- - NFS Lockd (kernel implementation): Improve the
- semantics of the NFS lockd in FreeBSD. Moving the lockd
- implementation into the kernel provides several key performance
- and semantic improvements. Candidates should have a good
- understanding of NFS, locking, RPC and kernel networking. This is
- a great resume addition, providing you want to be saddled with
- "knowing NFS" for the rest of your career, it is not for the faint
- of heart. &a.alfred; is
- coordinating.
-
-
-
-
-Security
+Past Student Projects
+For a complete list of student projects from previous years,
+visit:
- - SecureMines: Add meta-data to the
- system in order to trap intruders and provide an audit log. The
- goal of this project is to create several means of marking an
- event as a foreign act (such as opening a trap file) which halts
- the system and provides as much information as possible,
- possibilities include using extended attributes to tag such
- "mines". Candidates should have an understanding of the Unix
- process model and should be prepared to investigate the new
- comprehensive audit system in FreeBSD. This system will shortly have
- a framework for writing intrusion detection modules. &a.alfred; and &a.rwatson; are
- coordinating.
-
- - SEBSD: SEBSD is a port of NSA's SELinux FLASK/TE
- security model to the FreeBSD operating system using the TrustedBSD MAC
- Framework. Right now the system is highly experimental, and a great
- project would be for one or more students to spend the summer taking it
- from an experimental prototype to something that can be actually used.
- This might include the development of policy, integration of SEBSD into
- the installer components, adaptation of userland components, sample
- deployments, documentation, and so on. Candidates will want some
- background in access control technology, especially mandatory access
- control; experience with alternative security models would be a plus, as
- would a background in OS development. However, there's room for a
- range of work here, and all proposals will be considered! &a.rwatson; is coordinating.
-
- - Audit: Audit is a fine-grained security event log
- mechanism present in FreeBSD (and other operating systems). FreeBSD's
- audit implementation is based on Sun's published BSM API and file
- format, and will appear in FreeBSD 6.2-RELEASE. A variety of student
- projects are available to work on, including tasks such as working on
- XML output support and database integration, a graphical audit review
- tool, distributed audit log management support, and intrusion detection
- work. Students are encouraged to contact &a.rwatson; who is coordinating.
-
+ - Summer of Code 2006 FreeBSD
+ Projects Summary
+ - Summer of Code 2005 FreeBSD
+ Projects Summary
-
-Kernel
-
-
+
+Example Proposal Ideas
-Additional projects may be found by browsing the FreeBSD Development Projects page or by
- viewing some of the recent Developer
- Status Reports.
+Please see the general FreeBSD Project Ideas
+ page. The recent Developer Status
+ Reports are also a good source of information about upcoming
+ projects. A Summer of Code-specific addendum may be posted here in
+ Spring 2007.
Mentors
-If you are interested in working on a project not explicitly
- mentioned above, you may want to contact one of the potential
- mentors below about writing a proposal in one of the following broad
- categories.
-
-
-
-If your project is not selected for funding by Google, but you
- still think you have a feasible project proposal, then please email
- proposals@FreeBSD.org.
+A list of potential mentors will be posted here when the 2007
+ program is announced.
Proposal Guidelines
Students are responsible for writing a proposal and submitting it
to Google before the application deadline. The following outline
was adapted from the Perl Foundation open
source proposal HOWTO. A strong proposal will include:
- Name
- Email
- Project Title
- Possible Mentor (optional)
- Benefits to the FreeBSD Community - a good
project will not just be fun to work on, but also generally
useful to others.
- Deliverables - It is very important to list
quantifiable results here e.g.
- "Improve X modules in ways Y and Z."
- "Write 3 new man pages for the new interfaces."
- "Improve test coverage by writing X more unit/regression
tests."
- "Improve performance in FOO by X%."
- Project Schedule - How long will the project
take? When can you begin work?
- Availability - How many hours per week can
you spend working on this? What other obligations do you have
this summer?
- Bio - Who are you? What makes you the best
person to work on this project?
Infrastructure Provided to Students
-In 2005, the FreeBSD Project provided access to the FreeBSD
+
In 2005 and 2006, the FreeBSD Project provided access to the FreeBSD
Perforce revision control infrastructure in order to facilitate
student collaboration, provide public access and archiving for the
on-going student projects, and to help mentors and the community
monitor on-going work. It is expected that students participating in
-the 2006 program will be offered the same facilities, and that unless
-there is a strong argument otherwise, that those facilities will be
-used for 2006 projects. Students will also be asked to maintain wiki
+future programs will be offered the same facilities.
+Students will also be asked to maintain wiki
pages on their on-going projects. In the past, e-mail, IRC, and
instant messaging have proven popular among students and mentors, and
students participating in the FreeBSD summer program are encouraged to
use these and other electronic communication mechanisms to become
active in the community.
Frequently Asked Questions
- Am I eligible?
-
- Please see the Google Student FAQ
- for all questions about eligibility.
-
- When is the proposal deadline?
-
- May 8, 2006 17:00 Pacific Daylight Time.
- Proposals must be submitted through the Google web site, not
- directly to the FreeBSD Project.
+ What about Summer of 2007?
- Where do I send my proposal?
-
- Proposals must be sent to Google's student
- signup page.
-
- What projects were completed successfully by students
- last summer?
-
- Please see the 2005 FreeBSD
- Summer of Code page for a list of the completed projects
- from last year.
+ We again hope to be able to work with Google and participate in
+a sponsored Google Summer of Code program in 2007. Please check
+back in Spring 2007 for details.
+
&footer;