История операционных систем: от Multics до графического интерфейса
Windows по праву считается самой популярной настольной операционной системой в мире. Хотя Linux значительно уступает ей по распространенности среди массовых пользователей, именно на Linux работает большинство серверов на планете. Обе системы имеют богатую историю, черпая вдохновение в ОС прошлых лет, которые заложили фундаментальные основы, актуальные и по сей день.

Multics (1969): предок Unix, о котором мало говорят
Проект Multics для своего времени был грандиозным начинанием, объединившим усилия Массачусетского технологического института (MIT), General Electric и Bell Labs. Система задумывалась как своего рода коммунальная услуга, которой могли бы пользоваться многие люди одновременно; ее первый запуск состоялся в 1969 году в MIT.
Значимость Multics для Windows и Linux сложно переоценить. Без этого проекта у нас могло бы не быть Unix, ставшего главным источником вдохновения для Linux. Когда в 1969 году компания Bell Labs вышла из проекта из-за громоздкости системы и постоянных задержек, часть инженеров начала работу над Unix. Новая система задумывалась как уменьшенная и упрощенная версия Multics и в шутку называлась Unics, так как была рассчитана на работу одного пользователя в конкретный момент времени, что позже трансформировалось в Unix.
Unix, а впоследствии и Linux, унаследовали некоторые черты Multics: единое дерево каталогов, ядро, защищенное от обычных приложений, и командную оболочку. Что касается Windows, то права доступа в NTFS (New Technology File System), появившиеся еще во времена Windows NT, базируются на списках контроля доступа (ACL) — концепции, впервые примененной именно в Multics. В x86-процессорах, на которых работает большинство ПК с Windows, реализованы четыре аппаратных кольца защиты, и Windows запускает свое ядро в самом внутреннем из них. Это еще одна идея, восходящая к архитектуре Multics.
Unix (1969): истоки современной архитектуры
Ситуация стала по-настоящему интересной, когда Кен Томпсон и Деннис Ритчи, работавшие над Multics, создали Unix в качестве стороннего проекта. Они стремились реализовать идеи Multics, но без лишней сложности. В результате появилась элегантная ОС, ставшая одной из самых важных и, возможно, самой влиятельной в истории. Большинство ключевых современных операционных систем, включая Linux, Android, macOS и iOS, имеют тесные связи с Unix.

Unix ввела концепцию «все есть файл» и философию создания множества небольших специализированных программ, которые могут работать вместе для достижения общих целей. Благодаря широкому распространению в университетах по всему миру, Unix вдохновила целое поколение компьютерных ученых. Linux, по сути, является клоном Unix. Линус Торвальдс поставил цель написать с нуля ядро, которое вело бы себя как Unix, и ему это удалось с запасом. В сочетании с бесплатными версиями инструментов Unix, разработанными проектом GNU, получился Linux — чрезвычайно универсальная Unix-подобная система. Многие популярные команды Linux, такие как ls, cd, cat и grep, пришли именно из Unix.
В свою очередь, Microsoft лицензировала Unix и создала собственную версию — Xenix. Работа над ней нашла отражение в MS-DOS, куда были заимствованы некоторые идеи, например, иерархические каталоги. В наше время подсистема Windows для Linux (WSL) позволяет пользователям Windows запускать дистрибутивы и программное обеспечение Linux непосредственно внутри ОС от Microsoft.

Xerox Alto (1973): прообраз графического интерфейса
Xerox Alto был компьютером, а не операционной системой, но его программное и аппаратное обеспечение оказало колоссальное влияние на Windows, Linux и macOS. Alto стал первопроходцем в области графического пользовательского интерфейса (GUI) в то время, когда все остальные ОС полагались на командную строку. Программное обеспечение системы использовало перекрывающиеся окна и выпадающие меню, а сам компьютер был оснащен (по тем временам) высококачественным битмап-экраном в портретной ориентации. Управление осуществлялось с помощью клавиатуры и трехкнопочной мыши — комбинации, которую использует практически каждый современный ПК или Mac.

Стив Джобс посетил исследовательский центр Xerox в Пало-Альто (сам Alto никогда не продавался коммерчески), увидел компьютер в действии и осознал, что за этим будущее. Он использовал (некоторые скажут — украл) лучшие идеи Alto при разработке Apple Lisa и ее ОС, а позже — Macintosh, который вывел GUI в мейнстрим. Microsoft создавала приложения для первого Macintosh еще до его появления в продаже, поэтому компания получила ранний доступ к графическому интерфейсу Apple, и в первой версии Windows было заимствовано множество аналогичных решений.
Джобс обвинял Гейтса в плагиате, но у последнего нашелся достойный ответ. Гейтс сказал Джобсу: «Стив, я думаю, на это можно посмотреть иначе. Скорее, у нас обоих был богатый сосед по имени Xerox, и я пробрался в его дом, чтобы украсть телевизор, но обнаружил, что ты его уже украл». Что касается Linux, то хотя фанаты этой системы ценят командную строку, большинство дистрибутивов Linux поставляются с графическим интерфейсом на базе окон, иконок и меню, используя среды рабочего стола, такие как KDE Plasma и GNOME.

CP/M (1974): операционная система, подарившая Windows буквы дисков
Система CP/M (аббревиатура от Control Program for Microcomputers) была создана в 1974 году Гэри Килдаллом для процессора Intel 8080, который по праву считается одним из самых значимых CPU в истории. Будучи первой по-настоящему популярной ОС для настольных компьютеров, CP/M внедрила элементы, на которые Windows опирается до сих пор. Именно Килдалл ввел в обиход термин BIOS, а также популяризировал систему буквенного обозначения дисков, которая стала стандартом для Windows (в отличие от Linux, где диски не обозначаются буквами).
Благодаря CP/M стали привычными расширения файлов из трех символов. Тот факт, что Windows запрещает создавать файлы с именами CON, PRN, AUX или NUL, также уходит корнями в эпоху DOS, которая переняла из CP/M метод обработки устройств (например, консоли CON) как специальных имен, недоступных для обычных файлов. Кроме того, командная строка Windows берет свое начало именно в CP/M.

Важность CP/M заключалась в том, что написанное для нее программное обеспечение могло запускаться на разных машинах с различным оборудованием. Производителю компьютера требовалось лишь адаптировать BIOS. Это привело к буму коммерческого софта, такого как WordStar, работавшего на широком спектре устройств. К примеру, программы для CP/M можно было запускать на Apple II с помощью Microsoft SoftCard — одной из первых аппаратных новинок Microsoft, ставшей коммерческим хитом.
Изначально IBM планировала использовать именно CP/M для своего первого ПК, но из-за стечения обстоятельств выбрала Microsoft. Поскольку у Microsoft не было готовой ОС, Билл Гейтс и его команда приобрели 86-DOS, которая намеренно проектировалась с поведением CP/M для упрощения портирования популярного ПО. В дальнейшем 86-DOS превратилась в PC DOS для IBM и MS-DOS для остальных ПК. Таким образом, MS-DOS и, как следствие, Windows имеют множество сходств с CP/M.

VMS (1977): система, вдохновившая Windows NT
Операционная система VMS (Virtual Memory System), также известная как OpenVMS, была разработана в 1970-х годах компанией Digital Equipment Corporation (DEC). Хотя она не стала массовым продуктом, VMS отличалась высокой надежностью, так как предназначалась для бизнеса и государственных структур, где этот показатель был ключевым. Система обладала мощными средствами безопасности и продвинутым управлением виртуальной памятью, на что прямо указывает ее название.
Одним из ведущих архитекторов VMS был Дэйв Катлер. После того как DEC закрыла проект ОС следующего поколения под его руководством, Катлер перешел в Microsoft, где возглавил создание Windows NT — принципиально новой ОС, не зависящей от DOS. Катлер и его команда, состоявшая из инженеров, пришедших вслед за ним из DEC, проделали колоссальную работу, и в 1993 году Windows NT была выпущена.

Хотя при создании Windows NT Катлер не использовал код VMS, архитектуры этих систем оказались схожи «под капотом». Многие внутренние механизмы Windows NT, включая управление виртуальной памятью и обработку ввода-вывода устройств, напоминали принципы работы VMS. Компания DEC даже рассматривала возможность подачи иска против Microsoft, но стороны урегулировали конфликт: Microsoft выплатила DEC значительную сумму (по сообщениям, около 105 миллионов долларов) и обязалась поддерживать процессоры DEC Alpha в Windows NT. Поскольку современная ОС Windows по-прежнему строится на ядре NT, в ней до сих пор сохраняется множество «ДНК» VMS, и Windows выглядела бы совсем иначе, если бы Катлер не перешел в Microsoft.
MINIX (1987): фундамент Linux и скрытая часть вашего ПК
MINIX — Unix-подобная операционная система, разработанная Эндрю Таненбаумом, профессором голландского университета. Он задумывал ее как учебное пособие, прилагая полный исходный код к своему учебнику по информатике. Создание MINIX стало ответом на ограничения лицензирования Unix со стороны компании AT&T, которая запрещала использование исходного кода ОС в образовательных целях. Благодаря компактности, простоте и микроядерной архитектуре, MINIX была доступна для изучения студентами и могла работать на недорогих персональных компьютерах того времени.

В 1991 году Линус Торвальдс, установив MINIX на свой компьютер с процессором 386, заинтересовался концепцией, но счел возможности системы слишком ограниченными. Он начал разработку эмулятора терминала, который постепенно разросся в сложности и превратился в ядро Linux. Поскольку лицензия MINIX в то время была ограничительной, Линус решил выпустить Linux под лицензией с открытым исходным кодом, разрешающей свободное использование, изменение и распространение. Это стало важнейшей причиной стремительного роста популярности Linux и появления множества дистрибутивов.

Любопытно, что если вы используете ПК с процессором Intel, то прямо сейчас, пока вы читаете этот текст, на нем, скорее всего, работает MINIX. В Intel Management Engine, миниатюрном процессоре, встроенном в чипсеты Intel, начиная с середины 2010-х годов используется именно MINIX 3.
Скрытая роль MINIX в современных системах
Возможно, вы используете MINIX независимо от основной операционной системы, установленной на вашем компьютере, если в нем задействован процессор Intel, выпущенный за последнее десятилетие.

Влияние классических систем на архитектуру
Windows и Linux черпали вдохновение из широкого спектра операционных систем прошлого. Хотя Linux является в первую очередь Unix-подобной ОС, в ней все еще используются элементы, присущие целому ряду классических операционных систем, такие как графический интерфейс пользователя (GUI), защищенное ядро и единое дерево каталогов.
Windows также представляет собой объединение идей, заимствованных из множества различных операционных систем. Ни одна из этих платформ не стала бы тем, чем она является сегодня, если бы не классические решения, которые проложили путь для двух важнейших операционных систем в мире.





