Inferno 4th Edition | |
Developer | Bell Labs, |
---|---|
Написано на | C,Limbo |
Рабочее состояние | Current |
Исходная модель | Открытый исходный код |
Первоначальный выпуск | 1996 г.; 24 года назад (1996 г.) |
Последний выпуск | 4-е издание / 28 марта 2015 г.; 5 лет назад (28.03.2015) |
Репозиторий | |
Платформы | ARM, PA-RISC, MIPS, PowerPC, SPARC, x86 |
Kernel type | Виртуальная машина (Dis ) |
Лицензия | GPL, LGPL, MIT |
Предыдущая версия | Plan 9 |
Официальный сайт | www.vitanuova.com / inferno /, bitbucket.org / inferno-os / inferno-os |
Inferno - это распределенная операционная система началась в Bell Labs и теперь разрабатывается и поддерживается как бесплатное программное обеспечение. Inferno была основана на опыте, полученном с Plan 9 от Bell Labs, а также дальнейшие исследования Bell Labs в области операционных систем, языков, оперативных компиляторов, графики, безопасности, сетей и переносимости. Название операционной системы и многих связанных с ней программ, а также нынешней компании, были вдохновлены Данте Алигьери Божественная комедия. По-итальянски Inferno mea ns «ад» - всего девять кругов в «Божественной комедии» Данте.
Inferno был создан в 1995 году сотрудниками отдела компьютерных исследований Bell Labs для воплощения идей Plan 9 от Bell Labs к более широкому спектру устройств и сетей. Inferno - это распределенная операционная система, основанная на трех основных принципах, взятых из Plan 9:
Чтобы справиться с разнообразием сетевых сред, в которых он был предназначен для использования, разработчики решил, что виртуальная машина является необходимым компонентом системы. К такому же выводу пришел проект Oak, который стал Java, но пришел к нему независимо. Виртуальная машина Dis - это регистровая машина, предназначенная для точного соответствия архитектуре, на которой она работает, в отличие от стековой машины виртуальной машины Java. Преимущество этого подхода - относительная простота создания своевременного компилятора для новых архитектур.
Виртуальная машина обеспечивает эффективное управление памятью на устройствах с объемом памяти всего 1 Мбайт и без оборудования для отображения памяти. Его сборщик мусора представляет собой гибрид подсчета ссылок и сборщика раскрашивания в реальном времени, который собирает циклические данные.
Ядро Inferno содержит виртуальную машину, оперативный компилятор, планировщик, устройства, стеки протоколов и оценщик пространства имен для пространства имен файлов каждого процесса и корень иерархии файловой системы. Ядро также включает некоторые встроенные модули, которые обеспечивают интерфейсы виртуальной операционной системы, такие как системные вызовы, графические модули, модули безопасности и математические модули.
В статье Bell Labs Technical Journal, посвященной Inferno, перечислено несколько аспектов переносимости и универсальности, обеспечиваемых ОС:
Эти варианты дизайна были направлены на предоставление стандартных интерфейсов, которые освобождают поставщиков контента и услуг от деталей различного оборудования, программного обеспечения и сетей, по которым их контент поставляется.
Программы Inferno можно переносить на широкий спектр оборудования, сетей и сред. Он определяет виртуальную машину, известную как Dis, которая может быть реализована на любой реальной машине, предоставляет Limbo, типобезопасный язык, который скомпилирован в переносимый байт-код, и, что более важно, он включает в себя виртуальную операционную систему, которая предоставляет те же интерфейсы, независимо от того, работает ли Inferno изначально на оборудовании или выполняется как пользовательская программа поверх другой операционной системы.
A протокол связи, называемый Styx, применяется единообразно для доступа как к локальным, так и к удаленным ресурсам, которые программы используют, вызывая стандартные файловые операции, открытие, чтение, запись и закрытие. Начиная с четвертого издания Inferno, Styx идентичен более новой версии протокола 9P от Plan 9, 9P2000.
Большинство команд Inferno очень аналогично командам Unix с тем же именем.
Inferno является потомком Plan 9 от Bell Labs и разделяет многие концепции дизайна и даже исходный код ядра, особенно в отношении устройств и протокола Styx / 9P2000. Inferno разделяет с Plan 9 наследие Unix от Bell Labs и философию Unix. Многие инструменты командной строки в Inferno были инструментами Plan 9, которые были переведены на Limbo.
В середине 1990-х разработка Plan 9 была отложена в пользу Inferno. О существовании новой системы сообщил Деннис Ричи в начале 1996 года, после менее чем года разработки системы, и в том же году публично представил ее в качестве конкурента Java. В то же время материнская компания Bell Labs ATT лицензировала технологию Java у Sun Microsystems.
. В марте – апреле 1997 года IEEE Internet Computing включила рекламу сетевого программного обеспечения Inferno.. В нем утверждалось, что различные устройства могут обмениваться данными по «любой сети», включая Интернет, телекоммуникации и локальные сети. В рекламе говорилось, что видеоигры могут разговаривать с компьютерами, –а была изображена PlayStation – сотовые телефоны могли получать доступ к электронной почте, а голосовая почта была доступна через телевизор.
Lucent использовала Inferno по крайней мере в двух внутренних продуктах: модуле межсетевого экрана Lucent VPN и телефонном коммутаторе Lucent Pathstar. Первоначально они пытались продать лицензии на исходный код Inferno, но нашли мало покупателей. Lucent мало занималась маркетингом и упускала из виду важность Интернета и отношения Inferno к нему. В то же время Sun Microsystems активно продвигала свой собственный язык программирования Java, ориентированный на аналогичный рынок, с аналогичной технологией, которая работала в веб-браузерах и также удовлетворил спрос на объектно-ориентированные языки, популярные в то время. Lucent лицензировала Java у Sun, утверждая, что все устройства Inferno будут работать с Java. Для облегчения этого был написан байт-код Java для транслятора байт-кода Dis. Однако Inferno так и не нашла клиентов.
Подразделение Inferno закрылось через три года и было продано. Vita Nuova продолжала разработку и предлагала коммерческие лицензии для всей системы, а также бесплатные загрузки и лицензии (несовместимые с GPL ) для всей системы, кроме ядра и виртуальной машины. Они перенесли программное обеспечение на новое оборудование и сосредоточились на распределенных приложениях. В конце концов, Vita Nuova выпустила исходный код под лицензией GPL, и операционная система Inferno теперь является проектом Free / Libre / Open Source Software.
Дата | Выпуск | Комментарий |
---|---|---|
1996 | Inferno Beta | Выпущен Bell Labs |
Май 1997 | Inferno Release 1.0 | Статья в техническом журнале Bell Labs Winter 1997 |
июль 1999 | Inferno 2nd Edition | Выпущена бизнес-подразделением Lucent Inferno |
Июнь 2001 г. | 3-е издание Inferno | Выпущено Vita Nuova |
2004 | 4-е издание Inferno | Выпуск с открытым исходным кодом; изменения многих интерфейсов (несовместимы с более ранними версиями); включает поддержку 9P2000. |
Inferno работает непосредственно на собственном оборудовании, а также как приложение, обеспечивающее виртуальную операционную систему, работающую на других платформах. Программы можно разрабатывать и запускать на всех платформах Inferno без модификации или перекомпиляции.
Собственные порты включают следующие архитектуры: x86, MIPS, ARM, PowerPC, SPARC.
Порты размещенной или виртуальной ОС включают: Microsoft Windows, Linux, FreeBSD, Plan 9, Mac OS X, Solaris, IRIX, UnixWare.
Inferno также может быть размещен с помощью плагина для Internet Explorer. Вита Нуова сообщила, что плагины для других браузеров находятся в стадии разработки, но так и не были выпущены.
Inferno также был перенесен на Openmoko, Nintendo DS, SheevaPlug и Android.
4-е издание Inferno было выпущено в начале 2005 года как бесплатное программное обеспечение. В частности, он имел двойную лицензию по двум лицензиям. Пользователи могли либо получить его по набору лицензий бесплатного программного обеспечения, либо по частной лицензии. В случае схемы лицензирования свободных программ разные части системы охватывались разными лицензиями, включая Стандартную общественную лицензию GNU, Стандартную общественную лицензию ограниченного применения GNU, Общественная лицензия Lucent и Лицензия MIT. Впоследствии Vita Nuova сделала возможным приобретение всей системы (за исключением шрифтов, на которые распространяется сублицензия) по GPLv2. В настоящее время доступны все три варианта лицензии.
| journal =
() описывает Третье издание операционной системы Inferno, хотя оно больше ориентировано на язык Limbo и его интерфейсы с системой Inferno, чем на саму систему Inferno. Например, он предоставляет мало информации об универсальной командной оболочке Inferno , что понятно, поскольку это учебник по языку программирования.| journal =
() был предназначен для обеспечения рабочего -системно-ориентированная точка зрения, но так и не была завершена.Викискладе есть носители, относящиеся к Inferno (операционная система). |