2,62 → 2,65 |
\label{developers} |
|
\section{\JJ} |
Jakub is the original author of the SPARTAN kernel and the initiator of |
the idea to start the HelenOS project. Once the team was composed, he |
implemented considerable parts of the ia64 code and he also worked on |
the mips32 memory management. On the generic front, Jakub designed the |
generic virtual address translation interface for the 4-level |
hierarchical page table translation mechanism as well as the global page |
hash table translation mechanism. He has been involved in the address |
space management functions and userspace synchronization through |
futexes. Other areas in which he contributed include the kernel console |
and the kernel ELF loader. Jakub is also the author of the generic buddy |
system framework as well as the B+tree implementation. His latest |
contribution is the userspace PCI driver. |
{\JJ} is the original author of the SPARTAN kernel and the initiator of the |
idea to start the HelenOS project. During the works on the system, he has |
been the most active developer. He also took on the project agenda |
and administration and became the project leader. |
|
Before the project officially started, {\JJ} created the SPARTAN kernel |
for ia32 and mips32 along with SMP support, scheduler and synchronization\footnote{The |
initial SPARTAN kernel did not reach userspace.}. |
|
In the project time proper, he implemented considerable parts |
of ia64 code and worked also on mips32 memory management. |
On the generic front, {\JJ} designed generic the virtual address |
translation interface for the 4-level hierarchical page table translation mechanism |
as well as for the global page hash table translation mechanism. He has been involved |
in address space management functions and userspace synchronization through futexes. |
Other areas of his contribution include the kernel console and the kernel ELF loader. |
{\JJ} is also the author of the generic buddy system framework and B+tree implementation. |
|
\section{\OP} |
{\Ondrej} has completely created the amd64 port and completed the mips32 port |
to the extent that it runs on a real MIPS machine\footnote{SGI Indy}. |
Besides the architecture specific involvement, {\Ondrej} programmed the slab |
allocator and modified the frame allocator to be self-contained which in |
turn let the old and very limited heap manager be removed from the |
kernel entirely. He also created architecture independent FPU lazy |
switching framework. Other example of his activity is the IPC subsystem |
and partial TLS\footnote{Thread local storage.} support. Lastly, {\Ondrej} |
equipped the kernel console with features found in userspace command |
shells (e.g. tab completion of commands and command history through |
keyboard arrows) and wrote the kernel configuration software. |
{\OP} has been very agile HelenOS developer. He is responsible for large areas of the |
kernel and userspace and has completely created the amd64 port and completed the mips32 |
port to the extent that it runs on a real MIPS machine\footnote{SGI Indy}. |
Besides the architecture specific involvement, {\OP} programmed the slab allocator |
and modified the frame allocator to be self-contained which in turn let the old |
and very limited heap manager be removed from the kernel entirely. He also created |
architecture independent FPU lazy switching framework. Other example of his |
activity is the IPC subsystem and partial TLS\footnote{Thread local storage.} support. |
Lastly, {\OP} equipped the kernel console with features found in userspace command shells |
(e.g. tab completion of commands and command history through keyboard arrows) and wrote |
the kernel configuration software. |
|
Apart from the self development, other members of the team appreciated \OP's excellent |
debugging and troubleshooting skills. He has been the person behind discovery of |
majority of the compiler and simulator bugs. |
|
\section{\MD} |
Right from the beginning, Martin has cared about project's code purity |
and readibility. He was the first developer to start writing |
Doxygen-style comments. He has promoted the proper use of C language |
{\tt const} keywords and extensive typedefing. On the tools front, he |
has rewritten the initial build system and created all our toolchain |
build scripts. |
{\MD} is a very dedicated HelenOS developer. Right from the beginning, Martin |
has cared about project's code purity and readibility. He was the first developer to |
start writing Doxygen-style comments. He has promoted the proper use of C language |
{\tt const} keywords and extensive typedefing. On the tools front, he has rewritten |
the initial build system and created all our toolchain build scripts. |
|
Martin worked and much improved the ia32 and amd64 kernel booting using |
the Grub bootloader and Multiboot specification. He also created |
specialized boot loaders for mips32 and ppc32 --- architectures that |
don't provide many other ways to load userspace init tasks. Finally, |
Martin bacame the sole author of the entire ppc32 port and has |
encountered partial success in booting ppc64 port to real |
hardware\footnote{Apple G5.}. |
Martin worked and much improved the ia32 and amd64 kernel booting using the Grub bootloader |
and Multiboot specification. He also created specialized boot loaders for mips32 and ppc32 --- architectures |
that don't provide many other ways to load userspace init tasks. Finally, |
{\MD} bacame the sole author of the entire ppc32 port and has encountered |
partial success in booting ppc64 port to real hardware\footnote{Apple G5.}. |
|
\section{\JV} |
Jakub has worked on ia32 and the ia64 FPU context switching and passive |
ia32 and active and passive ia64 console. He has relocated the ia64 |
kernel to region 7 (i.e. to the highest addresses) and has first coped |
with ia64 interrupts. Lastly, Jakub programmed the VESA frame buffer |
support for ia32 and amd64 and created the userspace framebuffer driver. |
{\JV} has worked on ia32 and ia64 FPU context switching and passive ia32 |
and active and passive ia64 console. He has relocated the ia64 kernel to |
region 7 (i.e. to the highest addresses) and has first coped with ia64 |
interrupts. {\JV} has been always prepared to discuss different kernel |
issues. His expertise in ia32 is well recognized. |
|
\section{\JC} |
Josef has worked on ia32 memory map detection, softfloat and softint |
libraries and printf() standards conformance. He also ported several |
kernel libraries to userspace and implemented considerable parts of |
HelenOS libc. Josef is the author of the userspace keyboard driver. |
{\JC} has worked on ia32 memory map detection, softfloat and softint libraries |
and printf() standards comformance. He also ported several kernel libraries to userspace. |
|
\section{\SB} |
Sergey implemented sorting library functions and implemented the buddy |
allocator interface for the frame allocator. He edited project |
documentation. |
{\SB} implemented sorting library functions and implemented the buddy allocator |
interface for the frame allocator. He edited project documentation. |