Тарифы Услуги Сим-карты

Открытое программное обеспечениеOpen Source. Открытые операционные системы для интернета вещей

Скорее всего, на вашем компьютере установлена Windows. Эта операционная система может казаться бесплатной, но это не так. Изготовители должны заплатить Microsoft за лицензию на поставку компьютеров с Windows, и вам нужно купить копию, если вы хотите установить Windows самостоятельно.

Есть много операционных систем, которые на самом деле бесплатны. Большинство из них довольно известны. Наиболее популярным является Linux, и, если вы регулярно читаете новости о компьютерных технологиях, это имя вряд ли будет вам незнакомо. Продолжайте читать эту статью и к тому времени, как вы дочитаете до конца этот список, Linux будет казаться совершенно обычным. Вот десять других бесплатных операционных систем, о которых большинство из нас никогда не слышало.

1. FreeBSD

Если вы используете свободную операционную систему, которая не является Linux, то, вероятно, она основана на BSD. FreeBSD является лишь одной из нескольких UNIX-подобных операционных систем. Другие включают NetBSD, OpenBSD и PC-BSD. Какую бы вы ни использовали, большая часть опыта аналогична тому, что вы найдете в Linux. Свободное и открытое программное обеспечение, доступное для одного, как правило, может работать на другом.

Даже если вы не любитель свободного программного обеспечения, вы можете использовать части FreeBSD, не осознавая этого. Из-за разрешительной лицензии проекта, часть кода пробилась в Apple macOS, Sony PlayStation 4 и маршрутизаторы Juniper.


2. ReactOS

Большинство бесплатных операционных систем являются альтернативой Windows. ReactOS, в некотором смысле, стремится быть Windows. Целью является предоставление пользователям средств для запуска программного обеспечения для Windows, без необходимости покупать операционную систему у Microsoft.

ReactOS - это свободная и открытая исходная операционная система, поэтому она не может использовать какой-либо реальный код Windows. Проект частично реализовал многие интерфейсы Windows API, и он сотрудничает с проектом Wine, чтобы запускать программы, приложения и программное обеспечение.


3. FreeDOS

Вы использовали компьютеры, когда DOS был единственным вариантом? У вас хорошие воспоминания о MS-DOS?

FreeDOS позволяет вам пережить эту ушедшую эпоху. OS barebones дает вам средство для запуска старых программ DOS на более современном оборудовании или внутри виртуальной машины. Или вы можете просто использовать его для запуска старых игр.


4. Haiku (Хайку или Хокку)

Haiku черпает вдохновение в BeOS. BeOS была графической операционной системой, разработанной Be Inc для работы на BeBox еще в 1995 году. Операционная система застряла в течение пяти лет, прежде чем последнее обновление вышло в 2000 году.

BeOS, возможно, не было именем нарицательным, но оно привлекло некоторых пользователей, и некоторые хотели, чтобы операционная система жила достаточно, чтобы создать свою собственную версию с открытым исходным кодом. Цель состоит в том, чтобы программное обеспечение, написанное для BeOS, работало на Haiku, вроде того, что ReactOS хочет делать с Windows. Учитывая все обстоятельства, команда хайку, возможно, справляется легче.

5. Illumos

Oracle используется для поддержки операционной системы под названием Solaris. Первоначально он был закрытым, но проект был открыт в 2008 году. Oracle прекратил выпуск OpenSolaris в 2010 году и вернулся к собственной модели с Solaris 11 в 2011 году.


6. Syllable

Syllable основан на AtheOS, клоне AmigaOS, который был оставлен на рубеже веков. Что касается AmigaOS, он все еще жив, несмотря на то, что родился в 80-е годы для линейки компьютеров, давно считавшихся древними.

Syllable предназначается для домашних пользователей офиса с удобным интерфейсом и родными приложениями, включая веб-браузер на базе Webkit и почтовый клиент. Дело в том, что он может делать это на компьютере только с 32 МБ ОЗУ (хотя для просмотра рекомендуется не менее 64 МБ). Полная установка должна занимать около 250 Мбайт пространства на жестком диске.


7. Исследовательская операционная система AROS

Хотя Syllable основан на клоне AmigaOS, AROS использует другой подход. Он на самом деле ставит своей бинарной совместимостью с AmigaOS на уровне API. Это похоже на то, как ReactOS ориентирована на Windows, а Haiku нацелен на BeOS.

Вы можете быть удивлены, стоит ли уделять AmigaOS столько внимания. Я уже говорил, что AmigaOS все еще здесь? Это тоже не бесплатно. Кто-то там по-прежнему готов платить за операционную систему, о которой большинство людей никогда не слышало. AROS предлагает способ использования некоторых программ AmigaOS без необходимости платить деньги. Кроме того, это открытый источник, который может оставить вам ощущение безопасности.


8. MenuetOS

Вот что такое MenuetOS - оно достаточно маленькое, чтобы вместить его на одну гибкую дискету. Это были флеш-накопители 90-х годов, и они предлагали только до 1,44 МБ памяти. Учитывая, что многие дистрибутивы Linux испытывают трудности с компакт-диском объемом 700 МБ, загрузка с дискеты в наши дни затруднительна.

MenuetOS полностью написан на 32-битном языке ассемблера и предназначен для работы с минимальными издержками, хотя он поддерживает до 32 ГБ оперативной памяти.


9. DexOS

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

Запуск приложений в DexOS смутно напоминает вставку диска в старую Dreamcast. Опыт кажется более аутентичным, если вы на самом деле играете в игру. И еще одна классная вещь? Эта бесплатная ОС также достаточно мала, чтобы поместиться на дискету.


10. Visopsys

Подобно DexOS, Visopsys - это хобби-проект одного разработчика. Установите ее, если хотите посмотреть на то что может создать всего один человек.

Визуальная операционная система (по общему признанию, это имя может быть применимо к любой ОС с рабочей средой) был в разработке с 1997 года. Она не основана ни на одной ранее существовавшей ОС. Это не означает, что проект не использует уже существующий код. Здесь вы найдете общие инструменты GNU, и значки которые могут быть знакомы пользователям KDE Plasma.

Будете ли вы использовать любую из этих бесплатных операционных систем?

Большинство из них - нет. Разработчики Haiku не работают на полную ставку. Разработчик Visopsys явно говорит, что их ОС не так функциональна, как Linux или, возможно, более справедливое сравнение, Syllable. DexOS - это больше эксперимент, чем что-либо другое.

Тем не менее, есть много людей, которые предпочитают FreeBSD вместо Linux. illumos может не быть известной, даже среди любителей FOSS, но она имеет свои применения. И разве я не упомянул использование FreeDOS для воспроизведения всех старых игр DOS?

Есть ли в этом списке системы, которые вы бы хотели использовать? Знаете ли вы о другой неизвестной бесплатной операционной системе, которой нет в этом списке? Дайте нам знать об этом в комментариях!

Помимо Android мы с вами наверняка знаем о существовании iOS и Windows Phone. Еще где-то далеко существует BlackBerry OS, и в прошлом осталась Symbian. Это то, что на слуху, однако есть несколько операционных систем, которые известны гораздо меньше, но при этом достойны внимания. Как и Android, они построены на ядре Linux и имеют открытый исходный код. Однако это не помогло им добиться таких же успехов.

Ubuntu Phone

Canonical разработала под действием желания стандартизировать все вокруг. Подобно Windows, который автоматически подстраивается под ваш компьютер после установки, Ubuntu готова подстроиться под любые устройства, будь то смартфон, планшет, телевизор или компьютер. В зависимости от типа устройства ОС сама подстроится под размер экрана и тип ввода данных.

Пользователи Ubuntu Phone могут просто подключить смартфон к компьютеру и использовать на экране компьютера настольную версию Ubuntu. В этом идеология немного совпадает с Microsoft, которая хочет стереть грани между мобильной и настольной ОС, а также приложениями для них.

HP webOS

Изначально webOS принадлежала компании Palm, но HP купила Palm в 2010 году. У HP были большие планы на webOS, планировалось выпустить смартфон, планшет, принтер и даже компьютер под управлением этой ОС. Был запущен планшет HP TouchPad, но он не смог конкурировать с iPad, и идея не пошла дальше.


Позднее компания LG использовала возможности webOS в своем умном телевизоре, и это оказалось неплохой идеей. webOS, несмотря на свою непопулярность, обладает некоторыми интересными особенностями, которые еще можно продать.

Samsung Tizen

Tizen построен на ядре Linux, а интерфейс этой ОС полностью копирует TouchWiz от Samsung. Другими словами, в этой системе нет ничего незнакомого и в то же время . Сегодня на этой ОС работают некоторые умные часы компании Samsung, однако больших планов компания на нее не имеет. У них проблема с привлечением разработчиков, а без приложений Tizen никому не нужна.

Jolla Sailfish

У этой ОС длинная и интересная история. Как-то в Nokia работали над Maemo-устройствами, построенными на Linux. Позднее Maemo стала частью платформы MeeGo OS, которая принадлежала Intel. Единственным смартфоном, выпущенным на MeeGo, стал Nokia N9, и он пользовался популярностью среди разработчиков. Однако перед сделкой с Microsoft проект MeeGo был закрыт, и компания сконцентрировалась на Windows Phone.

Большая часть команды, работавшей над MeeGo, ушла из компании и открыла собственную, под названием Jolla. Все права на MeeGo остались у Nokia, и они были вынуждены создать собственную на основе исходных кодов MeeGo. Эта ОС может работать как с Qt-приложениями, так и с приложениями для Android.

Amazon Fire

В планшетах Amazon Kindle используется то, что Amazon называет Fire OS. На самом деле это Android, версия AOSP, над которой серьезно поработали в Amazon. Узнать в Fire OS Android просто невозможно. При этом она работает с Android-приложениями, вот только загружать их надо не из Google Play. Amazon не использует сервисы Google, продавая контент через собственный магазин, и он достаточно крупный.

Firefox OS

Mozilla давно пытается создать свое решение для смартфонов. То, что они имеют , построено на Gecko и браузере Firefox. Все приложения для Firefox OS поддерживают современные веб-технологии, такие как HTML 5. В Mozilla считают, что эпоха нативных приложений уйдет, и будущее за веб-приложениями. Так же считал Стив Джобс, запуская iPhone.

Nokia X

Над этой платформой трудятся в Microsoft. Она представляет из себя смесь Android и Windows Phone, но построена она все же на Android. Смартфоны на этой платформе не встретили большой любви пользователей из-за отсутствия сервисов от Google, но продаются, из-за невысокой стоимости.

По материалам EFYTimes

Все современные цифровые устройства работают на определенной операционной системе. Например, это может быть Windows или Linux, а для смартфонов и планшетов – Android и iOS.

Операционные системы бывают открытого и закрытого типа. Под понятием «открытая операционная система» имеется в виду система с открытым исходным кодом. Этот код открыт для редактирования, и изменять его может любой пользователь (естественно, в рамках лицензии и закона). А закрытая операционная система не позволяет «копаться» в ее исходном коде.

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

Примеры открытых и закрытых ОС

Примером открытой операционной системы для смартфонов и планшетов является Google Android. Данная ОС позволяет делать пользователю все, что он захочет – переписать некоторые драйвера, добавить поддержку новых функций и т.д. А вот операционная система Windows Phone считается закрытой, и не дает пользователям никакого права на вмешательство. Им остается только периодически устанавливать сервис-паки, покупать программы или же пользоваться бесплатными.

Также есть еще условно открытые ОС – iOS и Symbian. В таких ОС тоже нельзя ничего менять, но для них можно писать программы с помощью специального софта, который предоставляют разработчики. Самые популярные ОС для смартфонов – это Google Android и iOS. Для обычного пользователя, который не занимается созданием новых программ, разница между этими ОС будет лишь в интерфейсе.

Что касается компьютерных операционных систем, то Windows считается закрытой операционной системой, а Linux – открытой. Естественно, изменять под себя можно только Linux. Есть еще одна операционная система – Mac OS, которая очень похожа по архитектуре на Linux, но она считается закрытой ОС.

Что касается выбора ОС для пользования, то тут каждый пользователь решает сам. Например, в закрытых операционных системах вероятность словить вирус гораздо выше, и в таком случае придется ждать пока разработчики исправят дыру в системе очередным сервис-паком. Кроме того, Windows и Mac OS являются платными операционными системами, а Linux находится в свободном доступе для всех желающих.

- 31.68 Кб

«Современные операционные системы с открытым кодом»

Создание операционной системы. 4

Определение операционной системы 4

Основные функции ОС 4

Дополнительные функции ОС. 4

ОС с открытым кодом 6

Различие Ос с открытым и закрытым кодом. 6

ГЛАВА 1

Создание операционной системы.

Предшественником операционной системы (ОС) считают служебные программы, а так же их библиотеки. Они начали разрабатываться в конце 1940-х годов. в 1950-1960-х годах были реализованы идеи, которые определяли функциональность ОС:

1) Разделение времени, многозадачность

Позволило создать многопользовательские системы, в которых присутствовал один центральный процессов, а блок оперативной памяти присоединялся к терминалам.

2) Разделение полномочий

Позволило избежать возможности изменения одной программы данных другой программы в память компьютера.

3) Реальный масштаб времени

Позволяло одновременно обслужить производственные процессы и решающиеся задачи.

4) Файловые системы и структуры

Применялся как способ хранения каких-либо данных на других запоминающий устройствах.

Определение операционной системы

Итак, ОС - комплекс программ, который обеспечивает работу с файлами, выполнение прикладных программ, осуществляет вывод и ввод данных. Так же ОС обеспечивает управление аппаратными средствами компьютера в целом. Иными словами, ОС - первый набор программ, который загружается при включении компьютера. У любой ОС имеются основные и дополнительные функции.

Основные функции ОС

1) Исполнение запросов программ, т.е. это вывод и ввод данных, запуск программ, а так же их остановка, как освобождение, так и выделение дополнительной памяти.

3) Доступ к устройствам ввода и вывода.

4) Распределение оперативной памяти между процессами, организация виртуальной памяти.

5) Управление доступом к данным жесткого диска

6) Обеспечение пользовательского интерфейса

7) Хранение информации об ошибках системы

Дополнительные функции ОС.

Дополнительные функции это:

1) Многозадачность

2) Распределение нужных ресурсов вычислительной системы между процессами

3) Ограничение доступа к ресурсам

4) Обмен данными, взаимная синхронизация

5) Защита системы, данных, программ от действий разных пользователей

6) Разграничение прав доступа и многопользовательская система.

Разобрав функции ОС, стоит упомянуть о ее компонентах:

1) загрузчик-представляет собой системное программное обеспечение, которое обеспечивает загрузку ОС после включения компьютера.

2) Ядро-самая центральная часть ОС, которая обеспечивает приложениям доступ к ресурсам компьютера.

3) Командный процессор служит для обеспечения интерфейса командной стоки. Сам командный процессор представляет собой самостоятельные языки программирования,имеющие свой синтаксис и свои функции.

4) Драйверы – компьютерная программа, при помощи которой другие программы получают доступ к обеспечению некоторого устройства. Сам драйвер не обязан взаимодействовать другими аппаратными устройствами, он может только имитировать их.

5) Интерфейс – граница раздела двух устройств,систем или программ, которая определена их характеристиками.

Определяют 2 группы ОС. К первой относятся системы, набор программ которых управляет оборудованием. Ко второй же группе относятся системы, набор программ которых управляют другими программами.

Многие устройства нашего мира могут и вовсе обойтись без ОС. Так для чего же они нужны?

  1. Очень многие программы нуждаются в выполнении одних и тех же рутинных действий.Например, ввод одного и того же слова и вывод на экран. Это может потребовать исполнения множества машинных команд. Чтобы не программировать их каждый раз ОС использует системные библиотеки.
  2. Необходимо распределять полномочия между пользователями и программами системы,для того что бы пользователи могли защитить свои данные, а ошибка в программе не вызвала бы больших неприятностей.
  3. Сам же оператор должен иметь возможность управлять самими процессами выполнения отдельных программ. Для этого служит оболочка, наборы улит. Они сами могут являться частью ОС. Итак, ОС можно охарактеризовать как:

а) ОС с универсальным механизмом доступа к данным.

б) ОС с разделением полномочий

в) ОС с разделением времени

ОС с открытым кодом

Как мы знаем, в современном мире все устройства обладают ОС. Поэтому принято различать открытые и закрытые ОС.

ОС с открытым исходным кодом-система, которую может редактировать любой пользователь,не нарушая лицензии и закона. Эта система очень удобна для смартфонов, так как позволяет пользователям «подстраивать телефон под себя»:добавлять различные функции, переписывать драйвера, вставлять поддержку сенсорности.Следует отметить, что такие условно открытые ОС как iPhone OS, Symbian не позволяют вмешиваться в саму систему,но позволяют писать собственные программы. Для компьютеров же ОС с открытым кодом является Linux.

Различие Ос с открытым и закрытым кодом.

Как было сказано выше, ОС с открытым кодом позволяют пользователю «создать свое устройство» . ОС с закрытым кодом не дают пользователю право на вмешательство в саму систему. Пользователям остается покупать программы, либо пользоваться бесплатными, а так же ставить сервис-папки. К закрытым ОС относятся Windows , Mac OS.

Для закрытых операционных систем характерно лицензирование и платность, открытые ОС не требуют приобретения лицензии и распространяются бесплатно.

ГЛАВА 2

Linux

Linux- ОС с открытым исходным кодом, разработка которой была начата в 1983 году. Ричард Столлиман – известный программист создал проект GNU. К началу 1990-х годов очень многие системные программы и библиотеки были уже готовы. В 1991 году Линус Торвальдс создал ядро этой системы. Таким образом из всех компонентов и другого программного обеспечения была создана работающая свободная ОС.

Сначала Linux раздавался только добровольцам, но со временем компании стали носить свой вклад и эта ОС стала значительной силой. Сейчас же Linux занимает первое место на рынках смартфонов (64%).Рынке домашних компьютеров Linux занимает 3 место (12%)(самый популярный дистрибутив - Ubuntu, которым предпочитают пользоваться 20 миллионов пользователей).

Самая популярная ОС для смартфонов и планшетных устройств является Android. Эта система основана на ядре Linux. Дистрибутивы Linux популярны у различных государственных структур. Например Федеральное правительство Бразилии активно пользуется этой ОС, а российские военные разрабатывают свой собственный дистрибутив Линукс.

В Линукс-системах пользователи работают через интерфейс командной строки или как её еще называют CLI, графический интерфейс пользователя (GUI), через элементы управления соответствующих аппаратных средств.

Командная строка особенно хорошо подходит для автоматизации повторяющихся или отложенных задач, а также предоставляет очень простой механизм межпроцессного взаимодействия.

Программа графического эмулятора терминала часто используются для доступа к командной строке с рабочего стола Линукс.

Линукс-системы обычно реализуют интерфейс командной строки при помощи оболочки операционной системы, которая также является традиционным способом взаимодействия с системой Unix.

iPhone OS

iPhone- мобильная операционная система, которая разработана и выпущена американской компанией Apple в 2007 году. Эта система первоначально была предназначена для iPhone и iPod touch, позже и для таких устройств, как iPad и Apple TV.

В отличие от Windows Phone и Google Android, выпускается только для устройств, производимых фирмой Apple. iPhone разработана на основе Mac OS X и использует тот же POSIX-совместимый набор основных компонентов Darwin.

По состоянию на 12 мая 2012 года магазин приложений App Store содержит более 750 тыс. приложений для iOS, которые все вместе были загружены более 30 миллиардов раз.

Cosmos

Cosmos - операционная система с открытым кодом, написанная на языке программирования C. Она содержит компилятор языка Microsoft Intermediate Language,который позволяет формировать законченные программные модули.

Текущий выпуск Cosmos - Milestone 5, но создатели работают над будущими релизами. Большинство работ над Cosmos в настоящее время, направлены на развитие сетевого интерфейса, однако система уже поддерживает некоторые сетевые карты. В настоящее время существуют две версии Cosmos, (более поздняя) версия с исходным кодом и релизная версия (известная как пользовательский комплект). Версия с исходным кодом предназначена для тех, кто хочет помочь разработать ядро, в то время как пользовательский комплект предназначен для тех, кто просто хочет использовать Cosmos для развития своей собственной операционной системы.

Android

Android-сетевая операционная система для коммуникаторов, планшетных компьютеров, электронных книжек, цифровых проигрывателей, основанная на ядре Linux. Изначально разрабатывалась компанией Android Inc., которую затем купила Google. Впоследствии Google инициировала создание альянса Open Handset Alliance или (OHA), который сейчас и занимается поддержкой и дальнейшим развитием платформы. Android позволяет создавать Java-приложения, управляющие устройством через разработанные Google библиотеки. Android Native Development Kit создаёт приложения, написанные на Си и других языках.

В 75 % смартфонов, проданных в третьем квартале 2012 года, была установлена операционная система Android.

Некоторые обозреватели отмечают, что Android проявляет себя лучше одной из своих конкуренток, Apple iOS, в ряде особенностей, таких как: веб-сёрфинг, интеграция с сервисами Google Inc. и прочих. Android, в отличие от iOS, является открытой платформой, что позволяет реализовать на ней больше функций.

В отличие от iOS и Windows Phone 7, в Android полноценная реализация Bluetooth стека, позволяющая, в том числе передачу и приём файлов.

В Android-аппаратах, как правило, присутствует MicroSD-кардридер, позволяющий быстрый перенос файлов с компьютера на телефон, минуя скоростные ограничения USB и других способов передачи без извлечения карты памяти; кроме того, в iOS и Windows Phone 7 невозможна прямая передача каких-либо файлов или из телефона, кроме как через программы синхронизации (iTunes и Zune), в то время как телефоны на Android экспортируют файловую систему карты памяти как USB mass storage device («флешка»).

Несмотря на изначальный запрет на установку программ из «непроверенных источников» это ограничение отключается штатными средствами в настройках аппарата. Именно это позволяет устанавливать программы на телефоны и планшеты без интернет-подключения. Например, пользователям, не имеющим Wi-Fi-точки доступа и не желающим тратить деньги на мобильный интернет, который обычно стоит слишком дорого. А также позволяет всем желающим бесплатно писать приложения для Android и тестировать на своём аппарате.


Описание работы

Итак, ОС - комплекс программ, который обеспечивает работу с файлами, выполнение прикладных программ, осуществляет вывод и ввод данных. Так же ОС обеспечивает управление аппаратными средствами компьютера в целом. Иными словами, ОС - первый набор программ, который загружается при включении компьютера. У любой ОС имеются основные и дополнительные функции. Предшественником операционной системы (ОС) считают служебные программы, а так же их библиотеки.

За последнее десятилетие большое количество проектов ОС с открытым исходным кодом перешли от рынка мобильной связи к «интернету вещей». В этой статье мы рассмотрим какие из открытых проектов нацелены на IoT (Internet of Things).

Имейте в виду, что почти все современные открытые ОС в той или иной степени заявляют о своей пригодности для использования в IoT. Но мы рассмотрим только тех, которые действительно уделяют внимание таким вещам как: низкое потребление памяти, высокая энергетическая эффективность, модульный и настраиваемый коммуникационный стек и сильная поддержка беспроводных и сенсорных технологий. Также некоторые проекты подчеркивают свои наработки в области безопасности IoT и реалтаймовости. Реалтайм может быть действительно важен в промышленном IoT, хотя и почти бесполезен в бытовом.

Мы тут не будем рассматривать так называемые lightweight-дистрибутивы, даже если они действительно лёгкие, но не ставят перед собой задачи IoT, а ограничиваются обычным применением в обычных рабочих станциях.

Также мы не будем смотреть в сторону Windows 10 for IoT Core. Этот проект хоть и способен выполнять свойственные для IoT задачи, но к опенсорсу не имеет никакого отношения.

Итак, начнём.

ОС, основанных на Linux

Brillo - разработка Google, представляющая собой облегчённый Android и которая за год своего существования завоевала некоторую популярность.Так, например, она используется на Intel Edison и Dragonboard 410c. Однако эта ОС завязана на протокол Weave, который является разработкой Google и нигде больше не используется. Система способна работать на оборудовании с 32MiB RAM и 128MiB flash.

Huawei LiteOS - LiteOS компании Huawei основана на Linux, но от Linux там осталось не так уж и много. О системе заговорили где-то год назад и утверждается, что ядро может быть размеров от 10KB. LiteOS может использоваться на широком спектре оборудования от MCU-устройств до Android-совместимых. Основные фишки: тривиальная настройка, автоматическое обнаружение всего и вся, широкая поддержка разнообразных сетей (LTE и mesh-сети в том числе), быстрая загрузка.

OpenWrt /LEDE/Linino/DD-Wrt - всем известный проект, наиболее востребованный на маршрутизаторах и другом MIPS сетевом оборудовании. Учитывая изначальную сетевую заточенность он не мог пройти мимо IoT. Эти форки не имеют принципиальных отличий друг от друга и родились из-за NIH-синдрома или организационных склок.

Ostro Linux - основан на Yocto Project (будет рассмотрен отдельно) и стал известен после того, как Intel выбрала его для Intel Joule, базирующемся на Atom SoC T5700. Ostro Linux совместим с IoTivity, поддерживает множество беспроводных технологий, а также предоставляет фреймворк для работы с разнообразными датчиками. Особое внимание уделяется безопасности, включая криптографию.

Raspbian - Debian, заточенный для работы на Raspberry Pi. И хотя для «малины» существуют и другие дистрибутивы, которые более целенаправленно занимаются нюансами IoT, но именно Raspbian стал стандартом de facto для DIY-проектов на базе Raspberry Pi.

Snappy Ubuntu Core --версия Ubuntu Core со Snap-пакетами. Canonical утверждает, что эта система способна работать на «any Linux desktop, server, cloud or device». В принципе способна работать на Raspberry Pi, но вообще требует 600MHz CPU, 128MiB RAM, 4GiB flash. Довольно широко используется. Например: Erle-Copter drones, Dell Edge Gateways, Nextcloud Box, and LimeSDR.

Tizen - развивается при поддержке Samsung. Изначально планировался как ОС для смартфонов, но что-то пошло не так и сейчас можно встретить лишь в телевизорах и т.н. смарт-часах. Проект умирать не собирается, но и будущее его не ясно. Способен запуститься на «малине».

uClinux - единственная более или менее вменяемая и распространённая версия Linux, способная работать на микроконтроллерах. Но пока лишь на некоторых: Cortex-M3, M4, и M7. Да и там для работы требуется подключение внешней RAM.

Yocto Project - это не дистрибутив, а набор поддерживаемых и развиваемых Linux Foundation утилит, шаблонов и методов для разработки embedded-дистрибутивов. Весьма успешный проект, который является базисом для большинства успешных коммерческих дистрибутивов, заточенных под IoT.

Некоторые известные не-Linux дистрибутивы

Apache Mynewt - разработан компанией Runtime для 32-bit микроконтроллеров при поддержке Apache Software Foundation. Выделяется хорошей поддержкой беспроводных соединений, широкими возможностями для отладки и тонкой настройкой энергопотребления. Предполагается, что скоро будет доступен для Arduino.

ARM Mbed - нацелен на маломощные, работающие от батареек, платы на базе Cortex-M микроконтроллеров. Для работы достаточно 8KiB of RAM. Впервые появился на BBC Micro:bit SBC. Изначально представлял из себя однопоточный полупроприетарный кусок блоба, но теперь это открытый под Apache 2.0 лицензией проект с поддержкой многопоточности и реалтайма.

Contiki - не может соревноваться с Tiny OS или RIOT OS, однако для работы требует всего лишь 10KiB RAM and 30KiB flash, отлично работает с беспроводной связью и дружит с IPv6. ОС сопровождается внушительным набором утилит для разработки и тестирования, в том числе и Cooja Network Simulator для отладки беспроводных сетей. Основная «фишка» - малое потребление памяти.

FreeRTOS - основной конкурент Linux среди встраиваемых платформ. И хотя испытывает проблемы с драйверами, учётными записями пользователей и прочими приятными вещами из мира полноценных ОС, но зато способен работать на 1KiB памяти и 5-10 KiBROM. Хотя для полноценного сетевого взаимодействия с нормальным TCP/IP требуется 24KiB RAM and 60KiB flash.

Fuchsia - ещё одна разработка от Google. Данных мало, но компания утверждает, что их ОС может конкурировать с FreeRTOS. Вёдра для лапши приносить свои. Грабли для снятия лапши с ушей тоже не выдают. Ждём когда замолчат маркетологи и заговорят технари.

Minoca - код открыт под лицензией GPLv3. Сборки подготовлены для архитектур x86, ARMv6 и ARMv7, в том числе сформированы загрузочные образы для плат Raspberry Pi 2, Raspberry Pi, BeagleBone Black, Asus C201, PandaBoard и Galileo, а также эмулятор на основе QEMU. Система модульная - подсистемы ядра отделены друг от друга, а взаимодействие с оборудованием абстрагировано. Драйверы устройств не привязаны к ядру и оформляются в виде универсальных исполняемых файлов, не зависящих от версии ядра. Для запуска достаточно 5 MiB RAM.

NuttX - широко используется среди разработчиков квадрокоптеров и прочих дронов. BSD лицензия. Работает на х86, Cortex-A5, -A8 и Cortex-M MCU. Позиционируется разработчиками как «выглядит почти как Linux только с урезанными возможностями».

RIOT OS - вот уже 8 лет как эта ОС известна своей энергоэффективностью и широчайшей поддержкой беспроводных сетей. Для работы достаточно 1.5KiB RAM and 5KiB flash, что почти так же, как и у Tiny OS. При этом система предлагает многопоточность, управление памятью, частичную POSIX-совместимость и прочие вещи, которые более типичны для Linux, нежели для лёгких RTOS. Кстати, разрабатывать под эту ОС можно и из-под Linux или OS X.

TinyOS - эта ОС разрабатывается под BSD лицензией и требует наименьшее количество ресурсов из всех вменяемых систем. Система написана на диалекте Си, называемом nesC. Основное применение: малопроизводительные микроконтроллеры, хотя в настоящее время проводится работа над поддержкой Cortex-M3.

Zephyr - разрабатывается Linux Foundation и потребляет 2-8KiB RAM. Работает на x86, ARM, ARC, но основное внимание уделяется микроконтроллерам с Bluetooth/BLE и 802.15.4 радиостанциям вроде 6LoWPAN. Zephyr базируется на River’s Rocket OS, которая в свою очередь базируется на Viper, который не что иное как урезанная версия VxWorks.

Теги: Добавить метки