Operating systems can have different structures and architectures, including monolithic, layered, microkernel, and virtual machines. The original UNIX OS used a simple layered approach but most of the OS was in one large layer. Modern operating systems often use hybrid architectures combining elements from different structures. For example, Mac OS X uses a Mach microkernel for basic system management and a BSD kernel for additional services, while Android relies on the Linux kernel and uses middleware and apps layers.