Reserving memory moment to moment, as needed, without having to reserve a fixed amount ahead of time. Modern operating systems perform dynamic memory allocation for their own use. They may also perform the same operation for their applications, or they may include programming interface functions (APIs) that allow the applications to allocate and de-allocate memory as needed. See
garbage collection.