Astroguard

screenshot of Astroguard

Code auditing and profiling tool based on gcc for C programs to adhere to NASA's JPL Rule of 10

Overview

Astroguard is an innovative code auditing and profiling tool designed specifically for C programs, with a strong focus on adhering to NASA's JPL Rule of 10. By efficiently leveraging the capabilities of GCC, gcov, and glov, Astroguard helps developers obtain vital code coverage and compilation information, thereby ensuring their programs are robust and reliable. This tool is particularly beneficial for developers committed to high standards in safety-critical software development.

By following the established coding rules, Astroguard empowers programmers to streamline their code and improve its maintainability. Its user-friendly integration with existing resources means that anyone familiar with GCC can quickly get on board and enhance their code quality with minimal effort.

Features

  • GCC Compatibility: Astroguard integrates seamlessly with the GNU Compiler Collection, providing comprehensive static analysis and debugging for C programs.

  • NASA's JPL Rules Compliance: Specifically built to enforce the tenets of NASA's JPL Rule of 10, ensuring high coding standards in safety-critical environments.

  • Code Coverage Results: The tool delivers detailed code coverage metrics, allowing developers to understand which parts of their code are thoroughly tested.

  • Customizable Settings: Users can set Astroguard's compiling options to the most pedantic level, catching potential issues before they escalate.

  • Single Page Function Restriction: Encourages developers to limit function size, making code easier to read and maintain.

  • Open to Contributions: The platform welcomes contributions from the community, fostering improvements and additional features to enhance the tool further.

  • Output Directory Customization: Suggested feature to specify an output directory for organizing results seamlessly, helping to streamline the workflow.

  • Ongoing Support and Sponsorship: Engaging the community and potential sponsors ensures continuous development and improvement of the tool.