Ядро

Тема в разделе "WASM.HEAP", создана пользователем AntiB, 3 апр 2008.

  1. AntiB

    AntiB New Member

    Публикаций:
    0
    Регистрация:
    23 мар 2007
    Сообщения:
    393
    Доброе время суток!
    У меня возник вопрос и решил написать в эту часть форума... а вопрос состоит так: Как Вы думаете какой тип ядер лутчшый: монолитное, микроядро,гибрид,екзоядро или модульное??? Ответ пожалуста с коментариями. Зарание всём благодарен!.
     
  2. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    6.242
    AntiB
    никакой - есть +/- везде: монолитное наиболее просто в реализации и стало быть имеет большую вероятность устойчивой работы; многоядерность позволяет лучше использовать возможности мультипроцных систем и в случае сбоя одного ядра можно перераспределить работу на другие.
     
  3. AntiB

    AntiB New Member

    Публикаций:
    0
    Регистрация:
    23 мар 2007
    Сообщения:
    393
    UbIvItS
    извиняюсь - может Вы не поняли к чему что - это к ОС (тоесть ядро ОС), если я всё верно понял вы о процессорах пишете
     
  4. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    6.242
    AntiB
    я понял, что ОС - только её в отрыве от железа быть не может.
     
  5. AntiB

    AntiB New Member

    Публикаций:
    0
    Регистрация:
    23 мар 2007
    Сообщения:
    393
    UbIvItS
    или я Вас не понимаю или Вы меня, я говорю про абстракное ядро, тоесть просто о архитектуре - без железа.
     
  6. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    6.242
    AntiB
    уберите из моих слов слово проц и Вы получите предложение об абстрактной оси. ответьте мне, пожалуйста, зачем нужна многоядерность оси и Вы ответите сами себе.
     
  7. rei3er

    rei3er maxim

    Публикаций:
    0
    Регистрация:
    15 янв 2007
    Сообщения:
    917
    Адрес:
    minsk
    имхо, микроядро
    1. возрастет надежность системы (чем меньше привилегированного кода, тем меньше количество возможных фатальных ошибок, которые приводят к краху системы)
    2. модифицируемость (чем меньше связность отдельных модулей, тем более они модифицируемы независимо друг от друга)
    3. более легкая отладка и тестирование системы
    4. гибкость (нужная функциональность добавляется без затрагивания ядра)
    5. портируемость (чем меньше ядро, тем меньше затраты по его переносу на другие платформы)

    из минусов, пожалуй, относительно невысокое быстродействие
    однако на современных процессорах это будет не столь заметно, если вообще заметно
     
  8. AntiB

    AntiB New Member

    Публикаций:
    0
    Регистрация:
    23 мар 2007
    Сообщения:
    393
    rei3er
    У меня вопрос насчет надежности от вражески настроеного юзера (хакеров), на скока защищонное поведение драйверов и других частей ОС что находиться в ринг-3 ???
     
  9. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Защищённость от 'вражески настроеного юзера (хакеров)' противостоит гибкости.
     
  10. AntiB

    AntiB New Member

    Публикаций:
    0
    Регистрация:
    23 мар 2007
    Сообщения:
    393
    Clerk
    Не спорю, но плохо защищенная ОС - не нужна, хватает форточки
     
  11. rei3er

    rei3er maxim

    Публикаций:
    0
    Регистрация:
    15 янв 2007
    Сообщения:
    917
    Адрес:
    minsk
    по определению, ринг-3 код не может убить систему
    а если может - в топку такую систему
    отсюда надежность микроядра
     
  12. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    щас пишу свою ОС (не спрашивайте зачем): там реализовано микроядро с небольшими признаками гибрида. Вот )
     
  13. AntiB

    AntiB New Member

    Публикаций:
    0
    Регистрация:
    23 мар 2007
    Сообщения:
    393
    rei3er
    А зачем убивать - например драйвер хдд, берет и наглым образом уничтожает даные с хдд, кому тогда ета система нужна? если я не ошибаюсь - то получить доступ может любая программа, если ОС даст добро, тоесть написал я прогу которая используя один из протоколв - и записую всё мусором - и капец Вашым даным! Такой вариант возможен в микроядре??? и еще чтобы запрещать программа доступ к портам нужно использовать tss (переключение которого - длинее програмного). могу и ошибаться
    Great
    и как Вы сделали переключения задачами и защиту от выше наведенного примера?
     
  14. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    тогда нужно идти по примеру мс - делать верификацию драйверов, и только верифицированным драйверам давать вохможность заргузиться.
     
  15. AntiB

    AntiB New Member

    Публикаций:
    0
    Регистрация:
    23 мар 2007
    Сообщения:
    393
    n0name
    ага, они ничего этим хорошо не сделали - наоборот навредили, так как их защита обходиться в "два клика"
     
  16. _basmp_

    _basmp_ New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2005
    Сообщения:
    2.939
    и система умрет только родившись. МС вбухала большие деньги чтоб верифицировали.

    Можно закрыть драйвера, но это тоже плохое решение.
    Вообще говоря 100% защиты на драйверном уровне получить невозможно в принципе.

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

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    "идти по примеру", и "полностью передирать систему" несколько различные понятия. Если правильно реализовать верификацию то такое обойти технически будет невозможно.
    гм, я не думал что предполагается писать ось-конкурент винде/nix'ам. Следует различать оси по критериям популярности/защищенности. Если нужна популярная ось - это одно, защищенная - другое.
     
  18. _basmp_

    _basmp_ New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2005
    Сообщения:
    2.939
    Непопулярная ось как некрасивая женщина, автоматом защищена 100%. Да только жить долго не будет - пока вы интерес к ней не потеряете.
     
  19. kaspersky

    kaspersky New Member

    Публикаций:
    0
    Регистрация:
    18 май 2004
    Сообщения:
    3.006
    AntiB
    > Вы думаете какой тип ядер лутчшый:
    > монолитное, микроядро,гибрид,екзоядро или модульное???
    если бы лучший тип был, остальные бы уже вымерли ;)
    монолитное ядро на десткопе будет сосать, потому как включить в него драйвера под все железо - это можно сдохнуть сразу, а вот для встриваемых систем - самое то. монолитное ядро не нуждается в создании унифицированного интерфейса для работы с драйвером, да и понятие драйвера там вообще нет, что еще больше упрощает программирование.

    микроядро - ну в теории хорошо, а на практике... только на спец-железе. тут даже монитор виртуальных машин для аппаратной виртуализации на микроядро не тянет, это выходит уже целая ось ;( защищенность микроядер - легенда. упадет у тебя драйвер fs и вместе с ним весь дисковый том - что делать будем?! управление памятью в современных ЦП столь сложно, что в микроядро просто не лезет и проситься чтобы его вынесли в отдельный драйвер. ок, выносим. а теперь думаем - а что будет, если этот драйвер упадет? и мы останемся без памяти ;(
    плюс механизмы быстрого перехода между кольцами в x86 появились лишь недавно, да все равно они тормозят, а без них микроядро нереализуешь,т.к. если драйвера работают в том же кольце, что и микроядро, они могут порушить его...

    гибридные ядра - они тоже разные бывают. вот у NT какое ядро? хреновое у него ядро, хотя и гибрид. исключение в одном драйвере ложит всю систему, ms до сих пор ленится проанализировать в обработчике kebugcheckex - какая вероятность критических разрушений системы и если она равна нулю (например, как в случае int *p=0; return *p;) - нафига останавливать всю систему?!

    ну а вообще все это просто треп и словоблудие. предпочительный тип ядра определяется поставленной задачей и даже неоптимальное ядро может быть популярным в силу разных причин...
     
  20. AntiB

    AntiB New Member

    Публикаций:
    0
    Регистрация:
    23 мар 2007
    Сообщения:
    393
    kaspersky
    Логика в Ваших мыслях есть. Лично я думаю что лутче использовать гибрид... тока нужно выбрать к чему он больше будет ити, к монолитам или к микроядре.
    Если Вы считаете что монолит на десктопах будет
    , а микроядро только на спец железе хорошо, тогда нарываеться вопрос - что тогда по Вашему мнению использовать? Гибрид? или всё же чётко ити к конкретной концепции?