06.09.2018 13:36
Occul
 



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

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




Мы уже давно привыкли, что 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 цветов




Сейчас при выборе видеокарты смотрят только на ее производительность, но еще лет 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-ые, а переписывание их с нуля приведет к множеству проблем с софтом, который зачастую на эти старые «костыли» опирается. Поэтому приходится «тянуть» за собой весь ворох написанного кода, что, конечно, приводит к ухудшению производительности, и с этим ничего не поделать.
06.09.2018 13:43
OlegON
 
Забыли упомянуть кодировки. Поскольку в MS, видимо, считают, что все стандарты, которым они следуют, должны быть разработаны у них, то русский айтишный мир получил массу геморроя в виде кодировок 866 и 1251, это, заметьте, вдобавок к вороху уже существующих и в пределах одной операционной системы. Теперь к этому еще добавилась UTF-8. Вот за эти муки кого-нибудь в Сибирь сослать...
Часовой пояс GMT +3, время: 03:03.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.