Barr Group TwitterBarr Group Vimeo

These blog posts relate to the design of reliable and safe embedded systems.

Introduction to Priority Inversion

 Printable PDF

When tasks share resources, as they often do/must, strange things can and will happen. Priority inversions can be particularly difficult to anticipate. A basic understanding of the problem is key.

How to Detect Memory Leaks

 Printable PDF

Memory leaks can be particularly risky for long-running embedded systems. Here are some tools to identify, track, and analyze memory leaks in embedded C and C++ programs.

Introduction to Watchdog Timers

 Printable PDF

For those embedded systems that can't be constantly watched by a human, watchdog timers may be the solution.

How to Use C's volatile Keyword

 Printable PDF

The proper use of C's volatile keyword is poorly understood by many programmers. This is not surprising, as most C texts dismiss it in a sentence or two. This article will teach you the proper way to do it.

Have you experienced any of the following in your C or C++ embedded code?

Pages