====================================
内核测试
====================================

   本章节将介绍如何测试内核，包括手动测试以及自动测试。

   我们需要尽可能的对内核进行完善的测试，以便我们能够更好的保证内核的稳定性，且减少其他模块的debug难度。
   
   设置完善的测试用例能帮助我们尽可能的检测到问题，防止我们在写新的模块的时候，被已有的模块的一些藏得很深的bug“背刺一刀”。

   由于您难以借助GDB等工具进行调试，因此在内核中进行手动测试比应用程序测试要困难一些。

   对于一些模块，我们可以使用编写代码进行单元测试，并输出异常信息。遗憾的是，并非所有模块都可以进行单元测试。比如我们常见的内存管理、进程管理等模块都不能进行单元测试。

   
.. toctree::
   :maxdepth: 1

   dunitest
   gvisor_syscall_test

