stringtranslate.com

Временная папка

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

По соображениям безопасности лучше всего, чтобы каждый пользователь имел свой собственный временный каталог, поскольку существуют истории уязвимостей безопасности временных файлов из-за некорректных прав доступа к файлам программ или условий гонки .

Стандартная процедура системного администрирования — уменьшение объема используемого дискового пространства (обычно на диске) путем удаления временных файлов. В многопользовательских системах это может привести к удалению активных файлов, нарушая деятельность пользователей. Чтобы избежать этого, некоторые процедуры по освобождению пространства удаляют только неактивные или «старые» файлы — те, которые не читались и не изменялись в течение нескольких дней.

Практические вопросы

В Unix каталог /tmp часто будет отдельным разделом диска . В системах с магнитными жесткими дисками производительность (общий системный IOPS ) увеличится, если движения головки диска от обычного дискового ввода-вывода будут отделены от доступа к временному каталогу. Все чаще для временного каталога или папки используются решения на основе памяти, такие как « RAM-диски », установленные в оперативной памяти , или устройство общей памяти /dev/shm в Linux.

Твердотельный накопитель на основе флэш - памяти менее пригоден в качестве временного запоминающего устройства для чтения и записи из-за асимметричной продолжительности чтения/записи и износа. (См. выравнивание износа .)

Традиционные локации

В MS-DOS и Microsoft Windows временный каталог задается переменной среды TEMP или TMP . [1] Используя API Windows, можно найти путь к временному каталогу с помощью функции GetTempPath2 , [2] или можно получить путь к уникально именованному временному файлу с помощью функции GetTempFileName . [3] Первоначально значением по умолчанию был C:\Temp , затем %WinDir%\Temp . В эпоху Windows XP временный каталог был задан для каждого пользователя как Local Settings\Temp , хотя пользователь все еще мог его перемещать. Для Windows Vista, 7, 8 и 10 местоположение временного файла снова переместилось в раздел AppData профиля пользователя, обычно C:\Users\ Имя пользователя \AppData\Local\Temp ( %USERPROFILE%\AppData\Local\Temp ). Во всех версиях Windows доступ к расположению Temp можно получить, например, в Проводнике, полях «Выполнить...» и во внутреннем коде приложения с помощью %TMP% или %TEMP% . Как и в случае с другими переменными среды, %TMP% или %TEMP% являются синонимами полного пути.

В Unix и Linux глобальными временными каталогами являются /tmp и /var/tmp . Веб-браузеры периодически записывают данные в каталог tmp во время просмотра и загрузки страниц. Обычно /var/tmp предназначен для постоянных файлов (так как они могут сохраняться при перезагрузках), а /tmp — для большего количества временных файлов. См. Filesystem Hierarchy Standard . [4] [5] Кроме того, пользователь может установить переменную среды TMPDIR , чтобы она указывала на предпочтительный каталог (где разрешено создание и изменение файлов ).

В macOS изолированное приложение не может использовать стандартные расположения Unix, но может использовать пользовательский каталог, путь к которому предоставляется функцией NSTemporaryDirectory . [6]

В OpenVMS используются SYS$SCRATCH [7] , а в AmigaDOST :.

Смотрите также

Ссылки

  1. ^ "Распознанные переменные среды". Microsoft . Получено 13 марта 2022 г. .
  2. ^ "Функция GetTempPath2A (fileapi.h)". Microsoft . Получено 13 марта 2022 г. .
  3. ^ "Функция GetTempFileNameA (fileapi.h)". Microsoft . Получено 13 марта 2022 г. .
  4. ^ "Временные файлы, сохраняемые между перезагрузками системы". Filesystem Hierarchy Standard . Получено 8 марта 2022 г.
  5. ^ "Временные файлы". Стандарт иерархии файловой системы . Получено 8 марта 2022 г.
  6. ^ "App Sandbox Design Guide". Apple . Получено 7 марта 2022 г.
  7. ^ "Руководство пользователя VSI OpenVMS" (PDF) . VMS Software, Inc. стр. 244 . Получено 13 марта 2022 г. .