2

Девять архаизмов времен MS-DOS, которые присутствуют в Windows 10

Егор
1426749606_001.jpg

Если посмотреть на статистику по операционным системам от Microsoft, то рынок почти пополам делят Windows 10 и 7, и где-то сбоку находится 8/8.1 — то есть, подавляющее большинство пользователей работает на системах, которые вышли не ранее 2009 года. И даже в этих современных ОС хватает атавизмов, оставшихся не только от всяких Windows XP или 95, но и даже от MS-DOS, и в этой статье мы о них поговорим.

Нумерация дисков начинается с C:

Безымянный.png

Мы уже давно привыкли, что Windows ставится именно на диск C, но если задуматься — а куда делись A и B? Ответ достаточно прост — давным-давно, еще по времена DOS (зачастую даже до 90-ых), основным и зачастую единственным способом передачи информации была дискета, даже жестких дисков в компьютерах могло и не быть. Поэтому именно для флоппи-привода (или дисковода для дискет) и была зарезервирована буква A. Что касается B — она была тоже зарезервирована для «флопика», ибо в те времена для копирования информации с дискеты на дискету зачастую приходилось иметь сразу два дисковода. Ну а для жестких дисков, которые тогда стоили крайне дорого и были очень редкими, и для всех других типов хранилищ, отводились буквы с C по Z. Конечно, сейчас флоппи-приводов днем с огнем не найдешь, и даже дисководы для лазерных дисков тоже почти ушли в прошлое, но все же до сих пор нумерация дисков начинается с C.

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



Достаточно интересный факт — выйдите на рабочий стол и попробуйте создать такую папку. Итогом будет ошибка «Указано неверное имя устройства». Странно, не правда ли? А объяснение достаточно простое — в школе Билла Гейтса часто обижали, в том числе называли ботаником — по-английски con. Когда же он вырос, то в отместку обидчикам в созданной им системе он запретил использовать такое имя для папок.

Конечно же, это не более чем красивая легенда, и на самом деле нельзя создавать папки еще с несколькими именами: nul, aux, lpt1 (и с любой другой цифрой), prn и другими. Все они в MS-DOS зарезервированы для некоторых функций: например, con — для устройств ввода-вывода, и именно поэтому появляется такая странная ошибка при попытке создания папки с таким названием. Конечно же, про MS-DOS почти все забыли, но этот атавизм есть даже в Windows 10.

Режим 256 цветов

Безымянный.png

Сейчас при выборе видеокарты смотрят только на ее производительность, но еще лет 20 назад приходилось смотреть, сколько цветов она может вывести, и с каким максимальным разрешением. Сейчас это уже давно не важно — все, даже самые простые видеокарты, могут работать с TrueColor (32-битный цвет) в разрешение не меньше FHD, а зачастую и выше 4K.

Про такие режимы, как HighColor (16-битный цвет), и уж тем более 256 цветов, все давно забыли — но только не в Microsoft. Вы до сих пор, даже в последней версии Windows 10, имеете возможность запустить программу с использованием 256 цветов (настраивается во вкладке Совместимость). Конечно, выглядит это ужасно, да сложно найти задачу, в которой это понадобится, но все же такой архаизм есть в системе.

This program cannot be run in DOS mode



В 90-ые годы, когда пользователи медленно «переползали» с MS-DOS на Windows, начали появляться программы, которые были заточены именно под «окна», то есть их запуск в DOS был невозможен. При этом расширение они имели ровно такое же — .exe. Как их различать? Правильно, в ПО чисто для Windows была встроена заглушка выше, которая в переводе на русский язык означает, что программа не может быть запущена в DOS-режиме.

Казалось бы — все, про DOS никто уже не помнит, можно заглушку убирать. Но нет, даже в самых последних версиях программ, написанных в 2018 году, она есть. Воистину DOS будет жить столько же, сколько и Windows.

Командная строка MS-DOS



Думаю, большая часть пользователей Windows про командную строку все же слышали, но вот назвать хотя бы одну команду вряд ли смогут. Во времена DOS было как раз наоборот — без знания хотя бы базовых команд пользоваться ПК вы не смогли бы. Разумеется, командная строка, как и терминал на Unix-овых системах, нужен, но еще в начале нулевых Microsoft стали писать для нее замену — PowerShell, и, около года назад, он заменил командную строку в Windows 10 по умолчанию. Но все еще ее можно запустить, и она полноценно работает — еще один живой артефакт времен DOS.

96 dpi



При слове «масштабирование» у тех, кто был первопроходцем с ультрабуком по времена Windows 7, думаю, невольно вырывается стон. Мыльный текст, поплывшие элементы интерфейса, растянутые картинки — все это дань тому, что начиная с 90-ых годов большую часть софта «гвоздями прибивали» к определенной плотности точек на дюйм — а именно 96. Откуда именно взялась эта цифра — почитать можно в одной из моих старых статей.

С учетом того, что разрешение 1920х1080 стало доминирующим при диагоналях 12-15", мы зачастую получаем плотность пикселей ближе к 150, что вынуждает увеличивать масштаб интерфейса. А если учесть то, что есть ноутбуки с 2K и даже 4K дисплеями, то мы получаем плотность пикселей и выше 200, где без масштаба в 150-200% работать невозможно даже обладателям орлиного зрения. 

Конечно, сейчас большая часть софта адаптирована под Hi-DPI и выглядит нормально, но все равно часть системных программ даже в Windows 10 привязана к 96 dpi, что приводит к размытым шрифтам. Увы — полностью отказаться от такой плотности точек невозможно без кардинального переписывания системы, так что размытые «сюрпризы» будут встречаться в Windows еще долго.

Системные .ini-файлы

Еще со времен Windows 95 большая часть настроек системы хранится в реестре, что достаточно удобно. Однако до сих пор в Windows 10 то тут, то там встречаются отголоски DOS — различные .ini-файлы, в которых вплоть до Windows XP хранились некоторые системные параметры.

Примером такого файла может служить win.ini — в нем содержалась информация об обоях на рабочем столе, программах в автозагрузке, системных шрифтах и многом другом. Сейчас же в этом файле по сути пустые поля:



При этом надпись «for 16-bit app support» не может не радовать в 64-битной системе, где запуск 16-битных программ без перекомпиляции невозможен в принципе. 

И таких файлов много — system.ini, boot.ini, config.sys и т.д. Все они уже давно не используются, но даже в Windows 10 есть.

NTFS

Думаю, многие не знают, когда появилась файловая система, которая сейчас по умолчанию используется в Windows. Отвечу — в 1993 году. Да-да, она старее Windows 95, и последний раз обновлялась в Windows XP в 2001, получив порядковый номер 3.1. Разумеется, в Microsoft понимают, что эта ФС уже серьезно устарела и ее пора менять — так, в 2012 году начался тест ReFS (почитать о ней можно здесь), и сейчас под нее можно отформатировать несистемный накопитель. Так что, возможно, в будущем пользовательские версии Windows на нее «переедут», ну а пока что приходится пользоваться такой древностью времен DOS (к слову, под него есть драйвер для поддержки NTFS).

Поддержка 16-битных программ

В то время, как Apple полностью отказалась от 32-битного ПО в iOS 11, и близка к тому же в macOS, Microsoft не то, что даже близко не прекращает поддержку 32-битного софта, но и до сих пор не убирает из Windows возможность запуска 16-битных программ времен DOS:


Да-да, это официальная информация с сайта Microsoft, и обновлялась она последний раз в 2017 году. То есть до сих пор на 32-битных версиях системы можно запускать 16-битное ПО без всяких изменений, а на 64-битных — после перекомпиляции «на лету» в 32 бита.

Как видите, даже в новейшей Windows 10, вышедшей всего 3 года назад, до сих пор присутствуют элементы прямиком из MS-DOS. И, увы, это общая тенденция по всем ОС — они зачастую уходят корнями в 90-ые, а переписывание их с нуля приведет к множеству проблем с софтом, который зачастую на эти старые «костыли» опирается. Поэтому приходится «тянуть» за собой весь ворох написанного кода, что, конечно, приводит к ухудшению производительности, и с этим ничего не поделать.
17

Будь в курсе последних новостей из мира гаджетов и технологий

Мы в соцсетях

Комментарии

+145
Очень познавательно и читабельно, приятный стиль изложения.
5 сентября 2018 в 13:15
#
+4
Fry
Я смог создать парку lpt в XP .
5 сентября 2018 в 13:17
#
Егор Морозов
+1764
Угу, потому что нужно дописать еще цифру — например, lpt1 не создается. Спасибо, поправил.
5 сентября 2018 в 13:22
#
+3
Автор сказочник, зарезервированное в системе сокращение con от слова console, т.е. консоль. Вывод на консоль.
5 сентября 2018 в 13:24
#
Егор Морозов
+1764
С добрым утром:
CON : Keyboard and display
PRN : System list device, usually a parallel port
AUX : Auxiliary device, usually a serial port
CLOCK$ : System real-time clock
NUL: Bit-bucket device
A:-Z: : Drive letters
COM1 : First serial communications port
LPT1 : First parallel printer port
LPT2 : Second parallel printer port
LPT3 : Third parallel printer port
COM2 : Second serial communications port
COM3 : Third serial communications port
COM4 : Fourth serial communications port
Так что никакая это не консоль, а устройства ввода-вывода, что я и написал.
5 сентября 2018 в 13:33
#
+255
Вы об одном и том же, но разными словами говорите. Консоль оператора ПЭВМ — клавиатура и дисплей (экран).
6 сентября 2018 в 08:57
#
+3
Здесь можно ещё добавить, что флоппи дисководы, как правило, использовались 3х и 5ти дюймовые, и у многих под них как раз и было задействовано две буквы A и B. Потом правда пятидюймовые быстро стали анахронизмом, а трехдюймовки продержались гораздо дольше.
Про файлы забыли упомянуть Bat файлы (пакетные исполняемые), часто писали команды в них, существуют и сейчас во всех версиях windows, расширение только cmd поменялось. В консоли командной строки многие команды MS-DOS (а последняя версия кажется была 6.22) перестали выполняться.
Файловая система NTFS начала использоваться начиная с Windows NT4 (если не ошибаюсь), хотя все устанавливали Win95, Win98(ME) на привычной файловой системе Fat32.
А на старых видеокартах (PCI или AGP) да, фпсами не мерялись, да оно и не нужно было, главное чтобы карта тогда разрешение 1024x768 поддерживала, частоту обновления экрана больше 60 Гц да цветов хотя бы 16 млн.
5 сентября 2018 в 14:00
#
mystique_man
+1586
Круто. 3 плюса за недостоверную информацию)
Писал писал, но решил копипасту из wiki дать:
"Windows NT была разработана в начале 1990-х после прекращения сотрудничества Microsoft и IBM над OS/2, развивалась отдельно от других ОС семейства Windows (Windows 3.x и Windows 9x) и, в отличие от них, позиционировалась как надёжное решение для рабочих станций (Windows NT Workstation) и серверов (Windows NT Server). Windows NT дала начало семейству операционных систем, в которое входят: собственно Windows NT, Windows 2000, Windows XP, Windows XP Professional x64 Edition, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7, Windows Server 2008 R2, Windows 8, Windows 8.1, Windows Server 2012, Windows Server 2012 R2, Windows 10, Windows Server 2016."

NTFS была в NT ветке. Win95, 98 ntfs из коробки не поддерживали. Но был paragon драйвер. Но это примерно как ext4 paragon драйвер для винды — если очень нужно прочитать/скопировать данные — сойдет, но для повседневного использования, и уж тем более для системного раздела — непригодно.
5 сентября 2018 в 15:30
#
+59
Давайте не будем лукавить: командная строка — это не DOS, поэтому она и не должна полностью наследовать команды DOS, а то, что MS сохранила название (и синтаксис) многих команд DOS, то это ей можно записать только в плюс. Полностью ломать систему, не имея парка современного ПО — это было бы огромной глупостью, а я думаю, в MS далеко не глупцы сидят. Что касается видео-разрешения, то тут дело обстоит несколько иным образом: все упиралось(ется) в стандарты VESA, а на начальном этапе и вообще в их полном отсутствии, поэтому каждый производитель «городил огород кто во что горазд». В такой ситуации (единая ОС, для кучи производителей железа), выбрать правильную стратегию, дело весьма нетривиальное, это не Apple (у которой тоже, к слову говоря, косяков было предостаточно), которая создавала свою ОС ТОЛЬКО под свои машины.
5 сентября 2018 в 15:33
#
+59
Ну для домашних пользователей может это и архаизм, но не надо забывать корпоративный/промышленный сегмент (который, кстати и составляет большую часть дохода компании, а кто платит, тот и заказывает музыку). Поэтому некоторые решения MS считаю оправданными (естественно не кнопку Пуск в 8/8.1 ;) ). Кстати, по поводу дисков, если не нравятся вам буквы дисков, то ни кто вам не запрещает примонтировать диски в каталог, создать единый пул накопителей или создать JBOD... — вариантов много, все зависит от желания разобраться в этом вопросе, благо MS предоставляет достаточное количество инструментов «из коробки».
5 сентября 2018 в 15:17
#
+4453
Когда то все мониторы были зелёными ))))
5 сентября 2018 в 15:35
#
+59
Не, сначала были серыми, а потом появились зелёные и желтые.
5 сентября 2018 в 15:41
#
Владимир Трошкин
+1
Начну с того, что есть куча промышленного/специализированного софта, не обновлявшегося со времён Win98. Так что режим совместимости выручает хоть и редко, но метко.
С powershell насмешили. Это уродство неспособноирешить простейшую задачу типа корректного слияния двух бинарных файлов. А на command-е этотпишется за 5 минут. Так что bat и cnd живее всех живых.
Далее, я не впервые слышу розовые сопли про реестр, как это типа хорошо. Аргументов, почему жто хорошо, не приводит никто. На самом деле реестр — это единая точка отказа, и хорошо от него только конторам, еювосстанавливающим его ща денежку. Для остальных реестр не даёт НИЧЕГО, кроме головной боли. Единая точка отказа — жтотя уде сказал. Далее, геморрой и пояски с бубном с восстановлением настроек программ после переустановки или восстановления системы. Невозможность простого переноса настроек. На любой чих нужны костыли. Для сравнения — вотвсех нормальных системах проги хранят настройки в обычных файлах в сециальных папках в пользовательской области. Таким образом имеем автоматическое разделение настроек для разных пользователей системы без плясок с бубном, простой перенос настроек, а переустановку системы грамотно написаный софт простотне замечает. То же итсо сбросом настроек: прибил конкретную папку в конкретном месте — и не надо гадать, гле очередное кривое поделие в реестр нага... намусорило.
5 сентября 2018 в 20:30
#
+59
Вставлю свои «пять копеек» по поводу виртуалок тут тоже не панацея — иногда требуется поддержка железа, которое внутрь виртуалок не прокинуть, а иногда бывает, что и саму систему в виртуалку не запихнуть («гуляют» системные таймеры, что очень критично для некоторого промышленного софта работающего в RT). А в остальном согласен — единая точка отказа вовсе не реестр..., а в первую очередь сам пользователь и его шаловливые ручки.
6 сентября 2018 в 01:16
#
+59
По поводу конкатенации файлов, согласитесь, что это удобнее: copy /b file1+file2+... file_new ;)
6 сентября 2018 в 01:34
#
Егор Морозов
+1764
по поводу виртуалок тут тоже не панацея
это да, конечно же лучше иметь поставленную напрямую на железо систему, но вот с современным железом это просто не возможно. Вот и получается, что приходится играться с режимом совместимости+виртуалкой.
согласитесь, что это удобнее: copy /b file1+file2+... file_new
да, в данном случае удобнее. Тут банальная разница в синтаксисах — человек, всю жизнь работающий на С и впервые попробовавший питон, тоже будет крыть его матом. А потом привыкнет и будет говорить, как он удобен).
6 сентября 2018 в 10:01
#
+1
И это прекрасно, это и есть обратная совместимость, которая не ломает каждый раз привычное окружение, в отличие от ебанутого мира Linux, где надо постоянно что-то рекомпилировать, и в отличии от некоторых языков программирования и фреймворков, где тоже любят ломать всё от версии к версии, заставляя всё нахрен переписывать.
Миру OpenSource и гигам стоит поучиться у Microsoft, а не быть такие ебанутыми переписывальщиками.
18 сентября 2018 в 09:14
#
–11
4 июля 2020 в 23:28
#