The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Второй релиз открытой ОС Barrelfish, разработанной сотрудниками Microsoft Research и ETH Zurich

12.07.2011 16:34

Сотрудники высшей технической школы Цюриха (ETH Zurich), совместно с исследователями из Microsoft Research, объявили о доступности новой версии операционной системы Barrelfish, разрабатываемой с оглядкой на многопроцессорные системы и системы-на-кристалле, имеющие в своем составе большое количество специализированных процессоров. Это уже второй важный релиз операционной системы, первая экспериментальная версия которой была представлена на Симпозиуме по Принципам Операционных систем (SOSP) в октябре 2009 года.

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

Вторая важная особенность Barrelfish - это способ разработки ОС. Несмотря на то, что операционная система почти полностью написана на языке Си (при заимствовании частей кода из разных вариантов BSD-систем), для разработки многих высокоуровневых компонентов ОС были использованы специализированные предметно-ориентированные языки программирования, компилируемые в код ANSI C с помощью специально разработанного инструмента Filet-o-Fish. Благодаря этому удалось достичь высокого уровня надежности кода и существенно ускорить разработку.

В данный момент Barrelfish может работать на аппаратных платформах x86, x86_64, 48-ядерном Intel Single-Chip Cloud Computer и многопроцессорной платформе BeeHive, построенной на основе FPGA-чипов. Код операционной системы доступен всем желающим в репозитории проекта на условиях лицензии MIT (в первой версии была использована собственная BSD-подобная лицензия).



  1. Главная ссылка к новости (http://barrelfish.org/...)
  2. OpenNews: Microsoft выпустила исходные тексты прототипа многоядерной ОС Barrelfish
Автор новости: Evgeny Zobnin
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/31152-microsoft
Ключевые слова: microsoft, multikernel, distributed, Barrelfish
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (52) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, x0r (??), 17:01, 12/07/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +11 +/
    У вас еще есть свободные ядра? У нас есть для них операционка!
     
     
  • 2.2, анон (?), 17:06, 12/07/2011 [^] [^^] [^^^] [ответить]  
  • +3 +/
    У вас еще есть свободные ядра? Тогда мы идем к вам. (C) - Юристы Microsoft
     
     
  • 3.3, brother anon (?), 17:09, 12/07/2011 [^] [^^] [^^^] [ответить]  
  • +1 +/
    MS != MS Research
     
     
  • 4.4, fr0ster (ok), 17:18, 12/07/2011 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Но юристы там одни и те же.
     
  • 4.16, Ammonium (?), 19:18, 12/07/2011 [^] [^^] [^^^] [ответить]  
  • +/
    Microsoft Research (MSR) — подразделение корпорации Microsoft, созданное в 1991 году для исследования различных вопросов и тем в области информатики.
     
  • 4.26, ffirefox (?), 23:58, 12/07/2011 [^] [^^] [^^^] [ответить]  
  • +/
    MS Research, похоже, это типа заказчика т.к. проект, на первый взгляд,  не использует инструменты от MS. Все реализовано на свободных инструментах.
     
  • 4.30, Аноним (-), 02:17, 13/07/2011 [^] [^^] [^^^] [ответить]  
  • +/
    > MS != MS Research

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

     

  • 1.5, Ян Злобин (ok), 17:22, 12/07/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Охренеть!  Microsoft и MIT.  Куда катится этот Мир. :-)
     
     
  • 2.6, Anonym1 (?), 17:44, 12/07/2011 [^] [^^] [^^^] [ответить]  
  • +/
    Вы-таки не понимаете - лицензия Mit является наилучшей питательной средой для Microsoft и иже с ними... Как и прочие "ПОЛНОСТЬЮ" свободные лицензии...
     
  • 2.7, meequz (ok), 18:09, 12/07/2011 [^] [^^] [^^^] [ответить]  
  • +/
    не Microsoft, а Microsoft Research. Совершенно разные команды.
     
     
  • 3.8, тоже Аноним (ok), 18:14, 12/07/2011 [^] [^^] [^^^] [ответить]  
  • +9 +/
    Да, это удобно. МС патентует алгоритм, МС Ресерч выпускает СВОБОДНЫЙ код, его реализующий, и все, кто им воспользуется, будут ходить под угрозой иска от МС априори.
    Свобода в стиле МС...
     
     
  • 4.13, Аноним (-), 19:01, 12/07/2011 [^] [^^] [^^^] [ответить]  
  • –4 +/
    Прецеденты были?
     
     
  • 5.18, szh (ok), 19:58, 12/07/2011 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Прецедентов сейчас навалом с андроидом, завязывай уже с розовыми очками.
    Цель майкрософт - максимум денег для акционеров согласно законодательству.
     
     
  • 6.23, Аноним (-), 21:44, 12/07/2011 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А при чем тут андроид? Андроид разве использует код, разработанный Microsoft Research? На него же не по этому предлогу наезжают, а из-за невидимых сферических патентов как бы.
     
     
  • 7.25, szh (ok), 23:44, 12/07/2011 [^] [^^] [^^^] [ответить]  
  • +/
    > Андроид разве использует код, разработанный Microsoft Research?

    Вот именно, что наезд идет на независимую разработку. А если использовать их разработки, то шансы подставится еще больше при прочих равных

     
  • 7.58, Аноним (-), 18:56, 14/07/2011 [^] [^^] [^^^] [ответить]  
  • +/
    > А при чем тут андроид?

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

     
     
  • 8.59, тоже Аноним (ok), 19:24, 14/07/2011 [^] [^^] [^^^] [ответить]  
  • +/
    Не говоря о том, что защитить в суде свою, альтернативную, реализацию технологии... текст свёрнут, показать
     
  • 6.35, Аноним (-), 07:46, 13/07/2011 [^] [^^] [^^^] [ответить]  
  • +/
    "согласно законодательству" - лишнее в этой фразе: многочисленные решения суда тому подтверждение.
     
  • 4.48, Gular (ok), 14:30, 13/07/2011 [^] [^^] [^^^] [ответить]  
  • +/
    Наивное рассуждение. Так делает не только Microsoft. Тот же Google поступает аналогично с Opensource-проектами.
     
     
  • 5.49, Аноним (-), 14:39, 13/07/2011 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Наивное рассуждение. Так делает не только Microsoft. Тот же Google поступает аналогично
    > с Opensource-проектами.

    Google одновременно с открытием кода переводит все связанные патенты в Royalty Free.

     
     
  • 6.50, тоже Аноним (ok), 16:46, 13/07/2011 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ждем хотя бы один прецедент подобного поведения МС.
    Хотя мы люди взрослые и можем сказать честно: не ждем...
     
  • 3.31, Аноним (-), 02:19, 13/07/2011 [^] [^^] [^^^] [ответить]  
  • +/
    > не Microsoft, а Microsoft Research. Совершенно разные команды.

    Да, а принцип зато всегда одинаковый: полноценную версию MS, а объедки - нахаляву, вы там их пилите, а мы потом из них дескать свою полную версию системы - сделаем. А если вы охамеете и вздумаете на этом что-то зарабатывать да еще не дай боже не платя крыше - ну вы же знаете что вам предложат "защиту от проблем" в типичном стиле "гони бабки, а не то..."

     
  • 3.34, Ян Злобин (ok), 06:41, 13/07/2011 [^] [^^] [^^^] [ответить]  
  • +/
    > не Microsoft, а Microsoft Research. Совершенно разные команды.

    И они, конечно же, никаким образом не пересекаются? ;-)

     
     
  • 4.52, Андрей (??), 20:07, 13/07/2011 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Research делает открытия, а просто M$ их патентует. Чего не понятного? :)
     
     
  • 5.55, Ян Злобин (ok), 05:00, 14/07/2011 [^] [^^] [^^^] [ответить]  
  • +/
    > Research делает открытия, а просто M$ их патентует. Чего не понятного? :)

    Кто девушку кормит, то её и танцует.  Элементарно, Ватсон!

     

  • 1.11, Аноним (-), 18:51, 12/07/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    http://www.barrelfish.org/barrelfish.png очень символично - дырявая бочка
     
     
  • 2.60, anonymous (??), 12:32, 15/07/2011 [^] [^^] [^^^] [ответить]  
  • +/
    > http://www.barrelfish.org/barrelfish.png очень символично - дырявая бочка

    и не менее символично: "Content-type: application/octet-stream".

     

  • 1.14, Аноним (-), 19:04, 12/07/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > каждое отдельное процессорное ядро которого будет управляться собственной операционной системой

    А чем это отличается от подхода, реализованного в Dragonfly BSD?

     
     
  • 2.15, Аноним (-), 19:12, 12/07/2011 [^] [^^] [^^^] [ответить]  
  • +/
    В dragonflybsd - lightweight kernel threads же. Мне этот принцип многоядерности скорее L4 Fiasco напомнил. Когда ядро(kernel, не cpu) настолько маленькое, что каждое приложение таскает с собой его копию.
     
     
  • 3.19, Аноним (-), 20:20, 12/07/2011 [^] [^^] [^^^] [ответить]  
  • +/
    > lightweight kernel threads же

    Да не в lwkt соль. В драгонфлае по шедулеру (считай, по kernel-у) на каждое cpu-ядро, потоки привязаны к ядрам, между ядрами обмен асинхронными сообщениями. http://www.dragonflybsd.org/goals/

     

  • 1.20, lefan (ok), 20:41, 12/07/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Есть еще одна OS, по принципам похожая на предложенную архитектуру NonStop Kernel (NSK). Историю она ведет из глубины компьютерной истории. Там аналогично, на каждом CPU своя Memory и свой kernel, и общение между ними идет через ServerNet по средствам сообщений. И общение между CPU и устройствами IO так же через ServerNet.
    Сейчас этой технологией владеет HP. К сожалению к открытым система не относится.
     
  • 1.24, Андрей (??), 22:02, 12/07/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > что довольно красноречиво подтверждается замерами производительности

    Объявленные замеры ещё не смотрел, но интересно, запустится ли ОС на, скажем, 6-ядерном феноме, и будут ли видны какие-то плюсы в производительности?

     
  • 1.27, dRiZd (?), 00:33, 13/07/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Интересно, кто-нить уже собрал (лень самому собирать)?
     
     
  • 2.37, Av (??), 09:24, 13/07/2011 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Да, но лень отвечать
     

  • 1.28, СуперАноним (?), 00:56, 13/07/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Ну то, что на каждое core или CPU отдельное ядрышко, может, и неплохо. Но то, что эти ядра экзо-... Вирусы, трояны, руткиты будут очень любить экзоядра ;)
     
     
  • 2.33, Аноним (-), 03:16, 13/07/2011 [^] [^^] [^^^] [ответить]  
  • +/
    >Но то, что эти ядра экзо-... Вирусы, трояны, руткиты будут очень любить экзоядра ;)

    Как-нибудь можешь это аргументировать?

     
     
  • 3.40, Я (??), 11:46, 13/07/2011 [^] [^^] [^^^] [ответить]  
  • +/
    Можно аргументировать тем, что экзоядро (в его классическом определении), подразумевает libOS, которая находится в пользовательском пространстве, но имеет доступ ко всем ресурсам. Таким образом нет контроля над ресурсами. А значит "очень любить"...
     

  • 1.38, Аноним (38), 09:56, 13/07/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    </>Смысл метода в том, чтобы превратить многопроцессорную/многоядерную машину в некое подобие кластера, каждое отдельное процессорное ядро которого будет управляться собственной операционной системой.<\>
    Кажется в КЛОСС это уже было.
     
  • 1.41, april (?), 11:46, 13/07/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    а где исошки???
     
  • 1.42, cobold (ok), 11:58, 13/07/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    amoeba, python etc. А Танненбаум и не знает
     
  • 1.43, Bront_in_Hood (?), 12:11, 13/07/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    А GNU Hurd нельзя ли отнести к такому типу операционок? Или есть принципиальные отличия от DragonFly и обсуждаемой здесь?
     
     
  • 2.44, Аноним (-), 12:30, 13/07/2011 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Хёрд не поддерживает многопроцессорность. Это ну ОЧЕНЬ принципиальное отличие.
     

  • 1.45, q (??), 12:36, 13/07/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Это некий аналог CORBA, JavaEE или удалённого вызова СОМ объекта?
     
  • 1.46, umbr (ok), 12:52, 13/07/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >...с помощью посылки сообщений другим ядрам

    При большом количестве ядер такой интерконнект должен съедать много ресурсов.

     
     
  • 2.47, cobold (ok), 13:17, 13/07/2011 [^] [^^] [^^^] [ответить]  
  • +/
    в амёбе это вроде не мешало, давало постоянный оверхед и всё. Там больше концептуальные проблемы с безопасностью были.
     

  • 1.51, Аноним (-), 19:27, 13/07/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Основная проблема такой архитектуры, как тут уже было сказано, это безпасность ... большой текст свёрнут, показать
     
     
  • 2.53, cobold (ok), 21:07, 13/07/2011 [^] [^^] [^^^] [ответить]  
  • +/
    У Амёбы насколько я знаю проблема заключалось в том, что не было проверки прав доступа процесса на объект - зная чужой дескриптор, можно было делать с ним что хочешь. Был алгоритм генерации хэша дескриптора, видимо против опечаток или тупого брутфорса, но безопасности это не помогало. Но это концептуальная ошибка только Амёбы, не думаю что в других системах это так уж сложно сделать. Опять же, смотря на какой рынок это всё ориентируется - если для кластера, как Амёба, на котором всякий люд работает, то нельзя такое ставить, а если для embedded, когда на одну железку (пусть даже с 1024 ядрами, у ibm такие есть) весь пользовательский софт от одного производителя ставится (типа firmware для одной задачи), то может быть даже и пошло бы.
    Кстати, вот тут интересно: http://mobius.cs.uiuc.edu/~rcrepal2/barrelfish_lecture.pdf
     

  • 1.54, XoRe (ok), 00:58, 14/07/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Забавно.
    А общение между ядрами сделать вообще по tcp/ip.
    Ядро 192.168.0.2, ядро 192.168.0.3, мастер-ядро 192.168.0.1, типа шлюз.
     
  • 1.56, q (??), 09:00, 14/07/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Чем то мне это напоминает qnx6...
     
  • 1.57, Аноним (-), 11:46, 14/07/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Картинка на сайте хорошая, изначально дает понять что операционка дырявая =)
     
  • 1.61, Аноним (-), 05:25, 16/07/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Я вот сколько не помню рекламных фото MS - на большинстве, индусы.
    Зашел по ссылке на сайт ОС - там тоже есть индусы :)
    Не подумайте я не росист, или еще что то.
    Просто разработчики знают как пишут индусы :)
     
  • 1.62, Аноним (62), 13:45, 17/07/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    REQUIRED TOOLS
    47
    48 The following are required to build Barrelfish and its tools:
    49 * GCC 4.x
    50 * 4.4.5, and 4.5.2 are known to work
    51 * cross-compiling between i386 and x86_64 works
    52 (requires libc6-dev-i386 to build 32 bit on 64 bit machine)
    53 * for the ARM port, we recommend the EABI tools available from CodeSourcery:
    54 http://www.codesourcery.com/sgpp/lite/arm
    55 * GNU binutils (2.19 is known to work)
    56 * GNU make
    57 * GHC v6.10 or v6.12.2 and Parsec 2.1
    58 * earlier versions of GHC are unsupported
    59 * GHC v6.12.1 has a known bug and is unable to build our tools

    МС ресеарч не гнушавится гнутым софтом ;) Ждем Линдовс от корпорации зла.

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру