shim
also: compatibility layer, adapter, wrapper
A small piece of code or library that provides compatibility or acts as an intermediary layer between two software components, allowing them to work together despite differences in their interfaces or versions.
A shim is a thin compatibility layer that bridges differences between software components. It intercepts calls or requests and translates them into a form that the underlying component understands, without requiring changes to either component.
Common examples include UEFI Secure Boot shims (bootloaders that verify the kernel before execution) and language runtime shims that allow newer code to run on older systems by providing stub implementations of missing functions.
In modern Linux contexts, shims are frequently used to maintain backward compatibility, handle API changes between library versions, or implement security features like Secure Boot without modifying existing software.