Не совсем программистское
Как известно, у компьютеров есть внешняя память. Как примерно столь же известно, в этой внешней памяти хранятся файлы с разнообразным содержимым, в том числе и таким, которое считается "выполняемым".
Эти выполняемые файлы могут быть довольно большими, и при выполнении программы нет нужды держать все содержимое этого файла в оперативной памяти. Специально подученный дуэт хардвера и софтвера делает так, что в случае необходимости кусок выполняемого файла, если его нет в оперативной памяти, достается из файла, а в случае отсутствия необходимости в течение какого-то времени, из нее выбрасывается, чтобы другим программам и данным больше места осталось.
Проницательный читатель задастся вопросом: что же будет, если в процессе работы программы её выполняемый файл удалят или изменят?
Разные операционные системы на этот вопрос отвечают по-разному. В одних вообще нельзя удалить выполняемый файл, если есть использующие его программы; в других удаление в этом случае заключается лишь в лишении файла имени, а собственно удаление из файловой системы произойдет после того, как все использующие его программы завершатся.
С изменением аналогично. Системы, не позволяющие удалять используемые файлы, изменять их не позволяют и подавно; другие - в частности, Linux - удалять разрешают, а изменять - нет. Этот запрет, понятное дело, должен сопровождаться каким-то сообщением об ошибке.
Вот таким: Text file busy. Объяснять, почему вдруг "text file" - долго, да и незачем. Проще представить себе линуксного пингвина в кипе с поднятыми кверху крыльями в позе Тевье-молочника: "Tradition!"
Эти выполняемые файлы могут быть довольно большими, и при выполнении программы нет нужды держать все содержимое этого файла в оперативной памяти. Специально подученный дуэт хардвера и софтвера делает так, что в случае необходимости кусок выполняемого файла, если его нет в оперативной памяти, достается из файла, а в случае отсутствия необходимости в течение какого-то времени, из нее выбрасывается, чтобы другим программам и данным больше места осталось.
Проницательный читатель задастся вопросом: что же будет, если в процессе работы программы её выполняемый файл удалят или изменят?
Разные операционные системы на этот вопрос отвечают по-разному. В одних вообще нельзя удалить выполняемый файл, если есть использующие его программы; в других удаление в этом случае заключается лишь в лишении файла имени, а собственно удаление из файловой системы произойдет после того, как все использующие его программы завершатся.
С изменением аналогично. Системы, не позволяющие удалять используемые файлы, изменять их не позволяют и подавно; другие - в частности, Linux - удалять разрешают, а изменять - нет. Этот запрет, понятное дело, должен сопровождаться каким-то сообщением об ошибке.
Вот таким: Text file busy. Объяснять, почему вдруг "text file" - долго, да и незачем. Проще представить себе линуксного пингвина в кипе с поднятыми кверху крыльями в позе Тевье-молочника: "Tradition!"