lundi 29 mai 2023

Software architecture for open sources (suricata, open5gs)

Now, I am working with some open-source software in C language: Suricata, Open5g. I know these software are used for different purposes, but I realized that they have same architecture: features are written as modules, then modules are registered with the software. Example, in Suricata, when I want to implement a new protocol, I will need to write some function to parse the packet, then register that function with the main program. Then, when Suricata wants to use this function, there will be a function that manages the spawning of previously registered modules (like this document). Everything is similar with Open5gs or some other C open-source software. It's like a design pattern in C.

I want to learn about this architecture to better understand how it works in open-source C language but don't know its exact name to start with

My question: Is there a term for that software architecture (or implementation)?

Aucun commentaire:

Enregistrer un commentaire