Второе Знакомство С Ос Inferno

Когда не работаю, многие читают bash.org.ru или anekdot.ru .

а этой зимой я от скуки начал перечитывать сайт ОС Инферно .

Пришёл с тоской, потому что хоть меня и тянуло к Inferno, я ожидал от чтения документации по Inferno не меньше практической пользы, чем от вышеупомянутых сайтов.

Но произошло нечто неожиданное — во время чтения ко мне пришло озарение: я понял, что OS Inferno — это не операционная система, а среда разработки ! Звучит странно? Да.

Это особенно странно, если учесть, что на сайте Inferno первое предложение звучит так: «Inferno — компактная операционная система.

».

Суть в том, что когда говоришь «операционная система» в наше время, в головах людей появляются настольные Windows и Linux, а с ними начинают сравнивать любую другую ОС.

Мало кто задумается о серверных операционных системах помимо десктопных.

Но Inferno кажется недостаточным даже для сервера; Я не говорю о десктопе.

Таким образом, сравнив Inferno с Windows и Linux, мы приходим к очевидному выводу, что Inferno хоть и потрясающая, но «игрушечная» ОС.

Возможно, в будущем, когда в Inferno появятся bash, apache, mysql, perl, vi и mplayer, он станет более-менее пригодным для использования.

Будущее уже наступило, в последний раз Я выбрал Inferno около 5 лет назад. и что? Но ничего не изменилось, в Inferno по-прежнему нет bash, apache, mysql, perl, vi и mplayer! Моё прозрение можно описать так: Inferno — это скорее не ОС, а что-то вроде обычная служба, разделяющая ресурсы компьютера, на котором она запущена, с сетью по протоколу Стикс .

Да, это, мягко говоря , не совсем точное описание Inferno. ;-) но оно моментально изменило ВСЁ: я перестал чувствовать дискомфорт из-за отсутствия привычного софта в Inferno - я прекрасно могу продолжать работать в Linux, используя обычный Vim (с подсветка синтаксиса для Limbo !), bash, mc за разработку программного обеспечения для Inferno! Более того, после нескольких дней интенсивной работы с Inferno я вообще стал склонен рассматривать Inferno не как ОС, а как.

язык программирования! :) Например, можно сравнить Inferno/Limbo и мой любимый Perl. В обоих случаях я пишу программу, она компилируется в байт-код, а затем выполняется внутри виртуальной машины.

Моя программа имеет доступ к некоторым абстракциям высокого уровня и системным вызовам низкого уровня (системным вызовам).

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

Единственное существенное отличие — это среда, с которой взаимодействует моя программа:

  • Perl предоставляет «более чем один способ сделать это», множество высокоуровневых вещей, таких как структурные, объектно-ориентированные и функциональные (карта, grep, сортировка,.

    ) стили программирования; скалярные переменные, отсутствие проверки типов и многое другое, что делает программирование удобным.

  • Inferno предоставляет очень простую и элегантную среду, скрывая от меня кошмары архитектуры ядра POSIX/Linux/Glibc и реализации.

    Он также обеспечивает гораздо больший контроль над используемыми ресурсами (perl не просто использует много памяти, он просто съедает ее!), не заставляя меня программировать на слишком низком уровне: вызвать free(), вручную создать строки из массивы символов, вызывать функцию каждый раз, когда мне нужно сравнить или скопировать строки и т. д.

Все эти определения того, «что такое Inferno», на самом деле, конечно, не являются определениями Inferno — ведь Inferno — это «компактная операционная система».

Эти определения просто пытаются описать отношение к Inferno, то есть не «что такое Inferno», а «как использовать Inferno».

Например, когда я начинаю сравнивать Inferno и Perl, это происходит потому, что когда мне нужно разработать приложение, я могу использовать либо Inferno/Limbo, либо Linux/Perl. С большой вероятностью размер кода, скорость разработки и выполнения будут сопоставимы.

И когда мне нужно будет выбрать наиболее подходящую платформу для реализации этой задачи, я выберу между очень богатым и гибким Perl на некрасивой архитектуре Linux или между не таким богатым и гибким, но очень простым Limbo на удивительной архитектуре Inferno. Например, если вам нужно написать парсер веб-страниц, анализатор журналов и другие приложения для обработки текста, для этих задач нет ничего лучше Perl. Но если вам нужно что-то более низкоуровневое, например, сложный сервер с асинхронным вводом-выводом, то писать такие вещи на Inferno/Limbo будет гораздо проще и приятнее.

Что касается существующих приложений в Inferno (браузера, например), то, насколько я понимаю, это примеры приложений, и не более того.

Это всего лишь демонстрация возможностей системы, а для демо-версий они более чем впечатляют!

Второе знакомство с ОС Inferno

В целом Inferno — это инструмент. Так же, как, например, язык программирования.

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

И, как любой инструмент, для одних задач он подходит гораздо лучше, чем для других.

Но об этом - в следующий раз .

Теги: #OS #inferno #inferno #limbo #limbo #perl #Software

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.