Each operating system has a 'Base Complexity Level' - which determines what sort of machines it can run on, and to an extent what software is considered 'included' (as noted below, programs of Complexity equal to one lower than the OS can be included at the OS designer's option; they do not take up additional processing power, but they run as part of the OS process instead of independently.)
iOS: An amalgam of Windows and Macintosh that has full V-processor and neuroprocessor support, but is vulnerable to security probes and has a number of well-established backdoor protocols designed for remote service.
Android: Popular lightweight operating system used by many small computers, tablets, and personal devices, including basic neuroprocessor/V-processor support.
VirtuxOS: An evolution of Linux and similar open source operating systems with full V-processor and neuroprocessor support.
Winix: An amalgam of Linux and Windows that copies many of the features of iOS with open source licensing, including full V-processor and neuroprocessor support.
DistrOS: A distributed-computing network operating system meant for use in large offices with many smaller systems, often used for cloud computing and storage systems. Can run V-processor/neuroprocessor systems but not interact with them without external peripherals.
Neuronix: A software-based neural-net simulation protocol designed to make AI pathing usable on hardware not normally capable of handling it. AIs using Neuronix OSes can operate on any computer hardware, although functional intelligence is still limited by the maximum complexity of the hardware.
GeniOS: An OS designed specifically for braincomps that are intended for implantation in bioroids, providing a convenient interface for managing them at a distance. Includes advanced V-processor handling for sensie rigs and other recording equipment.
Splitbit: An OS with a focus on quantum computing management, allowing for amazingly rapid calculations, decryption, etc. High complexity and does not function on machines without quantum processing capability.
WOTANS: Acronym for Web of Things Area Network System, a lightweight OS that connects localized items together and allows them to share in processing tasks. Designed specifically to be capable of interfacing with the tiniest computer components while maintaining support for V-processor/neuroprocessor/3DT processing and other useful product features. Typically, one hub appliance serves as the controller for the ANS, communicating with all items set up to work with the network, coordinating between each other, and connecting them to a more prosaic computer network without requiring interfaces be designed specifically for them; devices can also communicate ad hoc with each other if they are designed to have WOTANS compatibility.
Device-specific: Various manufacturers create hardware-specific 'operating systems' designed to optimize their code and make it so that Complex programs run without as much memory overhead involved. Typically, they have internal 'hooks' or 'libraries' to allow them to communicate with more mainstream OSes (for example, you may not be able to reprogram your printer, but you can still send files to it to be printed.)
Artificial intelligences can technically operate on any system of sufficient Complexity. Most corporate AIs are coded under DistrOS, Splitbit, or GeniOS, depending on their intended purpose. Homebrewed AIs, as well as some black ops AIs, often run under Neuronix, giving them the capability to run under any hardware they manage to install to.
The OS Kernel uses some processor time; most OSes built to work on a particular system have a Complexity equal to (X-2), where X is the target system Complexity. This means that a program meant to run on Complexity 6 hardware should have at least Complexity 4 software backing it up. Mind, many people use Complexity 4 software on systems that only have a Complexity of 5 or 4; this means a more significant portion of the machine's processing assets will go towards the OS instead of other functions.
The OS Kernel handles most standard procedures and protocols, including any standard program that would be Complexity (OS-1) or lower, as part of its standard function set. This means that if a Datalink is Complexity 1 and the OS is Complexity 3 on a Complexity 5 system, the Datalink can be listed as part of the OS Kernel and not tracked separately, unless there is a specific reason otherwise (a Datalink for a nonstandard protocol, for example).
The OS Kernel process cannot be given a boosted Complexity to make it run faster; if given a lower Complexity out of necessity, it and the entire system (and thus any function 'built into' it) will run slower!
So what happens when you want to emulate hardware that isn't currently being used (typically because you don't have it - or have a more evolved version of it and need to backport for compatibility)? You need to use Complexity (X+1) software to emulate Complexity (X) hardware with some concessions made, or (X+2) if you want to emulate it perfectly, or (X+3) if you want to emulate it within a Virtual environment. Put another way, a Complexity 6 Virtual entity could simulate the behavior of any gadget of up to Complexity 3 with perfect accuracy; a Complexity 5 emulation program could emulate the output of a Complexity 3 gadget perfectly; and a Complexity 4 emulation program could emulate the output of a Complexity 3 gadget but would obviously be emulated and have some minor flaws. Devices with hardware-based optimization add 1/2 of the effective Complexity modifier, rounded up.