Skip to main content

Project

C Plugin Architecture POC

POSIX-style plugin loader that discovers, runs, and cleans up plugins with signal-aware process management.

RoleSystems Programming
Date28-05-2025
Tech
CPOSIXPlugins

Highlights

  • Runtime plugin discovery and lifecycle (init/run/cleanup)
  • Forks a child process per plugin to model concurrent work
  • Signal-aware shutdown for orderly cleanup

Overview

A proof-of-concept plugin architecture in C that dynamically discovers plugins, initializes them, runs them in parallel child processes, and cleans them up with signal handling. Designed to show how a modular host can load and manage independent plugin binaries on POSIX systems.

Highlights

  • Discovers available plugins and loads them at runtime.
  • Initializes, runs, and cleans up each plugin with a simple lifecycle.
  • Forks a child process per plugin to simulate concurrent work.
  • Signal handling (e.g., CTRL+C) ensures orderly shutdown and cleanup.

Notes

  • Targets POSIX environments; run in a real terminal to allow signals to be handled correctly.
  • Provided build.sh script builds the host and sample plugins.
  • Output logs show plugin discovery, initialization, run loop, and cleanup.