You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

52 lines
2.8KB

  1. \chapter*{Lexicon}
  2. \begin{description}
  3. \item[Continuous Integration]: \\
  4. This refers to the process of quickly merging every commit into the same
  5. code base, before building this code base and running automated tests
  6. against it. \\
  7. This allows quick regression detection and removes the painful work of
  8. integrating branches that have diverged a lot, since everyone pushes to
  9. the same main branch.
  10. \item[Device tree]: \\
  11. This is a tree data structure for describing hardware. It is often used
  12. on architectures that do not provide the needed mechanisms to discover
  13. the hardware features at runtime, and is thus widely spread in the
  14. embedded world. The \textbf{Linux} kernel supports this mechanism, and
  15. on the platforms where it is in use, it is a mandatory part for booting
  16. the system.
  17. \item[Mainline, upstream]: \\
  18. Refers to the official current version of a software - the
  19. \textbf{Linux} kernel for example - being developed. Mainlining or
  20. upstreaming is the process of adding code to the software's mainline
  21. version - to \url{http://kernel.org} for the \textbf{Linux} kernel. This
  22. process includes comments and critics from the community supporting the
  23. software and then validation of the proposed code by the developers in
  24. charge of the software part impacted by the proposed code.
  25. \item[Root filesystem (rootfs)]: \\
  26. The root filesystem contains the executable files needed for booting the
  27. system and mounting other filesystems.\\
  28. Thus, without a root filesystem, the \textbf{Linux} kernel will boot but
  29. hang just after, making the board unusable for the user.
  30. \item[Toolchain (and cross-compilation toolchain)]: \\
  31. A toolchain is a set of software used to transform a source code into a
  32. set of binary executable objects. It is basically composed of a
  33. compiler, a linker, a C library, and a debugger, but some toolchains can
  34. include a lot more utilities. A cross-compilation toolchain is
  35. specifically made to produce binaries compatible with a different
  36. architecture than the one the toolchain can run on. They are widely used
  37. in the embedded world, as the target platforms usually do not have the
  38. hardware capabilities to build their own softwares.
  39. \item[User space or userland]: \\
  40. When the Operating System separates the memory for better protection,
  41. the two parts are called \textbf{kernel space} and \textbf{user space}.
  42. By extension, at the moment where the kernel has mounted its root
  43. filesystem and launches its \textbf{init} program, one can say that the
  44. boot process has "entered user space".
  45. \end{description}