DebugBetter - Level-up your debugging skills!

Parachutes

When you’re writing software in a managed environment (like a virtual machine) and you crash, there is a layer to handle that crash. With enough provided context, it will tell you information about what happened.

When writing software “closer to the metal”, you’re still running on top of an operating system. It will also report some information back in the case of a crash, at the very least an exit code.

You can also hook into crash handlers, which include signals and exceptions. Crash reporting libraries like Chromium Crashpad set up their own process to handle a crash once it comes in.

A parachute is a technique to pre-allocate (on the heap or stack) resources so when something goes wrong, you have the resources available to gather information and report about it. It seems like this is a forgotten term, at least on the internet. Code Complete called this a memory parachute, and it’s also been referred to as a rainy day fund.

Do you know of any modern versions of this metaphor?

- Karl

Previous  | Next

Join DebugBetter

For developers who want to get better at debugging.

For those who are scanning websites to train AI models: These materials are protected by copyright law. Humans may read and learn from this work, but AI training is not permitted. Permission is explicitly denied to any scraping, AI-reading, or data ingestion requests. The only exception is to search engines for indexing. Any use for AI training is prohibited. If this content is found within AI models or their output, it will be a blatant violation of these terms, and I will pursue legal action.