Временный файл: различия между версиями
[отпатрулированная версия] | [отпатрулированная версия] |
Mercury (обсуждение | вклад) |
Mercury (обсуждение | вклад) |
||
Строка 17: | Строка 17: | ||
: Часто временными файлами пользуются [[командный файл|командные файлы]], цепочки сборки в компиляторах. |
: Часто временными файлами пользуются [[командный файл|командные файлы]], цепочки сборки в компиляторах. |
||
; |
; Нужно любой ценой сохранить имеющийся файл : Например, перезаписывая файл, программа может создать новый с временным именем, и если создание удастся, удалить старый и переименовать новый. |
||
: Во [[встраиваемая СУБД|встраиваемых СУБД]] добиваются требований [[ACID]] именно через временные файлы. |
|||
; Распаковка и вызов программ : Такая система распространена для [[драйвер]]ов: [[самоизвлекающийся архив]] распаковывает инсталлятор драйвера, а затем запускает его. |
; Распаковка и вызов программ : Такая система распространена для [[драйвер]]ов: [[самоизвлекающийся архив]] распаковывает инсталлятор драйвера, а затем запускает его. |
Версия от 21:53, 11 мая 2020
Вре́менный файл — файл, создаваемый определённой программой или операционной системой для сохранения промежуточных результатов в процессе функционирования или передачи данных в другую программу. Обычно такие файлы удаляются автоматически создавшим их процессом.
Некоторые операционные системы имеют дополнительные возможности при работе с временными файлами — возможность получить имя временного файла (причём такое, которое будет уникальным — то есть не совпадёт с именем уже существующего файла); возможность указать особый параметр при создании (открытии) файла, предписывающий удалить файл сразу после записи.
В Unix-подобных операционных системах для временных файлов выделен отдельный каталог /tmp. Данные в этом каталоге интенсивно кешируются, а также (во многих системах) удаляются при загрузке операционной системы.
Назначение
- Дополнительная память
- Все современные ОС используют файл подкачки.
- Программы, работающие с большим количеством данных — например, видеоредакторы — могут создавать множество временных файлов.
- Сохранение результатов компиляций, расчётов и т.д., чтобы не делать дважды
- Так работает цепочка сборки любого компилятора. Пересобирается только то, чей исходный код был изменён.
- Межпроцессная коммуникация
- Самый простой способ получить данные из другой программы — потребовать от неё записать их в файл. Такая коммуникация может проводиться даже между разными компьютерами — если, конечно, они располагают общим сетевым диском. Так, Microsoft Office может сообщать своим копиям с других компьютеров, кто занял файл.
- Архитектура программной системы требует именно файл
- Обновление ПО: программа переходит в особый режим и начинает переносить файлы из кэша обновления в рабочие каталоги.
- Библиотека cURL не позволяет генерировать сертификаты сайтов в памяти — только в файле.
- Часто временными файлами пользуются командные файлы, цепочки сборки в компиляторах.
- Нужно любой ценой сохранить имеющийся файл
- Например, перезаписывая файл, программа может создать новый с временным именем, и если создание удастся, удалить старый и переименовать новый.
- Во встраиваемых СУБД добиваются требований ACID именно через временные файлы.
- Распаковка и вызов программ
- Такая система распространена для драйверов: самоизвлекающийся архив распаковывает инсталлятор драйвера, а затем запускает его.
Местоположение
Временные файлы ОС Windows можно найти в следующих каталогах:
%SystemRoot%\Temp
%SystemRoot% — каталог, в который установлена Windows.
%HomeDrive%%HomePath%\Temp
%HomeDrive% — по умолчанию C: %HomePath% — \Documents and Settings\<имя пользователя> (по умолчанию в Windows XP).
то же что и предыдущее (при настройках по умолчанию):
%TMP%
%TEMP%
Кроме того временные файлы могут находиться в текущем каталоге.
Или, в Unix-подобных операционных системах,
/tmp
или
~/tmp
(где ~ — ссылка на домашний каталог пользователя).