Затирание - Clobbering

В программная инженерия, затирать а файл или же память компьютера перезаписывает его содержимое.[1] В Файл жаргона определяет затирание как

Чтобы перезаписать, обычно непреднамеренно: "Я сошел с конца множество и забил куча." Сравнивать маш, каракули, мусор, и разбить стопку.[2]

POSIX

Перезаписывает в POSIX часто случаются непреднамеренно, например, при использовании > оператор перенаправления. Чтобы предотвратить непреднамеренное затирание, можно использовать различные средства. Например, установка параметра оболочки установить -o noclobber (трепать, кш ) или же установить noclobber (csh, tcsh ) предотвратит > от затирания, заставляя его издавать сообщение об ошибке вместо:[3]

$ эхо "Привет, мир" > file.txt$ cat file.txtПривет, мир$ эхо «Это перезапишет первое приветствие». > file.txt$ cat file.txtЭто перезапишет первое приветствие.$ набор -o noclobber$ эхо "Можем ли мы перезаписать его снова?" > file.txt-bash: file.txt: невозможно перезаписать существующий файл$ эхо «Но мы можем использовать оператор> |, чтобы игнорировать noclobber». >|file.txt$ cat file.txt # Успешно перезаписал содержимое file.txt с помощью> | операторНо мы можем использовать> | оператор, чтобы игнорировать noclobber.$ набор + нет никого # Изменяет настройку обратно

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

Makefiles

В make-файлы, общая цель болтать означает полную очистку всех ненужных файлов и каталогов, созданных предыдущими вызовами делать команда.[4] Это более серьезная цель, чем чистый и обычно используется для удалить программного обеспечения. Некоторые команды, связанные с make, вызывают во время выполнения команду make clobber. Они проверяют КЛОБЕРА переменная окружения. Если он выключен, то затирание не производится.[5]

сборка

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

Рекомендации

  1. ^ «Что такое Clobbering в вычислительной технике?». мудрый. 20 июня 2016 г. Архивировано с оригинал (HTML) 13 июня 2019 г.. Получено 13 июн 2019. Термин «затирание» используется в вычислениях по-разному, причем значение обычно ясно из контекста. В каком-то смысле это относится к перезаписи существующих файлов или записей в памяти. Его также можно использовать для обсуждения перегруженных компьютеров, таких как серверы, с запросами, вызывающими снижение производительности. Это второе использование слова отражает обычное использование слова «clobber» для описания избиения.
  2. ^ "Clobber" в файле жаргона
  3. ^ "Unix Power Tools", Шелли Пауэрс, Джерри Пик, Тим О'Рейли, Майк Лукидес, стр. 892
  4. ^ UNIX System V, выпуск 4, Motorola Unix, Motorola, inc, inc Motorola, стр. 28
  5. ^ "Unix Unleashed" Робин Берк, Дэвид Б. Хорват