Jump to content

    
winniethepooh

web server arm cortex m3 nommu

Recommended Posts

Здравствуйте форумчане.

 

Имею на отладочном модуле

ARM Cortex-M3 c параметрами:

Max Clock Speed (MHz) -144

Total Flash (KB) – 1024

SRAM (KB) - 128

NO MMU

Дополнительная память (на модуле) SRAM — 16MB

Сетевой интерфейс с каналом 10/100/1000BASE-T

Операционная система uClinux – 2.6.33-arm1

 

Хочу запускать веб сервер c статическим содержимым и достаточно быстрым откликом (1 запрос в секунду) передовая небольшие объемы данных (до 100 байт в GET запросе).

Что уже попробовал устанавливать:

-встроенный в busybox веб сервер (httpd - выполняет vfork для каждого нового запроса), задержка ответа веб сервер может достигать 10 секунд (на прямом соединении, витая пара). Утилита top показывает load average на процессоре около 3.5 единиц.

-одно поточный веб сервер на основе state машины. Утилита top показывает load average на процессоре около 2.5 единиц.

-простой обмен udp пакетами с отладочным модулем приводит к потере пакетов (6 из 10)

 

Получается, что сетевой интерфейс линукса тяжеловат для cortex-m3.

Есть какая либо возможность повысить «отзывчивость» сетевого интерфейса или я

я в принципе где то ошибаюсь?

 

Спасибо.

Edited by winniethepooh

Share this post


Link to post
Share on other sites
uСLinux FreeRTOS+lwip или *RTOS+uip, не?

спасибо за отклик juvf

Веб сервер под FreeRTOS уже был реализован в предыдущих проектах (не мной).

Есть необходимость поднять веб под uClinux.

У меня нет достаточного опыта программирования сетевых интерфейсов поэтому

хотелось бы получить совет.

 

 

Share this post


Link to post
Share on other sites
-простой обмен udp пакетами с отладочным модулем приводит к потере пакетов (6 из 10)

 

Так у Вас там какая-то проблема или в физическом уровне, или в низкоуровневом драйвере. Разберитесь сначала с этим моментом.

Share this post


Link to post
Share on other sites
Так у Вас там какая-то проблема или в физическом уровне, или в низкоуровневом драйвере. Разберитесь сначала с этим моментом.

спасибо Rst, попробую разобраться

Share this post


Link to post
Share on other sites
Есть необходимость поднять веб под uClinux.

Хотите использовать наработки под nix?))) Или инструментами для разработки под nix воспользоваться?.

 

Был такой опыт: ucLinux + cortex-m3. В итоге психанули, и взяли imx6 + linux))))

Share this post


Link to post
Share on other sites
Хотите использовать наработки под nix?))) Или инструментами для разработки под nix воспользоваться?.

 

Был такой опыт: ucLinux + cortex-m3. В итоге психанули, и взяли imx6 + linux))))

 

да есть мысли перейти на более производительный процессор, но сдерживает уже

имеющееся железо (которое сейчас работает под FreeRTOS). т.к. под рукой

есть только то что есть, хотелось бы разобраться в причинах.

Есть шанс что где то косяк в драйвере (не большой).

Есть мысли попробовать отказаться от линуксового tcp/ip стека и попробовать

привязать lwip.

Share this post


Link to post
Share on other sites
c FreeRTOS уже давно работаем, но хотим еще и с Linux - ом

Возьмите подходящую платформу. Ну зачем натягивать сову на глобус :rolleyes:

Share this post


Link to post
Share on other sites
Возьмите подходящую платформу. Ну зачем натягивать сову на глобус :rolleyes:

 

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

и счастье будет.

очень нужно.

Share this post


Link to post
Share on other sites
да есть мысли перейти на более производительный процессор, но сдерживает уже

имеющееся железо (которое сейчас работает под FreeRTOS). т.к. под рукой

И Вы решили затормозить уже имеющуюся систему? "Хотим большего быстродействия, но сдерживает старое железо, поэтому понизим быстродействие"... Странно как-то, не находите?..... :wacko:

Share this post


Link to post
Share on other sites
И Вы решили затормозить уже имеющуюся систему? "Хотим большего быстродействия, но сдерживает старое железо, поэтому понизим быстродействие"... Странно как-то, не находите?..... :wacko:

 

Система не требует работы в режиме жесткого реального времени, если бы было по другому,

то конечно о линуксе речи не было..

Причина в том что для линукса уже есть необходимый нам готовый код, который не нужно портировать во FreeRTOS

 

Share this post


Link to post
Share on other sites
Причина в том что для линукса уже есть необходимый нам готовый код, который не нужно портировать во FreeRTOS

Неужто портировать какой-то (найденный в инете?) кусок кода и добавить его в проект сложнее чем переписать вообще весь проект с нуля??

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.