OS/2

OS/2 (полуось, ось, пополама, полумух) — операционная система, созданная IBM для писюков, на первом этапе совместно с Microsoft. В начале 90-х годов — предмет фапа фанатов, ничуть не меньшего, чем сейчас огрызки. Эпичнейший маркетинговый фейл IBM. Которое даже и не заметило, что где-то там у них была операционная система.
Жил да был Билл Гейтс. И купил он для IBM PC дисковую операционную систему QDOS за 50000 американских рублей. Далее называлась она уже MSDOS. Была та дось крива, тупа, убога, 16-битна и без графики. Отчего во второй половине 80-х г. мучились все неимоверно, а тут еще маки вылезли со своей грааааафикой, гуёёёёём и прочими пищалками и перделками, на радость юзерам. Отчего стало Биллу, а еще больше ИБМу, горько и обидно, и задумали они сделать свою систему с блекджеком и шлюхами, то есть защищённым режимом процессора, поддержкой сети, встроенной СУБД и нормальной файловой системой (а не FATом образца 78 года, который на винтах в сотню бегамайт уже выглядит полнейшим и бесповоротным говном, что, впрочем, не мешает ему вовсю использоваться и спустя уже 35 лет) и прочим там. И сделали. Да вот только тоже тупую, кривую и убогую — Билли же поработал, nuff said. В результате возникшего срача Микрософт с Ибмом расплевались на веки вечные, Билли пошел доделывать свои форточки, а ИБМ — погрязла в переписывании кода, уходившего корнями во времена аж PDP и Bell Labs… но об этом позже.
Примерно к 93-95 году у полуоси ещё были шансы. Альтернативой на те времена ей были только форточки 3.x, с наивысшими достижениями: встроенной сетью для рабочих групп, кооперативной многозадачностью, и, главное, всё тем же самым DOSом внутри. Но то про винду, а вот и полуось была тоже не сахар: драйверов под железо нет, требования к железу (проц и память прежде всего) по тем временам просто чудовищные, родных программ — почти нет. Хотя даже Windows 3.1 могла работать с 2 мегабайтами (не гига-, а именно мегабайтами) и на 286 процессоре, и на ней даже можно было работать в Microsoft Word 6.0 и Excel 4.6, мало, кстати, с тех пор изменившихся.
В это время Микрософт тоже не спал: Apple же давит, конкуренты со всех сторон. В 95 году была выпущена Чикага, виндовз95, кодовое название «Мастдай», любившая сыпаться в самое неподходящее время, да при этом выносить в хлам заголовки FAT-разделов. Но всё-таки там была нормальная графика, унифицированная работа с устройствами (программерам на радость, особенно всяким гамерописателям, которым стало не надо из каждой игрушки лезть прямо рогами и копытами в видеокарты и прочее железо) и всё, что сейчас, через 20 лет, считается само собой разумеющимся. А то, что внутри дос, фат, хмс-память и прочее — так это юзеров не особо волновало: не каждые 15 минут падает, ну и ладно.
Параллельно развивалась и НТя, по тем временам 3.5. И развивалась столь же медленно, ввиду еще бо́льших требований к железу, и была она с еще бо́льшими заскоками. НТя пришла к нам уже с нормальной NTFS (файловой системой на основе DEC'овской Files-11), со внутренней структурой практически на 100% унаследованной из DEC'овской VAX/VMS (ведущий архитектор которой как раз в те годы перебежал к мелкомягким — и там работает до сих пор), плавной многозадачностью и т. д.
Говорить о том, что с выходом маздая 98 и нти 4.0 полуось слилась, по меньшей мере преждевременно, поскольку в 1999 году была выпущена версия 4.5, имевшая ряд существенных улучшений и включающая возможности, аналоги которых отсутствовали на тот момент в продуктах M$… да взять хотя бы систему прав доступа, она же «Запуск процессов с ограниченными правами» — вот она. Что, впрочем, не помещало юзерам мигрировать в красиво-завлекательное, хоть и в заметной части нарисованное на гнилой тряпке декораций, щасте от Микрософта. Так и пришел Полный Пиздец Программированию.
А для своего времени эта штука была очень даже неплоха. Из основных плюсов:
Недостатки:
Всё это сводилось к холивору фанатов полуоси и виндузятников. Еда была обширная и доставляющая. Смысл сводился к тому, что полуось работала стабильней, чем Windows 9x, но под винду софта и дров было больше.
Например:

Полуось была написана в Bell Labs и её авторы, Кен Томпсон и Деннис Ритчи, сами наивно полагали, что пишут ОС Unix. Эта хрень, рассчитанная на компьютеры PDP, была лицензирована мелкомягкими и переписана под Intel x86, и в середине 80-х годов продавалась под торговой маркой Xenix. Именно эти исходные коды и были вкладом в разработку новой ОС со стороны ЗАО Некрософт, тогда ещё банды хакеров, наряду с DOS и MSX Basic, и называться оно должно было CP/DOS: «Control Program & Disk Operating System».
Не только Гордон Летвин из Майкрософт, но и справочные руководства от IBM подтверждают вышесказанное: каждый процесс имеет доступ к потокам ввода-вывода stdin/stdout/stderr, файловые дескрипторы наследуются при форке нового процесса, когда процесс завершается, его родитель получает сигнал SIGCHILD, страничная память, встроенное управление кучей. И всё это — в 1986 году.
Rexx и другие плюшки были перенесены с мейнфреймов. Сетевые протоколы — из BSD. И очень даже хорошо работают с этим ядром до сих пор, хотя оно с тех пор пилено-перепилено, вот же что странно.
Но, впрочем, для и красноглазых этот «Последний из Могикан» так и останется «виндовсом на стероидах», а всё потому, что Пророк в своей книге «Just For Fun» так написал.

Даже в 2012 году полуось поддерживается по отдельным договорам и используется в некоторых банкоматах и POS-ах, ввиду гораздо большей устойчивости, чем Windows. Вы никогда не видели банкомат с BSOD-ом, или с радостно мигающей на экране надписью «неизвестная ошибка, ОК»? Ещё увидите, неоднократно, да и требования к железу по современным меркам у полуоси совершенно никакие.
На банкоматах Diebold уже не используется, (на Diebold 1064 iX используется до сих пор, сам настраивал!) так как не поддерживает epp4. Зато вовсю юзается на NCR-ах 5870.
Также существует хорошая, годная полуось под названием eComStation, где присутствуют и полезные вещи: VPN, Wi-Fi, драйверы для широких экранов, Flash и последняя Java-машина. Её продают, и даже кто-то покупает.
А ещё, совершенно безумная команда российских и буржуазных программистов пишет Open Source версию OS/2 с нуля. Называется сиё чудо osFree и базируется на микроядре L4 Fiasco, из-за чего уже появилось рабочее полулулзовое название «Проект <del>По</del>беда».
Есть и другая команда российских и украинских программистов, которая пишет Closed Source версию OS/2, но, естественно, не с нуля, а на основе пусть старых, но всё же исходников, доводя их до текущего уровня. Их жизнь «слегка» осложняется тем, что исходники одного только ядра представляют собой "восемьдесят" мегабайт ассемблерного кода, рассчитанного на выполнение на 286-х процессорах. Назывался этот проект «Чахлик невмирушщий», а теперь называется OS/4 Phoenix. Трекер находится по адресу tracker.os4.su, последние вести с полей — ru2.halfos.ru.
Описания функций API и руководство к ним из IBM OS/2 Toolkit были переведены на русский язык, в книге десятки сотен глав (во что, как обычно, никто не верит), но, к сожалению или к счастью, аффтар слишком увлёкся Лиспом и прочей функциональщиной, так что законченной версии мы никогда не увидим.
Кроме того, Полуось пользуется популярностью у даунгрейдеров, и некоторыми энтузиастами до сих пор допиливается/хакается (что частично компенсирует забитый на неё болт от производителей железа/софта). Так-то!
Одним из неофициальных лозунгов сабжа было: «Размер имеет значение», так как OS/2 помещалась на дискету, имея при этом ядро, стек TCP/IP, текстовый таскменеджер и текстовый шелл — это было сделано для построения «роутера на одной дискете».
Вопреки представлениям некоторых, как бы им того ни хотелось, полуось "не была" гибридом. Программы DOS работали в ней через драйверы VDM, которые можно было не загружать, и ядро системы никоим образом не было завязано на наличие Доса с Виндовсом. Это был, как уже написано выше, слегка одичавший Unix, прошедший через «бутылочное горлышко эволюции», когда 4-х мегагерц было достаточно для запуска даже самых последних программ, а 64 килобайта считались Последним Пределом Вселенной.
Некоторые части ядра были написаны IBM-ом: механизм страничной памяти, таймеры и обработку прерываний делал внезапно Майк Коган (и он же проектировал API последних версий), драйверы и файловые системы — его друг Стив Мастрианни. Другие — мелкомягкими: переключение из 16-разрядного режима в 32-разрядный написал Гордон Летвин, файловая система HPFS — тоже его лап дело. Так чем же первоначальная MS OS/2 отличалась от первоначальной IBM OS/2. А ничем, поскольку вплоть до версии 1.2 оно разрабатывалось совместно.
А вот насчёт версии 2.0 мнения уже разошлись: IBM хотела дальше развивать кодовую базу пополамы версий 1.х, тогда как мелкомягкие хотели всё переписать заново и запилили проект под названием OS/2 NT (угадайте, что из него потом выросло), и выпустить его когда-нибудь потом как OS/2 3.0, и потому в разработке версии 2.0 участия практически не принимали. На что в Голубом Гиганте весьма обиделись, да тут ещё и свежевышедшая Винда 3.0 стала мозолить им глаза, так что между ними приключился развод и попилка шкафа.