Extension

Extensions (also known as system extensions for classic Mac OS) are small pieces of software that are are loaded during startup to patch or add functionality to Macintosh systems.

Classic Mac OS
Sometimes called "INITs", classic Mac OS would load system extensions at startup through a patching mechanism known as the INIT loader. This was originally an unsupported hack that could load up to 32 INITs stored in the System Folder. These appeared as icons that appeared horizontally at the bottom of the welcome as they were loaded. Apple Computer itself used this mechanism to add software features such as QuickTime or to patch bugs through System 7 Tune-Up.

A problematic extension could cause the system to become unstable or even crash during the startup process. Holding down the space bar during startup would bypass the INIT loader so that the culprit extension could be removed.

Starting with System 7, systems extensions became a more managed solution. Extensions dropped on the System Folder were redirected to an Extensions folder within it. Control panels that contained code that was similarly loaded at startup were placed in the Control Panels folder. It was still possible to place extensions directly into the System Folder by responding to a dialog box before it was redirected into the Extensions folder. The startup items would be loaded in the following order: System Folder, Extensions folder, and Control Panels folder. These could be managed through an Extensions Manager control panel, which could individually disable items by moving them to separate folders called "Extensions (Disabled)" and "Control Panels (Disabled)".

Mac OS X
Mac OS X uses a Unix-based architecture that is very different from classic Mac OS to better protect against crashes caused by problematic software. Kernel extensions (kexts) that modify the OS X kernel are not shown at the bottom of the screen during startup. Holding down the shift key during startup will enable safe mode (sometimes called "safe boot"), which turns all such kexts` and startup items off.

macOS
Kexts were later deemed a security risk and Apple re-introduced system extensions in macOS Catalina (10.15) as a more secure alternative in 2019 that would only operate in. Modern system extensions and legacy kexts can be managed through the Extensions pane of System Preferences and startup items can be managed through the "Login Items" tab of the Users & Groups pane. After startup, problematic processes can be viewed and sometimes quit through the Activity Monitor utility.