The OpenNET Project / Index page

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

Построение надежных операционных систем. Серия статей по Linux.

17.11.2006 12:14

Опубликован перевод статьи Эндрю Таненбаума "A Lightweight Method for Building Reliable Operating Systems Despite Unreliable Device Drivers" в которой рассмотрены все основные технические идеи ОС MINIX 3 применяемые для решения проблемы построения надежных операционных систем, допускающих наличие ненадежных драйверов устройств. Вольный пересказ данной статьи можно прочитать также здесь.

Кроме того в html формате доступны некоторые интересные статьи из журнала Chip Special Linux (все статьи журнала в PDF формате доступны на данной странице):

  • "Проблемы совместимости Linux-систем" -рассказ о проблемах совместимости и переносимости приложений между различными клонами Linux;
  • "Linux Standard Base: история успеха";
  • "Linux? Вам какой?" - обзор назначения различных веток Linux ядра (2.6.x, -rc, -pre, -git, -mm, -ck, -tiny и т.д.);
  • "Udev в разрезе";
  • "Ионизация консоли" - использование оконного менеджера Ion;
  • "InitNG - начни сначала" - рассказ об альтернативной Init системе InitNG, поддерживающей параллельный старт сервисов;
  • "Незаметный слуга" - обзор прослойки HAL (Hardware Abstraction Layer);
  • "Zавидный конкурент bash" - обзор Zsh;

    1. Главная ссылка к новости (http://citforum.ru/operating_s...)
    Лицензия: CC-BY
    Тип: яз. русский / Обобщение
    Короткая ссылка: https://opennet.ru/8883-minix
    Ключевые слова: minix, driver
    При перепечатке указание ссылки на opennet.ru обязательно
    Обсуждение (17) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, leon55 (?), 17:17, 17/11/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Прочитал статью "Линукс? Вам какой" и понял что дальше читать остальные материалы нет смысла..(
     
  • 1.2, pavlinux (??), 22:05, 17/11/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > "Linux? Вам какой?" - обзор назначения различных веток Linux ядра
    Видимо статья писалась год или чуть менее, так как, inotify, dnotify, vm86,
    AIO, уж точно я с марта месяца юзаю.
    Да, и про AIO в -tiny патчах - там не "включение этой полезной функции", а отключение, за не надобностью на Embedded девайсах.
     
  • 1.3, pavlinux (??), 00:26, 18/11/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >....что аварийные отказы большинства операционных систем
    > случаются по вине драйверов устройств

    РЖУНИМАГУ


    В общем, идеи Тани Баумана вынашивалась столь долго, что устарели в утробе, не родившись. Точнее ко что вылезло, но опять же, в пред пенсионном возрасте.


     
     
  • 2.5, cmpxchg (?), 10:38, 18/11/2006 [^] [^^] [^^^] [ответить]  
  • +/
    >> ....что аварийные отказы большинства операционных систем
    >> случаются по вине драйверов устройств

    Перевод неверный. В оригинале было "follows from the observation that the majority of operating system crashes are caused by device drivers [7, 25]". Где переводчик увидел множественное число по отношению к "operating system" - непонятно. В оригинальной статье речь шла именно о большинстве отказов отдельно взятой "обобщенной" операционной системы.

    >РЖУНИМАГУ

    А не будете ли так любезны, уважаемый, объяснить прогрессивной общественности причину "ржания"? Вы не согласны с тем, что ошибки в драйверах - основная причина отказов? А что же тогда причина? Планировщик, подсистема виртуальной памяти, или, может быть, IPC? Мне лично гораздо спокойнее будет знать, что ОС падает от кривого драйвера, который можно и обновить на исправленный с определенной долей вероятности, чем от изъяна самого ядра ОС.

    >В общем, идеи Тани Баумана вынашивалась столь долго, что устарели в утробе, не
    >родившись. Точнее ко что вылезло, но опять же, в пред пенсионном возрасте.

    Процитированная Вами фраза не есть идея Таненбаума. Там, если присмотреться внимательнее, в квадратных скобочках есть цЫферки - это ссылки на творения других авторов, от которых, собственно, и взято утверждение.

    И,кроме того, отчего же не родились? Про QNX когда-нибудь слышали? И про то, что QNX была hard realtime OS в то время, когда ляликс(r) еще даже не был зачат?

     
  • 2.6, MK (??), 10:49, 18/11/2006 [^] [^^] [^^^] [ответить]  
  • +/
    И что у него устарело, светоч передового ОСостроения?
     
  • 2.8, ДяДя (?), 18:04, 18/11/2006 [^] [^^] [^^^] [ответить]  
  • +/
    > В общем, идеи Тани Баумана вынашивалась столь долго, что устарели в утробе, не родившись. Точнее ко что вылезло, но опять же, в пред пенсионном возрасте.

    О, вы наверное и про Micro$oft не слышали?
    Так вот самая свешая их ОС Vista есть настоящая мокроядерная ОС c предсказуемым временем реакции. Похоже, что устарели это Вы, уважаемый.

    P.S.
    Кто понимает, тот выбирает ... микроядерную архитектуру.

     
  • 2.9, Хрен (?), 18:08, 18/11/2006 [^] [^^] [^^^] [ответить]  
  • +/
    Похоже, чувак кроме Линупса вообще ни очем больше не слышал.
     
     
  • 3.10, _Nick_ (??), 18:12, 18/11/2006 [^] [^^] [^^^] [ответить]  
  • +/
    нет, он просто прочитал мнение Торвальдса о микроядрах...


    Торвальдса безмерно уважаю, но вот с нелюбовью к микроядру он несколько перегибает...

     
     
  • 4.15, www.andr.ru (?), 11:47, 20/11/2006 [^] [^^] [^^^] [ответить]  
  • +/
    > Торвальдса безмерно уважаю, но вот с нелюбовью к микроядру он несколько перегибает...

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

     
     
  • 5.18, Dvorkin (??), 16:05, 20/11/2006 [^] [^^] [^^^] [ответить]  
  • +/
    безмерно уважать не надо, достаточно просто его уважать... как умного и не жадного человека.
    завидуете Майклу Джексону? :)
     
  • 2.13, serg1224 (?), 02:48, 20/11/2006 [^] [^^] [^^^] [ответить]  
  • +/
    > В общем, идеи Тани Баумана вынашивалась столь долго, что устарели в утробе,
    > не родившись. Точнее ко что вылезло, но опять же, в пред пенсионном возрасте.

    Может товарищ знает реальные альтернативы повышения надежности систем?
    Поделитесь, плиз. Факультативно очень интересуюсь.

    Из своего опыта заню, что не только драйвера вызывают kernel panic, но легче от этого не становится. Лично мне хочется быть уверенным, что стабилная работа ядра ОС математически выверена, и подтвержена ДЛИТЕЛЬНОЙ практикой. Для этого ядро должно заниматься исключительно тем, что положено ядру и обновляться ВЕСЬМА РЕДКО, ибо нечего там особо менять.

     

  • 1.4, pavlinux (??), 00:35, 18/11/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    После пункта 2.2 все становится настолько глупым. Как само понятие модульности драйверов. Кто-то из прочитавших скажет, "Отрицая - предлагай".

    Идея parallel_kexec() после BIOS намного прогрессивнее.

      

     
  • 1.12, Якобы умный (?), 22:08, 19/11/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Прочитал до половины. Не, не статью (куды нам с рязанской мордой), а опубликованный перевод. Хотя какой там перевод, там субъективное мнение и критика того, что надо бы перевести, а не аппелировать.
    Плюнул на перевод, поставил чайник и пошел искать словарь с буржуйскоского. Через час опух, то ли от чая, то ли от не ихних исключений в наших словарях.
    Сколько не пытался встать на строну автора, однако здравый смысл протестовал. Утомился переводить евойные притязания к ядру, который клювом щелкает когда доверенные лица (драйвера) творят чего хотят. Самое время воспеть хвалу Windows, который лицензирует чужое программное обеспечение
     
  • 1.14, ErrSkin (?), 11:21, 20/11/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Где вы там увидели микроядерность в Vista ?
     
     
  • 2.16, www.andr.ru (?), 11:55, 20/11/2006 [^] [^^] [^^^] [ответить]  
  • +/
    > Где вы там увидели микроядерность в Vista ?

    и крутой реалтайм.

    чудаки, реалтайм - это когда все процессы, которые будет выполнять ядро, заранее известны и заранее просчитана скорость их выполнения, и за счёт этого автомат не спалит пироги в печке. НИ ОДНА ОС ОБЩЕГО НАЗНАЧЕНИЯ НЕ УМЕЕТ РЕАЛТАЙМ И НЕ МОЖЕТ УМЕТЬ, так как неизвестно заранее, ни сколько юзер запустит процессов, ни сколько они будут выполняться. для проигрывания фильмов поддерживается т.н. "мягкий реалтайм", но я думаю, что любой вспомнит, как кино начинает дёргаться и заикаться, если машина перегружена, чего в реалтайм-ОС абсолютно недопустимо.

    реалтайм-ОС - это заранее спланированный набор операций, которые выполняет ядро, и никаких дополнений к спланированому не допускается.

     

  • 1.17, www.andr.ru (?), 12:00, 20/11/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    статья - супер, большое спасибо за перевод.
    таненбаум - отец.
     
     
  • 2.19, chas (?), 11:04, 24/11/2006 [^] [^^] [^^^] [ответить]  
  • +/
    Прямо к теме, читал на днях интервью с Алексеем Брагиным:

    http://www.openproj.ru/index.php?t=1260&IB2XPnew=36b8b481e7be1c1e63dbc707c497

    "...Я нашёл несколько однотипных багов, когда для определения размера структуры проделывалась операция sizeof(pStruct)....вместо sizeof(*pStruct)... Отлавливать такую ошибку довольно сложно... проявляется потом, в совершенно неожиданном и несвязанном месте (драйвер юсб-контроллера, а проявление – в драйвере файловой системы)...."

    И Эндрью Таненбаум:
    "В программах на языках C и C++ используется множество указателей, и эти программы все время подвержены ошибкам ... В нашей разработке сервер или драйвер, пытающиеся разыменовать плохой указатель, принудительно завершаются, и выдается дамп памяти для будущей отладки,....заменяет принудительно завершенный процесс его свежей копией."

     

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



    Спонсоры:
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

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