Mesos handles resource reservation like a broker. Frameworks like Marathon or applications like Apache Spark make requests to Mesos for resources and then ask Nesos to launch specific processes on those resources. You can have multiple frameworks on a given Mesos cluster.