Затирание
Эта статья написана как руководство или руководство . ( декабрь 2012 г. ) |
В обеспечения и информатике разработке программного уничтожение файла — это процесс полной перезаписи его содержимого, преднамеренного или непреднамеренного, или указания на то , , регистра процессора или области компьютерной памяти что такое действие может произойти. [1] В «Жаргонном файле» «затирание» определяется как
Чтобы перезаписать, обычно непреднамеренно: «Я отошел от конца массива и заткнул стек ». Сравните маш , каракули , мусор и разбейте стопку . [2]
ПОСИКС
[ редактировать ]Перезапись памяти или файлов в системах POSIX , а также в таких оболочках, как Bash , часто происходит непреднамеренно — например, при использовании >
оператор перенаправления . Поэтому, чтобы предотвратить непреднамеренное затирание, можно использовать различные средства — например, установку параметра оболочки set -o noclobber
( баш , кш ) или set noclobber
( csh , tcsh ) предотвратит >
от забивания, заставив вместо этого выдать сообщение об ошибке : [3]
$ echo "Hello, world" >file.txt
$ cat file.txt
Hello, world
$ echo "This will overwrite the first greeting." >file.txt
$ cat file.txt
This will overwrite the first greeting.
$ set -o noclobber
$ echo "Can we overwrite it again?" >file.txt
-bash: file.txt: cannot overwrite existing file
$ echo "But we can use the >| operator to ignore the noclobber." >|file.txt
$ cat file.txt # Successfully overwrote the contents of file.txt using the >| operator
But we can use the >| operator to ignore the noclobber.
$ set +o noclobber # Changes setting back
По умолчанию команды mv и cp затирают целевой файл, если он уже существует. Это поведение можно переопределить, вызвав или назначив псевдонимы командам с помощью -i
switch , в результате чего команды запрашивают пользователя перед перезаписью файла назначения, или -n
чтобы не передавать исходные файлы с конфликтом имен.
Make-файлы
[ редактировать ]В make-файлах общий целевой стирание означает полную очистку всех ненужных файлов и каталогов, созданных предыдущими вызовами команды makefile. make
команда . [4] Это более серьезная цель, чем чистая , и она обычно используется для удаления программного обеспечения. Некоторые команды, связанные с make, во время своего выполнения вызывают команду «make clobber». CLOBBER Они проверяют переменную среды . Если для него установлено значение OFF, то затирание не выполняется. [5]
Сборка
[ редактировать ]В программировании на ассемблере , включая встроенную расширенную ассемблерную программу. [6] как поддерживается в C и C++ через GCC — термин «затертые регистры» часто используется для обозначения любых регистров , значение которых может быть перезаписано в ходе выполнения инструкции или инструкций.
Ссылки
[ редактировать ]- ^ «Что такое затирание в компьютерных технологиях?» . мудрыйГИК . 20 июня 2016 г. Архивировано из оригинала (html) 13 июня 2019 г. . Проверено 13 июня 2019 г.
Термин «затирание» используется в вычислительной технике по-разному, его значение обычно ясно из контекста. В каком-то смысле это относится к перезаписи существующих файлов или записей в памяти. Его также можно использовать для обсуждения перегрузки компьютеров, таких как серверы, с запросами, вызывающими снижение производительности. Это второе использование слова отражает обычное использование слова «колоть» как слова, описывающего избиение.
- ^ "Клоббер" в файле жаргона
- ^ «Электроинструменты Unix», Шелли Пауэрс, Джерри Пик, Тим О'Рейли, Майк Лукидес, стр. 892
- ^ UNIX System V, выпуск 4, Motorola Unix, Motorola, Inc, Inc Motorola, с. 28
- ^ «Unix Unleashed», Робин Берк, Дэвид Б. Хорват
- ^ «Расширенный Asm (с использованием коллекции компиляторов GNU (GCC))» . GCC, Коллекция компиляторов GNU . Проверено 22 марта 2021 г.