Комментарии участников:
вчера в 16:32
Minoca OS: новая свободная операционная система
источник: habrastorage.org
Двое отважных разработчиков Ивэн Грин и Крис Стивенс отчаялись на смелый шаг. Они написали с нуля совершенно новую операционную систему Minoca OS и опубликовали её исходный код под свободной лицензией GNU GPL v3.
Это 625 000 строк отлично документированного кода, преимущественно на языке программирования Си, частично на C++ и Ассемблере. Ядро ОС для x86 имеет размер около 750 КБ. С драйверами, сетевым стеком и видеобуфером свежезагруженная система использует 5−7 МБ оперативной памяти.
Большинство сегодняшних популярных операционных систем родились в конце 80-х или начале 90-х гг, в лучшем случае. В те годы ОС работали на совершенно другом оборудовании, чем сегодня. Поэтому подход к разработке ядра несколько отличался. По мнению создателей Minoca OS, сейчас этот подход устарел, так что можно добиться существенного повышения эффективности операционной системы, если переписать её с чистого листа.
В настоящее время к устройствам со встроенными ОС выдвигаются совершенно иные требования по управлению питанием, безопасности, обслуживанию и виртуализации. Древние UNIX-подобные системы модернизировались для соответствования новым требованиям, но в результате их код раздулся и потерял былую красоту и логичность. Начав с нуля, Minoca OS стремится избавиться от отягчающего наследия.
Minoca OS — операционная система общего назначения, которую можно использовать где угодно. Предположительно, она лучше всего подходит для встраиваемых систем и мобильных устройств, где существуют ограничения на энергопотребление, объём памяти и мощность процессора.
источник: hsto.org
Предположительные области использования Minoca OS
Разработчики говорят, что стремились сделать экономичную, модульную и легко поддерживаемую операционную систему. Она совместима со стандартным набором интерфейсов POSIX. Это значит, что на ней можно запускать многие прикладные приложения, которые работают под Linux.
Важная инновация состоит в специальном интерфейсе между драйверами устройств и ядром ОС. Эта модель делает возможным написание драйверов «с упреждением» на будущие версии ядра. Другими словами, ядро может обновляться совершенно незаметно, без рекомпиляции драйверов.
источник: hsto.org
Пока не совсем понятно, в каких устройствах лучше всего применять новую свободную операционную систему. По идее, это должны быть устройства с ограниченными ресурсами (память, CPU), но в то же время для которых требуется расширенная функциональность высокого уровня: многопоточность, сетевой стек, поддержка файловых систем. Разработчикам таких систем предлагают попробовать Minoca OS — и забыть о трудностях адаптации программного обеспечения к конкретному оборудованию. Не нужно будет возиться со специфическими багами уникальной встраиваемой системы, если в универсальной ОС ядро обновляется вместе с выходом свежих патчей.
источник: hsto.org
В Minoca OS реализованы продвинутые функции отладки. Она осуществляется через прошивку, ядро или приложения. Более того, интегрированный отладчик Minoca Debugger отслеживает выполнение программ и использование памяти в реальном времени. Он подробно показывает, на что конкретно расходуются ресурсы.
источник: hsto.org
Отладчик Minoca OS
источник: hsto.org
Minoca OS запускается на архитектурах x86, ARMv6, ARMv7 с поддержкой виртуальной памяти и несколькими мегабайтами ОЗУ. Операционная система отлично масштабируется, поэтому хорошо работает и на персональных компьютерах с большим количеством процессорных ядер и гигабайтами оперативной памяти.
В комплект поставки входят драйверы для многих стандартных устройств.
В чём отличие от различных дистрибутивов Linux и зачем потребовалось создавать совершенно новую ОС, чем она отличается от этих дистрибутивов? Разработчики отвечают и на этот вопрос. По словам Ивэна Грина, со стороны приложения или пользователя они постарались сделать операционную систему как можно более похожей на популярные серверные дистрибутивы Linux. Цель состоит в том, чтобы портировать как можно больше приложений на Minoca OS. А вот самые серьёзная концептуальная разница кроется на уровне ядра, где разработчики постарались применить некоторые альтернативные решения в части дизайна и философии архитектуры. Это действительно важные решения, но они не видны пользователю напрямую, а проявляются в сниженном энергопотреблении, лучшей отзывчивости (то есть более высоком быстродействии), большем количестве свободной памяти, незаметных обновлениях ядра и т.д. Несмотря на лучшую отзывчивость по сравнению с Linux, систему Minoca OS нельзя назвать ОС реального времени.
Ссылки:
Исходный код на Github
Образы для Raspberry Pi 2, Raspberry Pi, BeagleBone Black, Asus C201, PandaBoard, x86 PC, x86 PC (UEFI), Galileo
Пакет Minoca OS Starter Pack, который можно запустить в эмуляторе Qemu (в комплект входят загрузочный образ x86 Minoca OS, Minoca Debugger, эмулятор Qemu, Win32 Disk Imager и все бинарники x86)
Совместимые пакеты и инструкции по сборке, в том числе Python, Ruby, Git, Lua и Node.
Документация
POSIX, Minoca OS, Linux, операционная система
сегодня 06:59
Minoca OS — новая свободная операционная система для современных небольших устройств
Вчера Эван Грин (Evan Green) из компании Minoca Corp. объявил об открытии исходного кода новой операционной системы — Minoca OS — под свободной лицензией GNU GPLv3.
Новая ОС создавалась двумя разработчиками на протяжении нескольких последних лет. Почему они вообще начали проект Minoca? «Мы посмотрели на существующие операционные системы и поняли, что прошло более 25 лет с момента написания каких-либо крупных ОС. 25 лет — это большой срок для накопления знаний, не говоря уж про то, что развитие аппаратного обеспечения в это время шло семимильными шагами. Мы хотели увидеть, получится ли с этой 25-летней ретроспективой создать с чистого листа что-нибудь интересное и уникальное в пространстве операционных систем. Мы почувствовали, что свобода посмотреть свежим взглядом на интерфейсы драйверов ядра может провести к новым мощным возможностям. Мы изучали такие области, как управление питанием, эксплуатационная надёжность, изоляция ресурсов, которые критичны на сегодняшний день, но ещё не были даже на радаре 20 лет назад. Можем ли мы получить то, для чего используются сегодняшние операционные системы, с меньшим количеством кода и меньшим количеством болевых точек? Можем ли мы сделать лучше? Мы решили попробовать».
Minoca OS позиционируется как операционная система общего назначения, написанная полностью с нуля и предназначенная для применения на устройствах с небольшим потреблением энергии, количеством памяти и хранилищем, то есть «для небольших устройств, нуждающихся в полноценной ОС». Авторы нацелены сохранять легковесность ОС, удобство её поддержки, модульность и совместимость с существующим программным обеспечением.
Minoca OS написана на языке Си, является событийной (event driven) ОС с вытесняющей многозадачностью (preemptible), готовностью к SMP, поддержкой сети. На данный момент функционирует на компьютерах с архитектурой x86 и «ряде ARM-плат». Для приложений Minoca OS предлагает «POSIX-подобный интерфейс».
Для драйверов ядра реализована модель будущей совместимости (forward compatible), т.е. они пишутся так, что их обновления не повлекут необходимости в пересборке всех драйверов устройств в ОС. Minoca OS использует менеджер управления пакетами opkg и уже получила поддержку таких языков программирования, как Python, Ruby и Lua, платформы Node.js, системы контроля версий Git. В качестве командной оболочки по умолчанию предлагается Bourne shell и заявлена возможность установить Bash через пакетный менеджер.
Разработчики сообщают, что основной проблемой проекта на данный момент является малое распространение ОС, и приглашают всех заинтересованных попробовать ОС в действии. Кроме того, они говорят, что их всего двое, и будут рады любой помощи от пользователей и разработчиков.
Исходный код Minoca и базовая документация по сборке и запуску ОС опубликованы на GitHub.
Постоянная ссылка к новости:www.nixp.ru/news/13827.html.
Дмитрий Шурупов по материалам Minoca Corp.
Скорее Windows. Chris Stevens
…
Software Design Engineer II
Microsoft
August 2009 – November 2012 (3 years 4 months)
Development for Windows 8: systems engineering; UEFI ecosystem engagement; and OEM consulting.
...
Какая прелесть..:
А вообще занятно, надо будет глянуть на выходных…
Другими словами, ядро может обновляться совершенно незаметно, без рекомпиляции драйверов.Бэкдор был в ТЗ наверно;)
А вообще занятно, надо будет глянуть на выходных…
А зачем им люди? Самая громоздкая часть софта — интерфейс для тупых юзеров, а «вещам», «инструментам», «механизмам», «машинам», «роботам» и «компьютерным системам» и «сетям» он не нужен: они прекрасно понимают друг друга с помощью математических символов, заключенных в сигналах.
Человек — самое слабое и затратное звено технологической цепочки. Всё будет делаться и без него, «беспилотно», главное, чтобы он внятно мог сказать, чего он хочет, а потом и это будет решаться за него, как сейчас решается в интернет-магазинах с сотнями тысяч и миллионами позиций товаров и услуг. Сознательный выбор в таких ситуациях — чистая фикция.
Человек — самое слабое и затратное звено технологической цепочки. Всё будет делаться и без него, «беспилотно», главное, чтобы он внятно мог сказать, чего он хочет, а потом и это будет решаться за него, как сейчас решается в интернет-магазинах с сотнями тысяч и миллионами позиций товаров и услуг. Сознательный выбор в таких ситуациях — чистая фикция.
да. человек, однако хорош на заключительных этапах когда есть «single view» и можно посмотреть туда и сразу примерно прикинуть, что и как лучше делать. Анализ данных с кучи мест это не та область где люди хорошо справляются.
Внимание, память, реакция, восприятие… «Они» нас давно уже уели по всем этим статьям, я уж не говорю об играх в шахматы и Го (про крестики-нолики или морской бой даже вспоминать стыдно, а пасьянс вручную не раскладываю с момента его появления в «окошках», даже карты «кликами» переставляю, потому что «Он» сам, гад догадывается что куда класть.).
Близится эра светлых годов ©
А причем posix и шеловские команды?
Вообще-то posix это работа с системными библиотеками, а ни как не консольные команды ls, cd и т.п.
Они могли shell и не переносить, а сделать что-то аналогичное msdoc или rt-11 — dir, pip и т.п.
Вообще-то posix это работа с системными библиотеками, а ни как не консольные команды ls, cd и т.п.
Они могли shell и не переносить, а сделать что-то аналогичное msdoc или rt-11 — dir, pip и т.п.
The Portable Operating System Interface (POSIX)[1] is a family of standards specified by the IEEE Computer Society for maintaining compatibility between operating systems. POSIX defines the application programming interface (API), along with command line shells and utility interfaces, for software compatibility with variants of Unix and other operating systems.
при том.
Система имеет интерфейс типа POSIX (переносимый интерфейс операционных систем), через который работает с приложениямиТ.е. в анонсе системы разговор был только по совместимости по работе приложений (POSIX 1).
На счет совместимости по командам информации нет, тем более по утилитам, которых порядка сотни. Учитывая количество утилит и то, что планируется работа на маломощных гаджетах, скорее всего по части POSIX 2 и не предполагается полной совместимости.
Но судя по тому, что я пробовал — совместимость по этой части стандартов есть в той или иной степени.