Subversion Repositories HelenOS-doc

Rev

Rev 31 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1. \chapter{Developers}
  2. \label{developers}
  3.  
  4. \section{\JJ}
  5. Jakub is the original author of the SPARTAN kernel and the initiator of
  6. the idea to start  the HelenOS project. Once the team was composed, he
  7. implemented considerable parts of the ia64 code and he also worked on
  8. the mips32 memory management. On the generic front, Jakub designed the
  9. generic virtual address translation interface for the 4-level
  10. hierarchical page table translation mechanism as well as the global page
  11. hash table translation mechanism. He has been involved in the address
  12. space management functions and userspace synchronization through
  13. futexes. Other areas in which he contributed include the kernel console
  14. and the kernel ELF loader. Jakub is also the author of the generic buddy
  15. system framework as well as the B+tree implementation. His latest
  16. contribution is the userspace PCI driver.
  17.  
  18. \section{\OP}
  19. {\Ondrej} has completely created the amd64 port and completed the mips32 port
  20. to the extent that it runs on a real MIPS machine\footnote{SGI Indy}.
  21. Besides the architecture specific involvement, {\Ondrej} programmed the slab
  22. allocator and modified the frame allocator to be self-contained which in
  23. turn let the old and very limited heap manager be removed from the
  24. kernel entirely. He also created architecture independent FPU lazy
  25. switching framework. Other example of his activity is the IPC subsystem
  26. and partial TLS\footnote{Thread local storage.} support. Lastly, {\Ondrej}
  27. equipped the kernel console with features found in userspace command
  28. shells (e.g. tab completion of commands and command history through
  29. keyboard arrows) and wrote the kernel configuration software.
  30.  
  31. \section{\MD}
  32. Right from the beginning, Martin has cared about project's code purity
  33. and readibility. He was the first developer to start writing
  34. Doxygen-style comments. He has promoted the proper use of C language
  35. {\tt const} keywords and extensive typedefing. On the tools front, he
  36. has rewritten the initial build system and created all our toolchain
  37. build scripts.
  38.  
  39. Martin worked and much improved the ia32 and amd64 kernel booting using
  40. the Grub bootloader and Multiboot specification. He also created
  41. specialized boot loaders for mips32 and ppc32 --- architectures that
  42. don't provide many other ways to load userspace init tasks. Finally,
  43. Martin bacame the sole author of the entire ppc32 port and has
  44. encountered partial success in booting ppc64 port to real
  45. hardware\footnote{Apple G5.}.
  46.  
  47. \section{\JV}
  48. Jakub has worked on ia32 and the ia64 FPU context switching and passive
  49. ia32 and active and passive ia64 console. He has relocated the ia64
  50. kernel to region 7 (i.e. to the highest addresses) and has first coped
  51. with ia64 interrupts.  Lastly, Jakub programmed the VESA frame buffer
  52. support for ia32 and amd64 and created the userspace framebuffer driver.
  53.  
  54. \section{\JC}
  55. Josef has worked on ia32 memory map detection, softfloat and softint
  56. libraries and printf() standards conformance. He also ported several
  57. kernel libraries to userspace and implemented considerable parts of
  58. HelenOS libc. Josef is the author of the userspace keyboard driver.
  59.  
  60. \section{\SB}
  61. Sergey implemented sorting library functions and implemented the buddy
  62. allocator interface for the frame allocator. He edited project
  63. documentation.
  64.