An operating system is an interface between computer hardware and users that facilitates the execution of programs and access to resources. It provides supports for other programs by loading them into memory and controls hardware access. Major components of an operating system include a user interface, memory manager, process manager, device manager, and file manager. The memory manager allocates and manages memory for programs using techniques like partitioning, paging, and demand paging to allow multiple programs to run simultaneously.