In this chapter, we have attempted to show the reader several key points, tools and techniques; among them:
- Humans will make mistakes; this is especially true with memory unmanaged languages (C, C++).
- There is a real need for powerful memory debug tools on nontrivial codebases.
- We covered two of these best in class dynamic analysis tools in detail:
- Valgrind's Memcheck
- Sanitizers (primarily ASan)
- Glibc allows some tuning of malloc via the mallopt(3) API, as well as via environment variables.
- Ensuring complete code coverage when building test cases is absolutely crucial to the success of a project.
The next chapter is related to the essentials aspects of file I/O which is essential for a component reader to know. It introduces you to performing efficient file I/O on the Linux platform. We would request the readers to go through this chapter which is available here...