Временный файл: различия между версиями

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
[отпатрулированная версия][отпатрулированная версия]
Содержимое удалено Содержимое добавлено
Строка 8: Строка 8:
; Дополнительная память : Все современные ОС используют [[файл подкачки]].
; Дополнительная память : Все современные ОС используют [[файл подкачки]].
: Программы, работающие с большим количеством данных — например, [[видеоредактор]]ы — могут создавать множество временных файлов.
: Программы, работающие с большим количеством данных — например, [[видеоредактор]]ы — могут создавать множество временных файлов.
: Одна из причин сложившегося механизма обновления ПО: программа переходит в особый режим и начинает переносить файлы из кэша обновления в рабочие каталоги. Объём обновлений зачастую велик.


; Сохранение результатов компиляций, расчётов, загрузок и т. д., чтобы не делать дважды : Так работает цепочка сборки любого компилятора. Пересобирается только то, чей исходный код был изменён.
; Сохранение результатов компиляций, расчётов, загрузок и т. д., чтобы не делать дважды : Так работает цепочка сборки любого компилятора. Пересобирается только то, чей исходный код был изменён.
: Применительно к службам обновления ПО — если из программы выйти и снова зайти, она будет докачивать обновление оттуда, где его прервали.
: Одна из причин сложившегося механизма обновления ПО — позволяет докачку.


; [[Межпроцессная коммуникация]] : Самый простой способ получить данные из другой программы — потребовать от неё записать их в файл. Такая коммуникация может проводиться даже между разными компьютерами — если, конечно, они располагают общим [[сетевой диск|сетевым диском]]. Так, [[Microsoft Office]] может сообщать своим копиям с других компьютеров, кто занял файл.
; [[Межпроцессная коммуникация]] : Самый простой способ получить данные из другой программы — потребовать от неё записать их в файл. Такая коммуникация может проводиться даже между разными компьютерами — если, конечно, они располагают общим [[сетевой диск|сетевым диском]]. Так, [[Microsoft Office]] может сообщать своим копиям с других компьютеров, кто занял файл.

Версия от 22:14, 11 мая 2020

Вре́менный файл — файл, создаваемый определённой программой или операционной системой для сохранения промежуточных результатов в процессе функционирования или передачи данных в другую программу. Обычно такие файлы удаляются автоматически создавшим их процессом.

Некоторые операционные системы имеют дополнительные возможности при работе с временными файлами — возможность получить имя временного файла (причём такое, которое будет уникальным — то есть не совпадёт с именем уже существующего файла); возможность указать особый параметр при создании (открытии) файла, предписывающий удалить файл сразу после записи.

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

Назначение

Дополнительная память
Все современные ОС используют файл подкачки.
Программы, работающие с большим количеством данных — например, видеоредакторы — могут создавать множество временных файлов.
Сохранение результатов компиляций, расчётов, загрузок и т. д., чтобы не делать дважды
Так работает цепочка сборки любого компилятора. Пересобирается только то, чей исходный код был изменён.
Применительно к службам обновления ПО — если из программы выйти и снова зайти, она будет докачивать обновление оттуда, где его прервали.
Межпроцессная коммуникация
Самый простой способ получить данные из другой программы — потребовать от неё записать их в файл. Такая коммуникация может проводиться даже между разными компьютерами — если, конечно, они располагают общим сетевым диском. Так, Microsoft Office может сообщать своим копиям с других компьютеров, кто занял файл.
Зачастую служба обновления — отдельная программа, и проще всего передать ей информацию именно через файлы.
Архитектура программной системы требует именно файл
Библиотека cURL не позволяет генерировать сертификаты сайтов в памяти — только в файле.
Часто временными файлами пользуются командные файлы, цепочки сборки в компиляторах.
Нужно любой ценой сохранить имеющийся файл
Например, перезаписывая файл, программа может создать новый с временным именем, и если создание удастся, удалить старый и переименовать новый.
Во встраиваемых СУБД добиваются требований ACID именно через временные файлы.
Распаковка и вызов программ
Такая система распространена для драйверов: самоизвлекающийся архив распаковывает инсталлятор драйвера, а затем запускает его.
Сходным образом действует служба обновления браузера Vivaldi.

Местоположение

Временные файлы ОС Windows можно найти в следующих каталогах:

%SystemRoot%\Temp

%SystemRoot% — каталог, в который установлена Windows.

%HomeDrive%%HomePath%\Temp

%HomeDrive% — по умолчанию C: %HomePath% — \Documents and Settings\<имя пользователя> (по умолчанию в Windows XP).

то же что и предыдущее (при настройках по умолчанию):

%TMP%

%TEMP%

Кроме того временные файлы могут находиться в текущем каталоге.

Или, в Unix-подобных операционных системах,

/tmp

или

~/tmp

(где ~ — ссылка на домашний каталог пользователя).