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

 
 
> Свой планировщик для IAR под AVR.
Beginning
сообщение Jul 14 2010, 14:59
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 511
Регистрация: 24-08-07
Из: БРЕСТ
Пользователь №: 30 053



Стоит цель написать свой кооперативный планировщик под компилятор IAR под архитектуру AVR.
Почему свой, это отдельная тема, да и не стоит её здесь обсуждать.
Вобщем ищу любую информацию где и как сохраняет компилятор IAR переменные и адреса возвратов. Интересует любая информация по поводу написания планировщиков.
Спасибо.


--------------------
Если хочешь вбить гвоздь, не ищи обходных путей, просто бери молоток и бей по этому чёртовому гвоздю!
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
MrYuran
сообщение Jul 16 2010, 06:40
Сообщение #2


Беспросветный оптимист
******

Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646



_Pasha в таких случаях пеарит свой любимый protothread
Цитата
Protothreads are extremely lightweight stackless threads designed for severely memory constrained systems, such as small embedded systems or wireless sensor network nodes. Protothreads provide linear code execution for event-driven systems implemented in C. Protothreads can be used with or without an underlying operating system to provide blocking event-handlers. Protothreads provide sequential flow of control without complex state machines or full multi-threading.

Вроде бы и не операционка, но нагляднее стэйт-машин


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post
Микрюков Вячесла...
сообщение Aug 28 2010, 07:24
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 16
Регистрация: 21-08-10
Из: Набережные Челны
Пользователь №: 59 037



По моему все операционки делятся на две категории:
1: Те в которых задачи сами завершают свою работу в текущем цикле, заботясь при этом о своих параметрах.
2: Те которые прерываются операционной системой с соответствующим сохранением всех параметров задач. При запуске задачам передаются ранее сохраненные параметры.
Мне лично нравится первый тип, на AVR сам написал операционку. Очень удобно новые задачи подключать, главное чтобы задача не превысила отведённое ей время в текущем 1ms цикле. А глобальные, короткие ссылки, переменные это всё пофигу, где написал там и компилирует. Как до задачи дойдёт очередь она сама определяет активная она или нет, если нет - в конец себя goto.
Переход гораздо быстрей работает, чем сохранение параметров.



Сообщение отредактировал Микрюков Вячеслав - Aug 28 2010, 07:27
Go to the top of the page
 
+Quote Post
KRS
сообщение Aug 28 2010, 15:18
Сообщение #4


Профессионал
*****

Группа: Модераторы
Сообщений: 1 951
Регистрация: 27-08-04
Из: Санкт-Петербург
Пользователь №: 555



Цитата(Микрюков Вячеслав @ Aug 28 2010, 11:24) *
По моему все операционки делятся на две категории:

Не операционки, а планировщики (многозадачность), называются
1. Кооперативная
2. Вытесняющаая

У вас больше похоже на отсутствие планировщика вообще, просто главный цикл из которого по очереди функции вызываются.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Aug 28 2010, 19:21
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



QUOTE (KRS @ Aug 28 2010, 18:18) *
У вас больше похоже на отсутствие планировщика вообще

Сие имеет красивое название Super-Loop, но системой дейсвительно не является.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Beginning   Свой планировщик для IAR под AVR.   Jul 14 2010, 14:59
- - SSerge   И в чём проблема? У IAR вполне понятная и подробна...   Jul 14 2010, 15:11
- - oll   вроде неплохая на маленьком пике хорошо живет, ест...   Jul 14 2010, 15:23
- - Beginning   Долго мучал OSA, пытался викинуть всё лишнее для м...   Jul 14 2010, 15:30
- - sergeeff   Решил написать - пиши! К чему тогда всякие рас...   Jul 14 2010, 15:35
- - oll   можно еще почитать: http://habrahabr.ru/blogs/cont...   Jul 14 2010, 16:29
- - KRS   setjmp/longjmp - исходники для них есть тоже.   Jul 15 2010, 09:56
- - Beginning   Цитата(sergeeff)Решил написать - пиши! К чему ...   Jul 15 2010, 15:55
- - shreck   Когда-то давным-давно начинал делать кооперативную...   Jul 16 2010, 02:45
- - Fktrctq   Цитата(Beginning @ Jul 14 2010, 19:30) Но...   Jul 16 2010, 04:46
- - Beginning   To shreck: спасибо посмотрю. To Fktrctq: scmRTOS к...   Jul 16 2010, 06:29
- - Микрюков Вячеслав   Цитата(KRS @ Aug 28 2010, 19:18) Не опера...   Sep 2 2010, 04:18


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

 


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


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