Проектирование ОС

Тема в разделе "WASM.PROJECTS", создана пользователем Xandr, 21 сен 2004.

  1. QuakeMan

    QuakeMan New Member

    Публикаций:
    0
    Регистрация:
    27 июн 2007
    Сообщения:
    17
    английский есть
    ток это не спасет отца...
     
  2. 0x43656c74

    0x43656c74 Celt

    Публикаций:
    0
    Регистрация:
    1 ноя 2007
    Сообщения:
    12
    эммм, сразу говорю читаль всю ветку в лом... могу повториться...
    сам тоже интересуюсь это темой (в плане создания ОС для робота)

    Есть очень хорошие книги автора Эндрю Таненбаума...
    одна из них "Разработка и реализация операционных систем"...
    но для полного понимания области, в идеале конечно, нужно прочитать и другие его книги
    1. Архитиктура компьютерных систем
    2. Компьюетные сети
    3. Разработка и реализация.....
    4. Сетевые операционные системы

    лучше всего читать в таком порядке....
    сам пока застрял на книге 1
     
  3. Pavia

    Pavia Well-Known Member

    Публикаций:
    0
    Регистрация:
    17 июн 2003
    Сообщения:
    2.409
    Адрес:
    Fryazino
    0x43656c74
    ОС - для робата? А она ему нужна может использовать готовые варианты Window, Linux, QNX?
    Если робот должен выполнять стого заложенный алгоритм следовать по линии обробатывать деталь. То для того робота хватит DOS.
    А вот если от робота требуется помимо прочего мыслительная деятельность то да. Тут нужна много задачная ОС.
    1. Задача обработка датчиков и реализация механизма движения.
    2. Обработка поступивших данных

    И каждый поток при этом должен иметь определенный приоритет чтобы максимально эффективно использовать ресурсы компьютера.
     
  4. 0x43656c74

    0x43656c74 Celt

    Публикаций:
    0
    Регистрация:
    1 ноя 2007
    Сообщения:
    12
    Pavia
    Для программируемого(может даже думающего) робота в любом случае нужна ОС в качестве виртуальной машины переводящей с уровня ОС(например прога на асме) на уровень микроархитекруты или сразу на аппаратный уровень...
    Ну а по поводу взять готовую или же написать свою... ну что здесь можно сказать.... робототехника это моё хобби...и в полезную нагрузку может нести только в качестве образовательном... изучение например создание ОС.
    ну а про потоки датчики и приоритеты, ну мне пока рановато... у меня ещё аппаратынй уровень не готов, пока не спроектирован...
     
  5. 0x43656c74

    0x43656c74 Celt

    Публикаций:
    0
    Регистрация:
    1 ноя 2007
    Сообщения:
    12
    Народ есть такой вопрос: как лучше сделать?
    1. Загрузчик ядра переводит процессор в защищённый режим и загружает ядро
    или
    2. загрузчик загружает ядро и ядро переводит процессор в защищённый режим

    может ещё кто знает кикие тонкости и сложности у того или иного способа?
     
  6. rudik

    rudik Руденко Артём

    Публикаций:
    0
    Регистрация:
    6 дек 2006
    Сообщения:
    302
    Адрес:
    г. Харьков
    Это больше философский вопрос...
    Разницы собственно большой нет но я склоняюсь ко второму способу потому, что если писать по первому варианту то загрузчик будет решать где в памяти будет находится GDT\IDT и лишыт ядро поддержки со стороны BIOS, что по моему не есть очень хорошо. Если ты надумаеш например изменить адресс таблицы прерываний, то прийдется изменять есчё и загрузчик, что тоже не очень хорошо. Лучше в загрузчике реализуй возможность загрузки винд.
     
  7. SII

    SII Воин против дзена

    Публикаций:
    0
    Регистрация:
    31 окт 2007
    Сообщения:
    1.483
    Адрес:
    Подмосковье
    0x43656c74

    А ещё загрузчик может то переходить в защищённый режим, то в реальный -- чтобы при необходимости использовать функции BIOS (прежде всего -- чтение с диска).
     
  8. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    2 всяко лучше. можно для загрузки ядра использовать прерывания BIOS'a.
     
  9. 0x43656c74

    0x43656c74 Celt

    Публикаций:
    0
    Регистрация:
    1 ноя 2007
    Сообщения:
    12
    Думаю именно ядро будет следить за режимом работы проца...
    + ко всему что бы не было супер сильных тормозов... нужно будет писать драйвер для диска... и как следствие его нужно будет загружать до перевода в защищённый режим...
     
  10. SII

    SII Воин против дзена

    Публикаций:
    0
    Регистрация:
    31 окт 2007
    Сообщения:
    1.483
    Адрес:
    Подмосковье
    0x43656c74

    Не только драйвер диска нужен, но и поддержка файловой системы для диска, с которого осуществляется загрузка.
     
  11. r90

    r90 New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2005
    Сообщения:
    898
    в лине этим занимается загрузчик, который грузит в оперативку/распаковывает ядро, и образ корневой файловой системы, которое ядро себе монтирует на первое время как ram-disk до того момента как оно инициализирует железо и себя под железо (подгружая модули с ram-диска) настолько, чтобы иметь возможность смонтировать корень уже с какого-нибудь другого блочного устройства -- с раздела жёсткого диска, через smb/nfs, или ещё откуда-то. кстати может и не монтировать, а продолжать пользоваться ram-disk'ом навсегда.
    но в защищённый режим загрузчик проц не переводит. хоть ядро уже биосом и не пользуется, но как я понимаю потому загрузчик не трогает проц, что тогда этот загрузчик придётся перекомпилировать вместе с ядром или сильно усложнять протокол загрузки ядра.
     
  12. SII

    SII Воин против дзена

    Публикаций:
    0
    Регистрация:
    31 окт 2007
    Сообщения:
    1.483
    Адрес:
    Подмосковье
    r90

    Если в защищённый режим переводит не загрузчик, то и ядро (во всяком случае, точку входа в него по загрузке) придётся загружать в нижнюю память -- иначе загрузчик не сможет передать ему управление. А это существенно снижает максимально возможный размер ядра.
     
  13. 10110111

    10110111 New Member

    Публикаций:
    0
    Регистрация:
    13 июл 2006
    Сообщения:
    319
    Адрес:
    Санкт-Петербург
    А почему бы не вызывать BIOS из V86? Тогда никаких проблем вообще ни для ядра, ни для загрузчика.
     
  14. SII

    SII Воин против дзена

    Публикаций:
    0
    Регистрация:
    31 окт 2007
    Сообщения:
    1.483
    Адрес:
    Подмосковье
    10110111

    А будет ли реальный BIOS корректно работать в V86? И даже если это принципиально возможно, ему нужно дать полный доступ к аппаратуре...
     
  15. 10110111

    10110111 New Member

    Публикаций:
    0
    Регистрация:
    13 июл 2006
    Сообщения:
    319
    Адрес:
    Санкт-Петербург
    По своему опыту знаю, что будет. И чё, что дашь доступ? Это же не приложение. Считай его драйвером.
     
  16. SII

    SII Воин против дзена

    Публикаций:
    0
    Регистрация:
    31 окт 2007
    Сообщения:
    1.483
    Адрес:
    Подмосковье
    10110111

    Я не спорю, просто выразил сомнения, поскольку сам никогда не проверял :)
     
  17. 0x43656c74

    0x43656c74 Celt

    Публикаций:
    0
    Регистрация:
    1 ноя 2007
    Сообщения:
    12
    Кстати на www.lowlavel.ru читаю статейки... там автор в самом загрузчике меняет режим...
    кто нибудь может подсказать подробное описание режимов работы проца...
     
  18. Freeman

    Freeman New Member

    Публикаций:
    0
    Регистрация:
    10 фев 2005
    Сообщения:
    1.385
    Адрес:
    Ukraine
    маны интела