Русский
Русский
English
Статистика
Реклама

Альтернативные ос

Я станцевал бы для тебя Menuet

02.11.2020 12:06:03 | Автор: admin

История удивительной операционной системы MenuetOS




Идея разработки миниатюрной ОС с оконным графическим интерфейсом, построенной по принципу вся система на одной дискете, появилась, наверное, одновременно с этими самыми дискетами. Попытки запихнуть компактную операционнку c GUI на съемные носители предпринимались и в девяностые, и в двухтысячные. Одной из таких попыток, со временем превратившихся в серьезный проект, который дожил до наших дней, стала созданная фактически на голом энтузиазме MenuetOS. Эта система отличается от других подобных стартапов и замыслом, и используемыми технологиями, и архитектурой.

Немного истории


Большинство миниатюрных операционок, появившихся на свет в последние два десятилетия, изначально позиционировались, как любительские или учебные проекты, и потому многие из них оказывались свернутыми прежде, чем успевали набрать обороты. Другие же со временем перерастали в серьезные разработки, поддерживающие широчайший спектр оборудования и предлагающие пользователям богатый ассортимент прикладного программного обеспечения. Однако практически все подобные продукты имели, пожалуй, одну характерную общую черту: их архитектура в той или иной степени разрабатывалась на основе исходного кода уже существующих операционных систем, поставляемых на условиях универсальной лицензии GPL, то есть, как правило, на ядре GNU/Linux.

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

Тем не менее, слава талантливого финна Линуса Торвальдса, похоже, все еще не дает покоя многим и многим одаренным программистам. Возможно, именно эта слава подвигла земляка Торвальдса, гражданина Финляндии Вилле Турьянмаа (Ville Turjanmaa) заняться на рубеже тысячелетий разработкой собственной ОС с оконным графическим интерфейсом, исходный код которой он решил написать на 32-битном ассемблере для x86.

image
Одна из первых версий MenuetOS

По словам самого Турьянмаа, идея родилась в тот момент, когда он заметил, что изначально созданные на C или C++ компоненты Linux, будучи переписаны на ассемблере, приводят к увеличению быстродействия системы в среднем на 10 40 процентов. Решив построить принципиально новую платформу, основными критериями для которой являлись бы компактность и быстродействие, Турьянмаа взялся за дело, и уже 16 мая 2000 года он успешно провел полевые испытания операционной системы MenuetOS (сокращенно MeOS), которая тогда была полностью совместима лишь с его собственным домашним компьютером.

Я впервые услышал о разработке горячего финского парня Вилле в 2002 году. Без долгих раздумий я скачал с русскоязычной странички проекта http://menuet.narod.ru дистрибутив MeOS, протестировал его, и тут же написал о новинке развернутую статью в журнал Магия ПК, где в те времена работал заместителем главного редактора. А ОС и впрямь была примечательная, так что рассказать читателям было о чем.

image
Так когда-то выглядела MenuetOS картинка из 2002 года

Несмотря на свои скромные размеры, MeOS оказалась вполне современной 32-битной многозадачной операционной системой с простым и удобным оконным интерфейсом. Она использовала низкоуровневый API, вытесняющую многозадачность, многопоточность и поддерживала файловую систему FAT32. Последнее обстоятельство показалось мне важным достоинством MeOS, поскольку, во-первых, не вынуждало пользователя возиться с какой-либо диковинной разметкой дисковых разделов, а во-вторых, позволяло работать с файлами на компьютерах, где в те времена помимо новомодной Windows XP все еще царили Windows 98 и ME, для которых файловая система FAT32 была роднее некуда.

Скромными оказались и аппаратные требования. Для запуска MeOS был необходим компьютер с процессором не ниже Intel 80386, рекомендовалось наличие 32 Мбайт оперативной памяти (нижний предел 4 Мбайта), также годилась любая EGA, VGA или SVGA-видеокарта. В случае использования SVGA-адаптера требовалась плата, оснащенная минимум 1 Мбайт видеопамяти и поддерживающая стандарт VESA 1.2, VESA 2.0, или VESA 3, что принципиально позволяло получить на экране изображение разрешением 1280x1024 пиксела. MenuetOS умела работать с жесткими дисками, использующими протокол LBA, распознавала любую модель мыши, совместимой с Microsoft или Logitech Mouse, и подключаемой к COM-порту, либо порту PS/2. А вот с поддержкой USB у MeOS в те времена были сложности. Кроме того, система позволяла слушать музыку, если на машине установлена звуковая карта, совместимая с Sound Blaster 16, и даже позволяла подключить сетевую плату, правда, одного-единственного типа: Realtech 8029 PCI Ethernet Adapter. Неплохо для 2002 года, не так ли?

image
Еще один скриншот MenuetOS образца 2002 года

Но, наверное, самым главным достоинством MenuetOS было то, что сам дистрибутив этой чудо-операционки вместе с оконным интерфейсом и базовым набором прикладных программ занимал всего-навсего 1,44 Мбайта. Будучи установлен на дискету 3,5 дюйма, он позволял загружать MeOS непосредственно с дисковода, что автоматически исключало какую бы то ни было необходимость инсталлировать систему на жесткий диск с сопутствующим созданием для нее собственного раздела и настройкой многовариантной загрузки, с чем я в те времена регулярно тра возился, устанавливая винду и линукс на соседние логические диски. Ну, а поскольку сама система вместе с исходниками раздавалась бесплатно под лицензией GPL (более современная 64-разрядная версия позже стала распространяться под собственной лицензией), скачать и протестировать ее мог любой желающий.

image
MenuetOS образца 2002 года вполне современная по меркам того времени система

Установка


Удивительно, но факт: за минувшие 18 лет процедура установки MeOS не то чтобы кардинально изменилась. Тогда дистрибутив под винду поставлялся в виде исполняемого файла MSETUP.EXE, в котором содержался образ операционной системы. Сейчас файл называется MDW64-1.36.20.EXE (для 64-разрядной версии ОС). Установщик все так же при запуске предлагает вставить чистую дискету в дисковод А:, запустить инсталлятор, откинуться на спинку табуретки и получать удовольствие. И если 18 лет назад у меня с этим не было никаких проблем, то где взять дисковод сейчас, когда на моем ноутбуке нет даже оптического привода загадка. Найти рабочий программный эмулятор FDD тоже, как оказалось, тот еще квест, который мне пройти не удалось. Пришлось заморачиваться с настройкой виртуалки, чтобы не доставать из чулана старую 486-ю машину, а потом не искать по пыльным закоулкам пачку погрызенных мышами дискет.

image
Так Menuet OS выглядит сейчас

Раньше при первом запуске машины с дискеты MenuetOS предлагала выбрать графический адаптер (начиная с EGA) и подходящий графический режим (начиная с 16 цветов), а для видеокарточек с поддержкой VESA 2.0 требовалось еще вручную указать тип обращения к линейному буферу адаптера (LFB) и тип кеширования MTRR. Сейчас система обходится без всех этих нудных формальностей и просто запускается с наиболее подходящим экранным разрешением. Также раньше операционка заставляла юзера вручную указывать порт, к которому подключена мышь (на выбор предлагался COM1, COM2 или PS/2), но с 2008 года MenuetOS научилась работать с USB и подхватывать мышь на лету. Прогресс!

Сам образ операционной системы хранился в файле ramdisk, по умолчанию располагающийся на той же дискете, где размещался загрузчик. В качестве небольшого лирического отступления можно заметить, что функционально MeOS позволяла читать ramdisk и с винчестера, однако это никоим образом не избавляло юзера от необходимости использовать загрузочную дискету. Образ виртуального диска считывался либо с самого гибкого диска, либо из раздела FAT32, определяемого в текущей аппаратной конфигурации компьютера в качестве root, то есть из первого раздела нулевого жесткого диска, куда следовало предварительно поместить файл MSETUP.EXE для этого в процессе загрузки MeOS следовало выбрать режим Load ramdisk from hd/msetup.exe. В данном случае процесс запуска системы протекал в несколько раз быстрее, а для еще большего удобства умельцы мутили различные варианты загрузчиков, позволявшие запускать MeOS прямо с винта. Некоторые из них вроде бы до сих пор можно найти на menuet.narod.ru. Сейчас опции загрузки образа системы с диска я в настройках MeOS почему-то не нашел.

image
Зато в MenuetOS можно смотреть футбол

Первые версии MenuetOS не умели самостоятельно определять подключенное к компьютеру оборудование, потому после окончания загрузки системы требовалось открыть окно настройки устройств (System -> Device Setup) и вручную указать некоторые параметры аппаратной конфигурации персоналки, в частности, тип подключения жестких дисков и привода CD-ROM (master/slave), характеристики звуковой карты (каналы DMA и запрос на прерывание), а также ряд других данных. Сейчас ситуация не сильно изменилась в лучшую сторону: в VirtualBox система не смогла распознать сетевую карту и на машине отсутствовал звук, выставить разрешение выше 800х600 мне тоже не удалось. Впрочем, я не особо и пытался для тестирования мне вполне хватило дефолтных настроек.

Юзабилити


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

Раньше в MeOS ощущался явный дефицит прикладных программ. Сейчас в комплекте поставки системы имеется браузер, почтовый клиент, простенький текстовый редактор, telnet-клиент, проигрыватель аудио видео-файлов, файловый менеджер, калькулятор, компилятор Ассемблера, графический редактор, просмотрщик картинок и даже TV-тюнер. Под MeOS есть серверы FTP/HTTP/SMTP и клиенты IRC/HTTP/NNTP/TFTP.

image
Штатный текстовый редактор MenuetOS

Еще имеется текстовый редактор, очень похожий на старый добрый Edit в MS-DOS, и крайне простой файловый менеджер, интерфейс которого напоминает плод греховной любви Windows Commander и стандартного File Manager из Windows 3.1.

image
А это файловый менеджер


О, еще есть игры! В стандартном комплекте поставки можно найти целых 15 игр, включая шахматы, Сапера и Косынку, а с сайта разработчика можно скачать образ компакт-диска с дополнительным софтом, где есть портированные под MeOS Doom и Quake!

image
Куда же без игр?

Достоинства и недостатки


Несмотря на внешнюю простоту, MenuetOS есть, чем гордиться. Самые важные достоинства данной ос ее бесплатность, компактность, быстродействие и нетребовательность к системным ресурсам. Фактически, MeOS можно развернуть на любом ископаемом железе, которое на сайтах объявлений часто отдают за самовывоз. При этом архитектура ОС не требует даже наличия на компьютере жесткого диска. А при помощи имеющегося в MeOS компилятора Ассемблера можно превратить компьютер в незаменимый полигон для обучения детей основам программирования.

Все остальное можно, пожалуй, отнести к недостаткам. Список железа, гарантированно поддерживаемого MenuetOS, пока еще относительно невелик, выбор софта по сравнению с тем же линуксом скуден, а интерфейс придется по вкусу разве что аскету. Но вместе с тем, этот проект активно развивается последняя (но не последняя в истории) версия MenuetOS увидела свет 4 октября 2020 года.

Вместо заключения


На основе исходников MenuetOS была разработана операционная система KolibriOS, появившаяся на свет, как форк 32-разрядной версии MeOS. Но со временем она выросла в самостоятельный, независимый и крайне интересный проект. Колибри также написана на fasm, и активно поддерживается комьюнити, благодаря чему имеет собственных поклонников. О данном проекте уже неоднократно писали на Хабре . Но это, как говорят в сказках, уже совсем другая история.



Подробнее..

GEM. Теория забытых окон

20.01.2021 12:12:03 | Автор: admin


Спустя четыре года после того, как в Xerox разработали первую в истории пользовательскую среду с оконным графическим интерфейсом, американская компания Digital Research, Inc. создала собственную оконную платформу, оснащенную практически всеми компонентами, характерными для современных ОС. Если бы колесо истории повернулось в другую сторону, а обстоятельства сложились несколько иначе, она вполне могла бы занять место Windows в мире операционных систем. В сегодняшней историческо-ностальгической статье мы вспомним эту ушедшую и неоправданно забытую технологию.

1985 год. В Интернете зарегистрированы первые домены верхнего уровня: .arpa, .com, .edu, .gb, .gov, .mil, .net, .org, .us, в СССР началась перестройка, Nintendo выпустила легендарные игры Super Mario Bros и Duck Hunt. А еще этот год положил начало новой эпохе: 20 ноября 1985 состоялся релиз графической оболочки для MS-DOS под названием Microsoft Windows 1.01. Но еще за 8 месяцев до этого радостного события, 28 февраля 1985 года, компания Digital Research выпустила на рынок собственную графическую надстройку с оконным интерфейсом для операционной системы CP/M, получившую название Graphics Environment Manager, или, сокращенно, GEM.

Программная среда GEM поддерживала мышь, в ней имелся Рабочий стол, на котором размещались ярлыки сменных и стационарных накопителей, а также ярлык для виртуального диска классического RAM drive, пространства оперативной памяти, динамически выделяемого системой при загрузке машины для размещения системных файлов. Кроме того, в распоряжении пользователя имелась Корзина, а хранящиеся на дисках файлы и папки отображались в виде значков. Оконный менеджер автоматически создавал для запускаемых приложений отдельные окна с настраиваемыми геометрическими размерами, оснащенные кнопками управления и полосами прокрутки. В распоряжении любителей постучать по клавишам имелась командная строка. В общем, все как в винде. Только появился GEM немного раньше. Первыми машинами, на которых успешно работал GEM, были Atari ST на базе процессора Motorola 68000, но позже платформу портировали под Intel 8088, и она дебютировала на IBM-совместимых машинах, в том числе, в версии под DOS.

image
GEM/1

Можно смело сказать, что дизайнерское и функциональное исполнение GEM было очень похоже на интерфейс первой версии MacOS, если не считать ряда незначительных технических отличий. Например, папки в GEM не открывались в новом окне, их содержимое демонстрировалось пользователю в том же окне, в котором до этого отображалась родительская директория. Дисковые накопители не определялись в системе автоматически: для того, чтобы отобразить ярлык диска на рабочем столе, нужно было воспользоваться пунктом меню Install disk drive. Меню Desk практически полностью соответствовало такому же пункту в MacOS: помимо всплывающего окна с информацией о текущей версии операционной системы, оно выполняло функции, аналогичные Панели задач в MS Windows, а именно, отображало заголовки всех запущенных в данный момент времени приложений.

Эффекты появления тени на фоне всплывающих окон, названий загружаемых приложений, а также псевдотрехмерное обрамление полос прокрутки были удалены из системы по требованию корпорации Apple, которая расценила использование подобных элементов, как прямое нарушение своих авторских прав, поскольку все перечисленные декоративные элементы впервые были реализованы в MacOS, выпущенной в том же 1985 году, но на несколько месяцев раньше. Цветовая палитра отображения окон, рабочего стола и прочих элементов интерфейса GEM поддавалась настройке, причем в составе платформы имелось несколько стандартных цветовых схем. Изменение настроек системы осуществлялось с помощью специальной утилиты, которая носила название Редактор ресурсов.

image
GEM/1

Для вывода на печать графических изображений в данной платформе использовалась специальная программа Output, создававшая промежуточный метафайл с расширением .gem, который включал последовательность команд формирования рисунка. После подготовки такого файла пользователю предлагалось выбрать используемый в настоящий момент в системе принтер или графопостроитель, указать его настройки, вслед за чем метафайл отправлялся в очередь на печать и выводился через стандартный порт компьютера на печатающее устройство. Не самый просто алгоритм.

Увы, весьма удобный и быстрый для своего времени GEM/1, завоевавший вполне заслуженное признание пользователей и быстро набравший популярность на североамериканском континенте, чрезвычайно не понравился руководителям корпорации Apple, посчитавшим, что Digital Research Inc. украла у них не только саму идею пользовательской оконной среды, но и ее дизайнерско-техническую реализацию. Состоялся громкий, скандальный и позорный судебный процесс, который выиграла компания Apple. GEM/1 был запрещен к дальнейшему распространению, и по решению суда производитель должен был убрать из операционной системы все компоненты, хоть сколько-нибудь напоминающие элементы MacOS. Результатом такого постановления стало появление в 1986 году платформы GEM/2, значительно уступавшей своей предшественнице.

image
GEM/2

GEM/2 работала гораздо менее стабильно и была просто неудобна в использовании. Рабочий стол теперь представлял собой два вытянутых вдоль экрана окна фиксированного размера, оснащенных вертикальными и горизонтальными полосами прокрутки. В верхнем окне отображались подключенные к системе дисковые накопители, нижнее выполняло функции, аналогичные современному Проводнику Windows: в нем отображалось содержимое выбранного в верхнем окне диска. Корзина была удалена с Рабочего стола и вообще отсутствовала в системе.

Сами полосы прокрутки изменились, став значительно уже, пропали практически все эффекты отображения тени, сместились кнопки управления окнами, а также состав и расположение функциональных меню. Дисководы по-прежнему не подключались к системе автоматически. Стандартные программы, входившие в комплект поставки первой версии GEM, такие как Калькулятор, отображавшиеся в отдельном окне часы и менеджер печати, остались практически без изменений, за исключением того, что утилита Output научилась работать с файлом подкачки, что позволяло выводить текстовые и графические элементы на печать в фоновом режиме. Из системных окон по требованию Apple исчезли так называемые радио-кнопки, позволявшие отмечать одну или несколько позиций в предлагаемом списке настроек, они были заменены на непривычные квадратные двумерные кнопки, причем активная опция выделялась страшноватой на вид черной заливкой.

Внесенные в систему изменения были расценены пользователями, как негативные, благодаря чему GEM начал быстро сдавать позиции, утрачивая рынок под натиском только что появившейся Microsoft Windows 1.01. Следует отметить, что первая реализация Windows по своему оформлению тоже недалеко ушла от MacOS, однако Microsoft, в отличие от Digital Research, оказался Apple не по зубам. Положения не спасли ни GEM/3, ни наспех усовершенствованная GEM/4: Windows все увереннее и увереннее вытесняла их с поля битвы. Ситуация несколько изменилась лишь тогда, когда Digital Research выпустила в 1988 году очередную реализацию платформы, которая получила название GEM/5.

image

По своему дизайнерскому оформлению и функциональным возможностям GEM/5 оказался далеко впереди как всех предыдущих реализаций GEM, так и Microsoft Windows версий 1.0, 2.0 и 3.0. Прекрасный и удобный трехмерный интерфейс выглядел просто великолепно, практически все средства управления системой были реализованы в подобном исполнении. Двухоконный внешний вид Рабочего стола практически не изменился, однако в него было внесено очевидное разнообразие обилием всевозможных кнопочек и рамочек. Поскольку разработчикам удалось отойти от стандартной палитры VGA, опции многочисленных меню буквально светились нежно-зеленым фосфорицирующим оттенком, несказанно радуя глаз. При щелчке мышью на управляющих элементах окон и меню операционная система демонстрировала эффект нажатия кнопок, а сам курсор менялся в зависимости от контекста поля, в котором он находился, но, так или иначе, выглядел красиво и аккуратно.

image
GEM/5

Популярность GEM несколько поползла вверх, эта платформа даже применялась некоторое время в качестве основного графического интерфейса на компьютерах производства GST, но все более расширяющаяся экспансия Windows убила последние надежды разработчиков на светлое будущее для своего детища. Digital Research сдалась, и исходные коды GEM были опубликованы в свободном доступе.

На базе исходных текстов GEM от Digital Research группа независимых энтузиастов разработала в 1999 году бесплатную платформу FreeGEM, созданную на основе версии GEM/3 образца 1987 года. Рабочий стол все также использовал двухоконную систему, но системные окна вновь стало возможным перемещать по экрану, равно как и изменять их размер. Псевдотрехмерное оформление управляющих элементов было частично позаимствовано из GEM/5, оттуда же была изъята основная цветовая палитра, однако создателям не удалось выйти за рамки количества цветов, диктуемых стандартом VGA, благодаря чему внешний вид окон и диалоговых меню выглядит объективно хуже. Вернулись на свое законное место радио-кнопки, тени и другие элементы, пребывавшие до этого времени под запретом.

image
FreeGEM

В 1990 году компанией Digital Research был выпущен графический менеджер для DRDOS-5, названный ViewMAX/1 и созданный на основе платформы GEM. Однако эта оболочка стала очевидным шагом назад по сравнению с GEM/5. Глядя на ее исполнение, можно смело судить, что разработчики трудились без особого энтузиазма и спустя рукава: оконный менеджер получился не только неудобным, но и откровенно убогим с точки зрения дизайна. ViewMAX/2, входивший в комплект поставки DRDOS-6 в качестве файлового менеджера, получился ничуть не лучше, хотя и включал некоторые визуальные улучшения, вроде объемных окон, расширенной цветовой палитры, и возможности отображать древовидную структуру файлов и папок рядом с содержимым текущей папки (а не вместо нее, как это было раньше).

В ViewMAX/3 разработчики планировали вернуть свободно перемещаемые по экрану окна с произвольно изменяемым размером, но этот оконный менеджер так и не был закончен в связи с безвременной кончиной проекта. ViewMAX/3 должнен был стать оконным менеджером для операционной системы Panther, которая впоследствии была выпущена компанией Novell как сетевая платформа Novell DOS 7. Тексты этой среды были последними исходными кодами операционных систем класса GEM, обнаруженными среди оставшихся в наследство от Digital Research архивов.

Одна из последних реализаций GEM носит название OpenGEM. Как и его прародитель, OpenGEM это 16-разрядная графическая надстройка над DOS, которая, в частности, может запускаться в среде FreeDOS в качестве файлового менеджера. Исходники OpenGEM распространяются на условиях лицензии GNU General Public License (GPL), их можно найти на SourceForge. А классическую платформу GEM пока еще можно скачать на сайтах любителей компьютерной археологии.

В настоящее время OpenGEM является игрушкой нескольких десятков хакеров и энтузиастов, поставивших своей целью поиск, исследование и совершенствование операционных систем прошлого. Так ушел в историю еще один перспективный проект, который при ином стечении обстоятельств мог бы стать объективной альтернативой всемирно распространенной Microsoft Windows в качестве операционной системы для настольных персональных компьютеров.

Подробнее..

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru