Возможно, это устарело на современных машинах с несколькими гигабайтами, но при разработке на Mac я помню, что мы использовали для выделения блок памяти, который был бы достаточно большим для выполнения операции сохранения.
Если у нас закончилась память, мы могли бы затем предупредить пользователя о том, что ему / ей не хватает памяти, а затем освободить этот блок, чтобы могла быть выполнена операция сохранения.
Другие функции, которые важны для сохранения пользовательских данных, - это отмена, в идеале неограниченная отмена / повтор.