How-to articles about designing safe, reliable, and secure embedded systems.

How to Have Polymorphism Without a Heap

Rethinking basic programming techniques can avoid many of the problems that heap-based memory management poses for embedded real-time system designs.

How to Install and Configure the RedBoot ROM Monitor

RedBoot is a portable, open-source ROM monitor that offers a download and debug environment. What more could you want?

How to Port the eCos Operating System

The first task when using any new real-time operating system (RTOS) is to get it up and running on your hardware. The open-source eCos RTOS makes that part pretty easy.

How to Reduce Power Consumption by Writing Better Software

The way you write software can affect the power consumption of the resulting product. Here are four approaches to minimizing power consumption through software.

Mutexes and Semaphores Demystified

In this first installment of a series of articles on the proper use of a real-time operating system (RTOS), we examine the important differences between a mutex and a semaphore.

Bug-Killing Coding Standard Rules for Embedded C

A C coding standard can help keep bugs out of embedded software by leveraging common language features and development tools.

More Bug-Killing Coding Standards for Embedded C

This second article on enforceable coding standards for embedded systems adds a set of additional bug-killing rules for using certain C keywords and naming global variables.

Framework for Safe Motion Control Firmware

An object-oriented framework can be used to create safe, testable and tunable motion control systems.

Software Reliability and the Internet of Things

As Internet connectivity advances, the transportation, automotive, medical device, smart grid and other industry sectors have become more dependent on embedded software. But is software reliable?

How to Secure Consumable Components of Medical Devices and Other Embedded Systems

A number of embedded systems, such as medical devices and printers, feature replaceable components designed to be installed new, consumed through one or more cycles of product use, and ultimately disposed.

Pages