2010-06-26 2 views
2

У меня есть несколько запросов, связанных с переходом на RTOS для разных процессоров в руке. Это общие вопросы. Возможно, вы можете пояснить примеры, характерные для любого процессора/rtos или даже в целом. Как определить, может ли процессор поддерживать RTOS? Как узнать, требуется ли процессору RTOS?Процессор может поддерживать/требовать RTOS?

+0

Прошу прощения, в чем вопрос? – BobbyShaftoe

+0

@S Man - Не могли бы вы разместить свои связанные с оборудованием вопросы на http://superuser.com/, а не здесь. Это сайт для программирования связанных вопросов. Спасибо. –

+3

@ Gert G: Я должен не согласиться в этом случае; во встроенных системах обычно невозможно быть полностью аппаратным агностиком; программное обеспечение и аппаратное обеспечение неразрывно связаны, и этот вопрос является скорее программным обеспечением, чем аппаратным. superuser.com был бы совершенно неуместным форумом для этого вопроса. – Clifford

ответ

0
  • Никакой процессор НЕОБХОДИМ RTOS. RT - это особенность программирования, а не то, что процессор может СПРОСИТЬ.

  • КАЖДЫЙ процессор, который я знаю о поддержке RTOS - аппаратное прерывание будет прерываться при следующей инструкции. В основном ОС останавливает это и обрабатывает вещи в режиме реального времени.

+1

Один из процессоров, которые я знаю, не поддерживает превентивную RTOS - семейство PIC16, поскольку управление вызовами невозможно. –

+2

Существует огромное количество процессоров, которым не хватает памяти для поддержки RTOS. Попытка настроить его для работы с процессором с 64 или 128 байтами ОЗУ просто не стоит усилий. –

+0

Неправильно. Шутки в сторону. Не сказать дерьмо - несколько лет назад 64 Мб был памятью о рабочей станции и догадывался, что - там остались RTOS. RTOS иногда требуется для управления очень маленькими, но критичными по времени приложениями, такими как ABS/ESP в автомобилях. Я вроде бы пари, мне не нужно 16 МБ ОЗУ для контроллера АБС. RTOS часто используются во встроенных устройствах. – TomTom

2

Это еще один вопрос, «длинный вопрос», но я дам ему +1 за то, что он интересен.

Второй пункт первым. Я не думаю, что для процессора может потребоваться RTOS; Я бы скорее сказал, что приложение может.

Что касается процессора, поддерживающего RTOS, то ваши основные вопросы будут заключаться в том, насколько сильно вы загружаете его, сколько событий он должен обрабатывать &, сколько требуемой обработки и т. Д., А также доступности механизмов обработки прерываний , и т. д.

У вас есть конкретный процессор, ROTS, приложение в виду, или это просто общий вопрос?

3

Требуется ли процессор для ОСРВ? Нет - вам не требуется RTOS. У вас может быть сложное встроенное приложение, работающее без него. Приложения, в которых я сейчас работаю, не имеют ОС RTOS. Нам нужно подумать о планировании различных задач в нашем приложении и написать код, который планирует эти задачи. Мы достигаем большей части этого, просто используем таймеры программного обеспечения и выполняем различные задачи, как мы считаем appopriate. Тем не менее, наличие RTOS может облегчить процесс, легко спланируя различные части вашего кода, и вам не нужно беспокоиться о том, чтобы позаботиться об этом.

Вы должны рассмотреть несколько вещей, когда вы выбираете RTOS. Сколько оперативной памяти у вашего процессора? Сколько у вас FLASH? Вы не хотите ставить дорогой чип на свою плату и тяжелую RTOS, если вам не нужны все возможности. Для базового планирования вы можете получить относительно небольшие RTOS, которые не являются огромными и будут делать большинство вещей, которые вы хотите достаточно эффективно.
, например. Бесплатный RTOS является открытым исходным кодом и составляет примерно 9K только

Вы также можете использовать RTOS, например VxWorks или Embedded Linux, которые делают намного больше, но являются либо дорогими, либо огромными или обоими.

В конце концов, RTOS, которую вы используете, в действительности зависит от потребностей вашего приложения и от того, сколько памяти вам нужно для этого.

0

Почему для процессора требуется и RTOS? В конце концов, RTOS - это просто программное обеспечение, работающее непосредственно на аппаратном обеспечении, и это программное обеспечение может в равной степени быть вашим приложением, работающим непосредственно на оборудовании. Эта часть вашего вопроса имеет мало смысла. Теперь, если у вас есть процессор, предназначенный для запуска, скажем Java-код, выполнив байт-код на аппаратном уровне, было бы бессмысленно использовать этот процессор с чем-то другим, кроме JVM в качестве основы для приложения, но я не могу думать о процессоре, который так адаптированный к внедрению RTOS, который вы не можете использовать без RTOS.

Теперь, в отношении того, может ли процессор поддерживать RTOS, самый простой способ - проверить, есть ли для него коммерческая RTOS. Большинство поставщиков процессоров гарантируют, что такая поддержка будет создана от одной или нескольких сторонних сторон до того, как чип будет вообще доступен. В общем, я бы предположил, что все, что связано с механизмом прерывания и таймером, может поддерживать RTOS или, по крайней мере, какой-то планировщик, учитывая достаточные ресурсы. Однако есть некоторые очень ограниченные ресурсами микроконтроллеры, где это просто не имеет смысла.

Смежные вопросы