Перейти к содержимому

Как создать папку con

  • автор:

Музей фактов

Новые факты теперь можно читать в Телеграме, Инстаграме и Твиттере.

Почему в Windows нельзя создать папку с именем «con»?

Почему в Windows нельзя создать папку с именем «con»?

В Windows нельзя обычным способом создать папку с именем «con». Многие сайты утверждают, что это личное желание Билла Гейтса, которого в детстве дразнили таким словом (что якобы означает «ботан»). На самом деле всё проще: это ограничение восходит ещё к временам операционной системы MS-DOS. Там «con» наряду с другими подобными обозначениями (prn, aux, nul) было зарезервировано для обозначений устройств ввода-вывода, поэтому и нельзя создать папки с такими именами.

Почему нельзя создать папку с именем con?

Странный вопрос, не так ли? Однако пользователи рунета задают его достаточно часто, поскольку ответа на него не знают. Да и потом, зачем понадобился запрет на создания папки с названием Con? Неужели в этом есть что-то сверхсекретное и ответ знают только люди, работавшие над операционной системой Windows? Отнюдь, все гораздо проще.

Билл Гейтс является одним из самых известных разработчиков программного обеспечения в мире. Почему он стал таким известным? Вероятно, дело кроется в его состоянии — за свою жизнь он умудрился заработать более полусотни миллиардов долларов. И все-таки не только деньги сделали его знаменитым, речь также идет о созданной им компании Microsoft, выпускающей различные программы для компьютеров. Больше всего компания прославилась благодаря операционной системе Windows, которой пользуется большинство обладателей компьютеров и ноутбуков. И именно в ней есть множество странных и забавных на первый взгляд недоработок, вроде той, которой посвящена данная статья.

Но вернемся к основной теме. Существует легенда, которая гласит, что некогда очень давно, когда юный Гейтс начал учиться в школе, он отличался от других ребят. Так, со многими из них он не мог найти общий язык, а еще отменно учился, в результате чего ему постоянно давали различные клички. Одной из них было слово Con — оно переводится как «ботаник». Понятное дело, что для Гейтса ничего хорошего в этом прозвище не было и он его невзлюбил и, как поговаривают, даже возненавидел. Впоследствии, когда он приступил к созданию ОС MS-DOS, то вспомнил о своей кличке и решил добавить слово в исключения, в результате чего пользователь не смог бы создать папку с таким именем. Однако сейчас, по прошествии множества лет, стало понятно, что версия эта является не более, чем чьей-то выдумкой. Откуда мы это знаем? Западные источники указывают, что герой нашей статьи на самом деле не так хорошо учился в школе, как принято думать. Более того, поговаривают, что он даже был отчислен за неуспеваемость, что, впрочем, не помешало ему стать миллиардером.

А на самом-то деле все куда проще. Оказывается, что еще при проектировании MS-DOS в файловой системе Биллом были прописаны папки, которые можно было создать только один раз и использовались они для нужд самой системы. Так, помимо папки CON нельзя прописывать многие другие имена, например: PRN, NUL, AUX, LPT0, LPT1, COM1, COM2 и так далее.

Что интересно, даже после создания ОС Windows программисты почему-то решили не исправлять этот странный «баг», поэтому сегодня его можно встретить на всех операционных системах «Виндовс», разве что за исключением последних: Vista, 7 и 8.

Можно ли обмануть систему?

Как выясняется, сделать это можно, причем сразу несколькими различными способами.

  • Наиболее простой метод — введите слово CON, где одна или две буквы будут взяты из русской раскладки. Способ «читерский», однако если нужно удивить друзей, то можно им смело воспользоваться.
  • Теперь чуть посложнее. Необходимо в командной строке прописать следующий текст: C:\>mkdir \\.\C:\CON и папка появится на диске C (другой адрес можно задать самостоятельно). Однако трудность заключается в том, что папку нельзя будет переместить или удалить. Если захотите избавиться от нее, введите в строке следующее сочетание букв: C:\>rmdir\\.\C\CON.
  • Наконец, последнее возможное решение проблемы — это смена вашей ОС на 7 или 8. Вот таким необычным образом можно обмануть систему.

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

Комментарии к записи “ Почему нельзя создать папку с именем con? ”

  1. Денис17 сентября 2014 в 11:54 Вроде ее можно как-то создать, мне друг показывал и у него получилось. Но алгоритм действия я не запомнил.

Почему в Windows нельзя создать папку или файл с именем Con

�� Если у вас есть компьютер с Windows, вы можете сразу проверить всё, о чём говорится в статье. Если у вас Мак, то почитайте о том, что бывает в другой операционной системе.

Эксперимент

Чтобы сразу прояснить, о чём пойдёт речь, попробуйте вот что:

  1. Запустите компьютер с Windows.
  2. В любом месте создайте новую папку и назовите её Con английскими буквами.

Получится что-то вроде этого:

Почему в Windows нельзя создать папку или файл с именем Con Почему в Windows нельзя создать папку или файл с именем Con Почему в Windows нельзя создать папку или файл с именем Con

Файлы виртуальных устройств

Чтобы понять, почему так происходит, нужно сначала познакомиться с файлами виртуальных устройств.

Когда первая версия Windows только появилась, она была не самостоятельной операционной системой, а оболочкой для системы MS DOS. А первая версия MS DOS появилась в 1981 году, и уже тогда предполагалось, что к компьютерам с MS DOS можно будет подключать разные устройства — принтеры, мыши, сканеры и так далее.

Чтобы устройства могли работать с операционной системой, нужны драйверы — специальные программы, которые объясняют системе, как работать с разными устройствами. Но во времена MS DOS драйверы работали с устройствами не напрямую, а через виртуальные файлы, и выглядело это примерно так:

  1. Система записывает в этот файл какие-то данные.
  2. Драйвер видит, что, например, в файл принтера поступили какие-то данные, и начинает их распечатывать.

Общее правило такое: файлы виртуальных устройств нужны для того, чтобы драйверам этих устройств было проще работать.

Эти файлы назывались так:

При этом неважно, большими буквами будет это написано или маленькими — в MS DOS регистр букв был некритичен.

Эти названия зарезервированы системой, поэтому пользователь их не может использовать для своих нужд. А как только в MS DOS кто-то попытается создать папку или файл с таким именем, то система сразу выдаст ошибку.

Теперь поговорим о том, почему эта особенность MS DOS мешает нам создавать папки и файлы в Windows. Как это часто бывает в ИТ, всё дело в обратной совместимости.

Обратная совместимость

Первые версии Windows были графической оболочкой. Версия 3.1, на основе которой потом будет сделана Windows 95, стала полноценной и самостоятельной операционной системой, но всё равно она была основана на MS DOS. Оттуда же перешли и файлы виртуальных устройств, чтобы приложения для MS DOS могли запускаться на Windows 3.1.

Дальше были Windows 95, Windows NT, Windows 98, Vista и XP — все они базировались на одной и той же внутренней логике, которая включала себя ту самую изначальную логику MS DOS. Всё ради того, чтобы на этих системах можно было запускать старые программы.

Когда Microsoft разрабатывали новое семейство операционных систем, начиная с Windows 7 и заканчивая Windows 11, им пришлось добавить поддержку старых программ, чтобы сохранить совместимость с теми миллионами программ, которые уже вышли для Windows. А для этого они взяли код из старых версий, который был написан ещё для поддержки программ MS DOS.

�� Именно по этой причине в Windows 11 до сих пор нельзя создать папку «Con» — это сделано для того, чтобы сегодня можно было запускать софт тридцатилетней давности.

Чтобы было понятен масштаб связи современной Windows 10 с её старым прародителем Windows 3.1, посмотрите на этот скриншот: при выборе настроек базы данных открывается диалоговое окно, которое спроектировано для первой версии Windows:

Почему в Windows нельзя создать папку или файл с именем Con

А вот что было 30 лет назад (почти тот же интерфейс):

Почему в Windows нельзя создать папку или файл с именем Con

Зачем поддерживать старый софт?

В мире очень много оборудования и систем, которые работают на старом софте. Софт старый потому, что его компании-разработчики могли закрыться, обанкротиться, прекратить поддержку старого софта; или разработчик просто состарился и умер; или женился, завёл детей и уехал в загородное поместье. А железо осталось: на электростанциях, промышленных предприятиях, в госучреждениях и страшно представить где ещё.

Если Microsoft решит в одночасье отключить поддержку всего этого старого софта и железа, то все эти старые системы могут начать сыпаться. А так как они подпирают важные инфраструктурные вещи (особенно в США), никто этого не хочет.

Поэтому до сих пор в недрах самой современной Windows теплится код, который обрабатывал файлы устройств тридцать лет назад.

Как создать папку CON ⁠ ⁠

Существует одна грустная история о том, что основатель Microsoft Билл Гейтс в школьные годы был очень увлечен учебой. За это одноклассники дали ему прозвище «con», что в переводе означает «зубрила» или «ботаник». Билл Гейтс настолько невзлюбил это слово, что постарался избавиться от него везде, где только смог. И именно поэтому в Windows невозможно создать файл или папку с именем con.

Не верите ? Попробуйте сами, и вы получите вот такую ошибку.

Как создать папку CON Windows, Консоли, Копипаста, Не мое, Тег для красоты

А теперь серьезно. ��

Давным давно, когда по земле ходили динозавры еще до появления Windows, операционная система MS-DOS позволяла осуществлять доступ к некоторым устройствам так же, как и к файлам — по их имени. А поскольку для каждого устройства необходимо было обеспечить уникальное имя, то некоторые определенные имена резервировались системой. Использовать зарезервированное имя для создания файла\папки было невозможно, а любое обращение к ним расценивалось как запись в устройство. В частности CON является сокращением от CONSOLE (консоль для ввода данных).

Примечание. Команда COPY CON ″filename.txt″ осуществляет копирование с устройства CON в файл, или ввод символов с клавиатуры непосредственно в файл. Таким образом можно создавать и редактировать файлы прямо в командной строке, без текстового редактора.

По такому же принципу зарезервированы имена для принтера (PRN), LPT и COM портов (COM1-COM4, LPT1-LPT3), системного динамика (AUX) и специального нулевого устройства (NUL).

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

Однако при большом желании папку с именем con все же можно создать. Для этого надо открыть командную консоль и выполнить команду md \\.\C:\con, где вместо C:\ указать желаемый путь к папке. Папка con будет создана, но использовать ее для хранения файлов или установки программ не стоит. Удалить созданную папку тоже не просто, делается это только из командной строки командой rd \\.\C:\con.

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *