реклама на сайте
подробности

 
 
> Непонятные тормоза в lwIP, на SAM7X256
KolyanV
сообщение May 27 2008, 21:51
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 91
Регистрация: 1-06-05
Пользователь №: 5 621



Изучаю lwIP, эксперементирую. Взял демо-приложение FreeRTOS 4.4 + lwIP 1.1 для AT91SAM7X256 под IAR. Запустил, работает. Добавил к приложению еще одну задачу (тред), в котором выполняется тривиальная операция - при входящем TCP соединении на 3333 порт - принять соединение, выдать поток даных (около 50 кБ), закрыть соединение.
Код следующий:
Код
           /* Create a new tcp connection handle */
    pxListener = netconn_new( NETCONN_TCP );
    netconn_bind(pxListener, NULL, 3333);
    netconn_listen( pxListener );

    /* Loop forever */
    for(;; )
    {
        /* Wait for connection. */
        pxNewConnection = netconn_accept(pxListener);

        if(pxNewConnection != NULL)
        {

        /* Service connection. */
        for (int i=0;i<100;i++)
          { if (netconn_write(pxNewConnection, DataBuf,512,0)==ERR_OK)
              continue;
             else
              while (netconn_write(pxNewConnection, DataBuf,sizeof(DataBuf),NETCONN_COPY)!=ERR_OK)
                 vTaskDelay(1);
          }
        netconn_close(pxNewConnection);
        while( netconn_delete( pxNewConnection ) != ERR_OK )
            {
                vTaskDelay( 3 );
            }
        }
    }


Код работает, но скорость отдачи данных - низкая - около 3 кБайт/сек. В качестве приемника данных выступает компюьютер.
FreeRTOS работает в режиме вытесняющей многозадачности, частота переключения - 1000 Гц.
Наибольший приоритет - у задачи обработки данных по прерыванию (обрабатывает сигнал из ISR), следующий за ним по убыванию - у ядра lwIP. У вышеприведенной задачи приоритет на единицу ниже, чем у ядра lwIP. Анализ переключения задач показал, что более 95% времени процессор находится в IDLE.
Что это может быть, почему низкая скорсть ? Может кто-то уже сталкивался с подобным ?
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th June 2025 - 21:58
Рейтинг@Mail.ru


Страница сгенерированна за 0.01344 секунд с 7
ELECTRONIX ©2004-2016