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

 
 
> RTX и динамическое содание/уничтожение задач.
Михась
сообщение Apr 2 2013, 06:26
Сообщение #1


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

Группа: Участник
Сообщений: 161
Регистрация: 29-09-10
Пользователь №: 59 816



RTX и ARM.
Можно ли решить проблему недостатка ОЗУ методом динамического создания/удаления задач, т.е. у меня есть свободный килобайт под стек задачи, а мне необходимо последовательно несколько раз выполнить разные вычисления, в которых используются локальные временные переменные? Я создаю задачу, выполняя расчеты -в результате имею небольшое количество глобальных переменных, создаю новую задачу с другими расчетами, считаю и убиваю задачу. Так возможно делать?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Vasya777
сообщение Apr 6 2013, 18:21
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 29
Регистрация: 22-01-12
Пользователь №: 69 790



Цитата(Михась @ Apr 2 2013, 12:26) *
RTX и ARM.
Можно ли решить проблему недостатка ОЗУ методом динамического создания/удаления задач, т.е. у меня есть свободный килобайт под стек задачи, а мне необходимо последовательно несколько раз выполнить разные вычисления, в которых используются локальные временные переменные? Я создаю задачу, выполняя расчеты -в результате имею небольшое количество глобальных переменных, создаю новую задачу с другими расчетами, считаю и убиваю задачу. Так возможно делать?


Можно, если предусмотрена такая функциональность

Цитата
os_sys_init Initializes and starts RL-RTX.
os_sys_init_prio Initializes and starts RL-RTX assigning a priority to the starting task.
os_sys_init_user Initializes and starts RL-RTX assigning a priority and custom stack to the starting task.
os_tsk_create Creates and starts a new task.
os_tsk_create_ex Creates, starts, and passes an argument pointer to a new task.
os_tsk_create_user Creates, starts, and assigns a custom stack to a new task.
os_tsk_create_user_ex Creates, starts, assigns a custom stack, and passes an argument pointer to a new task.
os_tsk_delete Stops and deletes a task.
os_tsk_delete_self Stops and deletes the currently running task.
os_tsk_pass Passes control to the next task of the same priority.
os_tsk_prio Changes a task's priority.
os_tsk_prio_self Changes the currently running task's priority.
os_tsk_self Obtains the task ID of the currently running task.
isr_tsk_get Obtains the task ID of the interrupted task.


Для RTX есть удобные инструменты отслеживания состояния задач, воспользуйтесь ими и проверьте сами, как это будет работать.
Go to the top of the page
 
+Quote Post



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

 


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


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