Unverständlich ist vermutlich, dass in VMs, die nicht Container-basiert sind, auch Betriebssysteme laufen. Man kann einfach zusammenfassen: Ein Betriebssystem kann entweder direkt auf der Hardware laufen oder auf virtueller (d.h. durch Software des Betriebssystems abgebildete/"emulierte") Hardware, d.h. in einer VM. Aber eine VM braucht nicht zwingend ein extra Betriebssystem. Container-basierte VMs virtualisieren z.B. nur die Teile, die für Applikationen notwendig sind, laden aber keinen extra Kernel für die VM.
Eine VM ist daher nur eine Möglichkeit Hardware softwareseitig (d.h. durch das Betriebssystem) abzubilden und den Zugriff auf selbige zu kapseln.