Renik 0 25 сентября, 2014 Опубликовано 25 сентября, 2014 · Жалоба Здравствуйте. Перевожу проект с 2.6 версии на 3.x верcию ядра линукса. Камень - sama5d3. В модуле ядра происходит постоянная задержка прерывания приема символа (через usart) примерно в 30 микросекунд (от 15 микросекунд до 40 микросекунд). Описание теста: Из программы производится ioctl вызов к модулю. В модуле происходит настройка usarta на посылку и прием 1 байта. И там же обработчик прерывания. Время замерялось при помощи осциллографа. Версия linux: # uname -a Linux buildroot 3.12.24-rt38 #4 PREEMPT RT Wed Aug 20 16:37:31 FET 2014 armv7l GNU/Linux Почему всегда присутствует задержка? Не было ни одного запуска программы, чтобы задержка была хотя бы менее 10 микросекунд. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gosha 0 26 декабря, 2014 Опубликовано 26 декабря, 2014 · Жалоба Здравствуйте. Перевожу проект с 2.6 версии на 3.x верcию ядра линукса. Камень - sama5d3. В модуле ядра происходит постоянная задержка прерывания приема символа (через usart) примерно в 30 микросекунд (от 15 микросекунд до 40 микросекунд). Описание теста: Из программы производится ioctl вызов к модулю. В модуле происходит настройка usarta на посылку и прием 1 байта. И там же обработчик прерывания. Время замерялось при помощи осциллографа. Версия linux: # uname -a Linux buildroot 3.12.24-rt38 #4 PREEMPT RT Wed Aug 20 16:37:31 FET 2014 armv7l GNU/Linux Почему всегда присутствует задержка? Не было ни одного запуска программы, чтобы задержка была хотя бы менее 10 микросекунд. Задержка времени между стоп -битом символа на rs-232 и стартом обработчика прерывания? Linux -не система реального времени. Прерывания не перебивают друг друга. Приоритетов прерываний нет. Пока обработчик прерывания IDE не отработает, следующий не стартует. Время работы обработчика прерывания IDE не является постоянным, зависит от количества секторов и пр... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vikzet 0 4 января, 2015 Опубликовано 4 января, 2015 · Жалоба Задержка времени между стоп -битом символа на rs-232 и стартом обработчика прерывания? Linux -не система реального времени. Прерывания не перебивают друг друга. Приоритетов прерываний нет. Пока обработчик прерывания IDE не отработает, следующий не стартует. Время работы обработчика прерывания IDE не является постоянным, зависит от количества секторов и пр... Судя по версии линукс Linux buildroot 3.12.24-rt38 #4 PREEMPT RT Wed Aug 20 16:37:31 FET 2014 armv7l GNU/Linux это ядро линукс с пачем PREEMPT RT, поэтому этот линукс очень даже real time Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться