Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Вышла FreeRTOS V4.0.5 ... 8.2.3
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Операционные системы > FreeRTOS
Страницы: 1, 2, 3, 4
klen
будем глядеть!
AHTOXA
Ждём отчётаsmile.gif
HARMHARM
Вообще-то есть спецветка про FreeRTOS, и даже тема специально для этого...
zltigo
FreeRTOS V6 is backward compatible with FreeRTOS V5.x.

Main changes:

+ FreeRTOS V6 is the first version to include memory protection unit (MPU)
support. Two ports now exist for the Cortex M3, the standard FreeRTOS
which does not include MPU support, and FreeRTOS-MPU which does.
+ xTaskCreateRestricted() and vTaskAllocateMPURegions() API functions added
in support of FreeRTOS-MPU.
+ Wording for the GPL exception has been (hopefully) clarified. Also the
license.txt file included in the download has been fixed (the previous
version contained some corruption).

Other changes:

+ New API function xPortGetFreeHeapSize() added to heap_1.c and heap_2.c.
+ ARM7 GCC demo interrupt service routines wrappers have been modified to
call the C portion using an __asm statement. This prevents the function
call being inlined at higher optimisation levels.
+ ARM7 ports now automatically set the THUMB bit if necessary when
setting up the initial stack of a task - removing the need for
THUMB_INTERWORK to be defined. This also allows THUMB mode and ARM mode
tasks to be mixed more easily.
+ All ARM7/9 ports now have portBYTE_ALIGNMENT set to 8 by default.
+ Various demo application project files have been updated to be up to date
with the latest IDE versions.
+ The linker scripts used with command line GCC demos have been updated to
include an eh_frame section to allow their use with the latest Yagarto
release. Likewise the demo makefiles have been updated to include
command line options to reduce or eliminate the eh_frame section all
together.
+ The definition of portBYTE_ALIGNMENT_MASK has been moved out of the
various memory allocation files and into the common portable.h header
file.
+ Removed unnecessary use of portLONG, portSHORT and portCHAR.
+ Added LM3Sxxxx demo for Rowley CrossWorks.
+ Posix simulator has been upgraded - see the corresponding WEB page on the
FreeRTOS.org site.
zltigo
Changes between V6.0.0 and V6.0.1 released November 15th 2009

+ Altered pxPortInitialiseStack() for all Cortex-M3 ports to ensure the
stack pointer is where the compiler expects it to be when a task first
starts executing.

The following minor changes only effect the Cortex-M3 MPU port:

+ portRESET_PRIVILEGE() assembly macro updated to include a clobber list.
+ Added prototypes for all the privileged function wrappers to ensure no
compile time warnings are generated no matter what the warning level
setting.
+ Corrected the name of portSVC_prvRaisePrivilege to
portSVC_RAISE_PRIVILEGE.
+ Added conditional compilation into xTaskGenericCreate() to prevent some
compilers issuing warnings when portPRIVILEGE_BIT is defined as zero.
zltigo
Changes between V6.0.1 and V6.0.2 released January 9th 2010

+ Changed all GCC ARM 7 ports to use 0 as the SWI instruction parameter.
Previously the parameter was blank and therefore only an implicit 0 but
newer GCC releases do not permit this.
+ Updated IAR SAM7S and SAM7X ports to work with IAR V5.40.
+ Changed the stack alignment requirement for PIC32 from 4 bytes to 8 bytes.
+ Updated prvListTaskWithinSingleList() is it works on processors where the
stack grows up from low memory.
+ Corrected some comments.
+ Updated the startup file for the RVDS LPC21xx demo.
zltigo
Очередная мелочевка:
Changes between V6.0.2 and V6.0.3 released February 26 2010

+ SuperH SH7216 (SH2A-FPU) port and demo application added.
+ Slight modification made to the default implementation of
pvPortMallocAligned() and vPortFreeAligned() macros so by default they
just call pvPortMalloc() and vPortFree(). The macros are only needed to
be defined when a memory protection unit (MPU) is being used - and then
only depending on other configuration settings.
zltigo
Changes between V6.0.3 and V6.0.4 released March 14 2010

+ All the contributed files that were located in the Demo/Unsupported_Demos
directory have been removed. These files are instead now available in the
new Community Contributions section of the FreeRTOS website. See
http://www.freertos.org/RTOS-contributed-ports.html
+ The project file located in the Demo/CORTEX_STM32F107_GCC_Rowley directory
has been upgraded to use V2.x of the Rowley Crossworks STM32 support
package.
+ An initial Energy Micro EFM32 demo has been included. This will be
updated over the coming months to make better use of the low power modes
the EFM32 provides.
Yra
... насчет книжечки: покопайтесь на фтп smile.gif
OLEG_BOS
Цитата(Yra @ Aug 9 2010, 01:18) *
... насчет книжечки: покопайтесь на фтп smile.gif

Спасибо за информацию smile.gif Давно искал "Using the FreeRTOS.... A Practical Guide"
zltigo
QUOTE (Yra @ Aug 9 2010, 01:18) *
... насчет книжечки: покопайтесь на фтп smile.gif

Собственно книгу перенес в pub. Пустые-рекламные оглавления - удалил.

Changes between V6.0.4 and V6.0.5 released May 17 2010

+ Added port and demo application for the Cortus APS3 processor.
klen
Цитата(zltigo @ Aug 9 2010, 10:43) *
Собственно книгу перенес в pub. Пустые-рекламные оглавления - удалил.

а это вообще где? все обшарил - нигде ненашол, хорошо спрятано.
zltigo
QUOTE (klen @ Aug 13 2010, 16:09) *
а это вообще где? все обшарил - нигде ненашол, хорошо спрятано.

Странно sad.gif. В pub есть раздел операционных систем (по моему логично, что книга по операционной системе находится в нем). В os уже названия операционных систем - в данном случае FreeRTOS (логично, что раздел, так и называется). Все - книга в нем (там сейчас во FreeRTOS ровно 3 файла - запутаться тоже трудно).
klen
Цитата(zltigo @ Aug 13 2010, 20:00) *
Странно sad.gif. В pub есть раздел операционных систем (по моему логично, что книга по операционной системе находится в нем). В os уже названия операционных систем - в данном случае FreeRTOS (логично, что раздел, так и называется). Все - книга в нем (там сейчас во FreeRTOS ровно 3 файла - запутаться тоже трудно).

боюсь показатся тупым, но я pub ненашел wink.gif
поиск и карта сайта тоже на этот вопрос что такое pub и где он находится не дает....
наверно ложно мое априоное предположение что это какойто url на сервере http://electronix.ru

это вопрос к разному стройству мозга у всех людей. если один специально положил на очевидное место чтоб другому не искать, другой может вообще неонаружить положенный для него предмет sad.gif
,
zltigo
QUOTE (klen @ Aug 15 2010, 08:15) *
но я pub ненашел wink.gif.... это какойто url на сервере http://electronix.ru

Издеваетесь? Это FTP сервер. С самого начала так и было написано "насчет книжечки: покопайтесь на фтп"
klen
Цитата(zltigo @ Aug 15 2010, 10:33) *
Издеваетесь? Это FTP сервер. С самого начала так и было написано "насчет книжечки: покопайтесь на фтп"

неа, не издеваюсь, честно.

ftp://electronix.ru

логин и пароль с форума

530 ATTENTION!!! ALL CONNECTIONS LOGED
zltigo
QUOTE (klen @ Aug 15 2010, 08:38) *
неа, не издеваюсь, честно.

http://electronix.ru/forum/index.php?act=SF&s=&f=37
one_man_show
Сдается мне, что klen не знаком с ФТП, хотя Свой и постов полно. Это уже бывало в нашей практике с китайцами...
ViKo
Думаю, прочитав это
http://electronix.ru/forum/index.php?showt...st&p=739040
у вас все получится
klen
Цитата(ViKo @ Aug 15 2010, 18:57) *
Думаю, прочитав это
http://electronix.ru/forum/index.php?showt...st&p=739040
у вас все получится

все получилось - оказалось что нада догадатся (а сам бы я не догадался никогда в жизни)прочитать все посты и отрыть ответ - нада зарегестрировать свой пароль! я исходил из априорно неверного предположения что база данных одна для ресурма и логин с паролем однозначно идентифицирует персонаж - оказалось не так.
спасибо, забрал доку по freertos.
zhz
Changes between V6.0.5 and V6.1.0 released October 6 2010

+ Added xTaskGetTickCountFromISR() function.
+ Modified vTaskSuspend() to allow tasks that have just been created to be
immediately suspended even when the kernel has not been started. This
allows them to effectively start in the Suspended state - a feature that
has been asked for on numerous occasions to assist with initialisation
procedures.
+ Added ports for the Renesas RX62N using IAR, GCC and Renesas tool suites.
+ Added a STM32F103 demo application that uses the Rowley tools.
+ Under specific conditions xFreeBytesRemaining within heap_2.c could end up
with an incorrect value. This has been fixed.
+ xTaskCreateGeneric() has a parameter that can be used to pass the handle
of the task just created out to the calling task. The assignment to this
parameter has been moved to ensure it is assigned prior to the newly
created having any possibility of executing. This takes into account the
case where the assignment is made to a global variable that is accessed by
the newly created task.
+ Fixed some build time compiler warnings in various FreeTCPIP (based on
uIP) files.
+ Fixed some build time compiler warnings in Demo/Common/Minimal/IntQueue.c.
GetSmart
А почему до сих пор portSAVE_CONTEXT не исправили?
Я понимаю, что он 100% работает, если не юзать нестандартные режимы проца ARM7/9 в прерываниях. Но после небольшого исправления были бы довольны и те, кто "знает толк в извращениях" biggrin.gif
Тем более, что в исправленной версии нет ни одного недостатка. Может "туда" письмо написать?
MALLOY2
А можно подробнее ? А то я как то упустил это из вида. И о каких извращениях идет речь ?
GetSmart
Для тех, кто не совсем понял, стало бы можно под фриртосом юзать вложенные IRQ на стеке SVC, таким образом не отнимая стек у каждого треда.
zltigo
...announce the release of FreeRTOS V6.1.1, which has the
modifications and updates listed below. FreeRTOS V6.1.1 is backward
compatible with V6.1.0.

+ Added two new Windows simulator ports. One uses the free Microsoft
Visual Studio 2010 express edition, and the other the free
MingW/Eclipse environment. Demo projects are provided for both.
+ Added three demo projects for the PSoC 5 (CYAC5588). These are for
the GCC, Keil, and RVDS build tools, and all use the PSoC Creator
IDE.
+ Added a demo for the low power STM32L152 microcontroller using the
IAR Embedded Workbench.
+ Added a new port for the MSP430X core using the IAR Embedded
Workbench.
+ Updated all the RX62N demo projects that target the Renesas
Demonstration Kit (RDK) to take into account the revered LED wiring
on later hardware revisions, and the new J-Link debug interface DLL.
+ Updated all the RX62N demo projects so the IO page served by the
example embedded web server works with all web browsers.
+ Updated the Red Suite projects to work with the up coming Red Suite
release, and to use a more recent version of the CMSIS libraries.
+ Added the traceTAKE_MUTEX_RECURSIVE_FAILED() trace macro.
+ Removed the (pointless) parameter from the
traceTASK_CREATE_FAILED() trace macro.
+ Introduced the portALT_GET_RUN_TIME_COUNTER_VALUE() macro to
compliment the already existing portGET_RUN_TIME_COUNTER_VALUE().
This allows for more flexibility in how the time base for the run
time statistics feature can be implemented.
+ Added a "cpsie i" instruction before the "svc 0" instruction used to
start the scheduler in each of the Cortex M3 ports. This is to
ensure that interrupts are globally enabled prior to the "svc 0"
instruction being executed in cases where interrupts are left
disabled by the C start up code.
+ Slight optimisation in the run time stats calculation.
MALLOY2
Вышла версия 7.0.0 основная фича это софтвеерные таймера.

Цитата
FreeRTOS V7.0.0 is backward compatible with FreeRTOS V6.x.x

Main changes:

+ Introduced a new software timer implementation.
+ Introduced a new common demo application file to exercise the new timer
implementation.
+ Updated the Win32/MSVC simulator project to include the new software timer
demo tasks and software timer tick hook test. Much simpler software timer
demonstrations are included in the demo projects for both of the new ports
(MSP430X with CCS4 and STM32 with TrueStudio).
+ Various enhancements to the kernel implementation in tasks.c. These are
transparent to users and do not effect the pre-existing API.
+ Added calls to configASSERT() within the kernel code. configASSERT() is
functionally equivalent to the standard C assert() macro, but does not
rely on the compiler providing assert.h.
kan35
Цитата(MALLOY2 @ Apr 13 2011, 14:27) *
Вышла версия 7.0.0 основная фича это софтвеерные таймера.

Уже попробовал на STM32F103. C небольшими танцами все работает и компилится как в С так и в С++. Лучше, чем 6ая интегрируется с библиотекой драйверов от ST 3 версии.
Пробовал ставить примеры таймеров как в reference manual, но опять всухую не заработали, так как некоторые "typedef" которые требуются для callback функции таймера почему то определены в timers.c (а не в timers.h). Как только перенес их куда следует - стало компилиться. Есть ощущение крайней сырости новой версии.
IgorKossak
Вышла 7.0.1 с минорными изменениями
Changes between V7.0.0 and V7.0.1 released May 13 2011

+ Added a Fujitsu FM3 demo application for both the IAR and Keil tool
chains.
+ Added a SmartFusion demo application for all of the IAR, Keil and
SoftConsole (GCC/Eclipse) tool chains.
+ Updated the RX600 port and demo applications to take into account the
different semantics required when using the latest (V1.0.2.0) version of
the Renesas compiler.
+ Modified the RX600 Ethernet driver slightly to make it more robust under
heavy load, and updated the uIP handling task to make use of the FreeRTOS
software timers.
+ Slightly changed the PIC32 port layer to move an ehb instruction in line
with the recommendations of the MIPS core manual, and ensure 8 byte stack
alignment is truly always obtained.
+ Changed the behaviour when tasks are suspended before the scheduler has
been started. Before, there needed to be at least one task that was not
in the suspended state. This is no longer the case.
IgorKossak
Пост с некоторым опозданием, но всё же.
Вышла 7.0.2.
Изменения.
klen
Пост с некоторым опозданием, но всё же.
Вышла 7.1.0

основная фенечка - добавлена поддержка для cortex-m4f, правда для портов iar и вроде еще чегото. для нас - тех кто пользуется gcc портом Барри сказал добавит пожже, но нас это естественно не остановит! всеого отличий от m3 - нада в переключателе контекстов добавить анализ бита того что используется расширенный стек (+ FPU регистры) использовался задачкой и сохранить/загрузить фпушные регистры. спасибо арму что позаботились аппаратно о том чтоб можно было узнать - нужно их обрабатывать или нет. таким образом если у вас нет вычислений на фпу - то время переключения совсем чуточку увеличится - на анализ этого бита.

здесть все написано http://sourceforge.net/projects/freertos/f...5/topic/4761747
LEXIS
Для тех кто использует FreeRTOS нашел неплохое описание API функций по русски на сайте _http://emproj.com/FreeRTOS_ может кому пригодится.
desh
Вот такая рассылка пришла на днях

FreeRTOS+ announcement, great news for FreeRTOS users

Dear List,

With this email I am pleased to announce a major expansion program that brings together a collection of FreeRTOS add-on components and third party FreeRTOS ecosystem products. A new web portal dedicated to these tools can be viewed at http://www.FreeRTOS.org/FreeRTOS-Plus .
The press release contains more details and can be viewed at:
http://www.FreeRTOS.org/press/Announcing-FreeRTOS-Plus.pdf

The release of the portal URL has been timed to coincide with the Embedded World trade show. The portal itself will continue to evolve far into the future, and there are already plans to add more documentation, more examples, training material, and new products.

I hope you will be as enthusiastic as I am when you see the selection of free and very low cost components on offer. These components will increase developer productivity, make FreeRTOS an even more compelling solution, enable FreeRTOS to maintain its position as the leading real time kernel for microcontrollers, and in turn result in more third party offerings to the community.

FreeRTOS itself continues on its usual development path with the latest official Cortex-M0 port becoming supported architecture number 31! The main http://www.FreeRTOS.org website is itself long overdue an overhaul, and this will happen over the coming months.

That is all for now. I will be at Embedded World all next week; maybe I will see some of you there.

Regards,
Richard.
Cosmojam
Там ещё примеры для LPC1768 и LPCXpresso + BaseBoard. Будучи обладателем этого комплекта попробовал - работает! "Взрослый" ввод-вывод, CLI, LwIP искаропки - круто. Только с коммерческим использованием как-то непонятно пока. Пишут мол можно купить (очень) дёшево на шоп.фриртос.орг, но там нет пока ничего такого.
Volldemar
Вышла 7.1.1
Изменеия
Volldemar
Вышла FreeRTOS V7.2.0!!!
Изменения
desh
Вышла версия 7.4.0.
Добавлена возможность получения данных из нескольких очередей.
История изменений.
klen
Цитата(desh @ Feb 21 2013, 18:53) *
Добавлена возможность получения данных из нескольких очередей.

зачетная фича, ничего не скажеш. несмотря на то что раньше можно было бы решить тоже обобщенным пакетом данных который на все события годился и использовать одну очередь для разных типолв событий это приводило к замеделению реакции на события которые данные вообще не передают например семафоры. вобщем вещ концептуально грамотная на мой взгляд.
RCray
Цитата(klen @ Feb 23 2013, 14:49) *
зачетная фича, ничего не скажеш. несмотря на то что раньше можно было бы решить тоже обобщенным пакетом данных который на все события годился и использовать одну очередь для разных типолв событий это приводило к замеделению реакции на события которые данные вообще не передают например семафоры. вобщем вещ концептуально грамотная на мой взгляд.


Идея динамического добавления и убирания событий из некоторого списка без смены кода не нова.
Того и гляди подцепят регистрацию callback'ов для каждого события и будет как у людей.
SyncLair
Цитата(RCray @ Mar 5 2013, 12:05) *
Того и гляди подцепят регистрацию callback'ов для каждого события и будет как у людей.

Простите но callback'и -- это не как у людей, ибо РТОС она как бы намекает, что калбеков быть не должно )
ибо вместо каллбека должна быть задача или протопоток на худой конец )

Вот если можно из протопотока очереди кушать (всмысле жадать данные или открытие семафора) -- вот это действительно круууто !)
desh
Вышла FreeRTOS 7.5.0

CODE
Changes between V7.4.2 and V7.5.0 released July 19 2013

V7.5.0 is a major upgrade that includes multiple scheduling and efficiency
improvements, and some new API functions.

Compatibility information for FreeRTOS users:
FreeRTOS V7.5.0 is backward compatible with FreeRTOS V7.4.0 with one
exception; the vTaskList() and vTaskGetRunTimeStats() functions are now
considered legacy, having been replaced by the single uxTaskGetSystemState()
function. configUSE_STATS_FORMATTING_FUNCTIONS must be set to 1 in
FreeRTOSConfig.h for vTaskList() and vTaskGetRunTimeStats() to be
available.

Compatibility information for FreeRTOS port writers:
vTaskIncrementTick() is now called xTaskIncrementTick() (because it now
returns a value).

Headline changes:

+ Multiple scheduling and efficiency improvements.
+ Core kernel files now pass PC-Lint V8 static checking without outputting
any warnings (information on the test conditions will follow).

New API functions:

+ uxTaskGetSystemState() http://www.freertos.org/uxTaskGetSystemState.html
+ xQueueOverwrite() http://www.freertos.org/xQueueOverwrite.html
+ xQueueOverwriteFromISR()
+ xQueuePeekFromISR()

The following ports and demos, which were previously available separately,
are now incorporated into the main FreeRTOS zip file download:

+ ARM Cortex-A9 IAR
+ ARM Cortex-A9 ARM compiler
+ Renesas RZ
+ Microsemi SmartFusion2

New FreeRTOSConfig.h settings
http://shop.freertos.org/FreeRTOS_API_and_...ence_s/1822.htm

+ configUSE_TIME_SLICING
+ configUSE_NEWLIB_REENTRANT
+ configUSE_STATS_FORMATTING_FUNCTIONS
+ configINCLUDE_APPLICATION_DEFINED_PRIVILEGED_FUNCTIONS

Other changes:

+ (MPU port only) The configINCLUDE_APPLICATION_DEFINED_PRIVILEGED_FUNCTIONS
options provides a mechanism that allows application writers to execute
certain functions in privileged mode even when a task is running in user
mode.
+ Ports that support interrupt nesting now include a configASSERT() that
will trigger if an interrupt safe FreeRTOS function is called from an
interrupt that has a priority designated as above the maximum system/API
call interrupt priority.
+ The included FreeRTOS+Trace recorder code has been updated to the latest
version, and the demo applications that use the trace recorder code have
been updated accordingly.
+ The FreeRTOS Windows Simulator (MSVC version only) has been updated to
include a new basic 'blinky' build option in addition to the original
comprehensive build option.
+ Improve RAM usage efficiency of heap_4.c and heap_2.c.
+ Prevent heap_4.c from attempting to free memory blocks that were not
allocated by heap_4.c, or have already been freed.
+ As FreeRTOS now comes with FreeRTOS+FAT SL (donated by HCC) the Chan FATfs
files have been removed from FreeRTOS/Demo/Common.
+ Fix build error when R4 port is build in co-operative mode.
+ Multiple port and demo application maintenance activities.
desh
Почти сразу же выпущена версия 7.5.2. Исправления коснулись энергосбережения для STM32
kolobok0
Цитата(desh @ Jul 24 2013, 15:06) *
Почти сразу же выпущена версия 7.5.2. Исправления коснулись энергосбережения для STM32


в 7.4 столкнулся с такой бякой - если запустить функционал timer и выдать ниткам старшим по приоритетам(чем крутящаяся нитка таймера) ожидание по времени, то он полностью забирает время работы на себя не просматривая очереди ждущих задач. сильно за усы не дёргал ситуацию, так что есть вероятность, что не совсем корректно заюзал ось - хз.
x893
Но так и не нашел возможности статической инициализации тасков.
InsolentS
Вышла FreeRTOS v8 (пока в стадии Release Candidate #2). http://www.freertos.org/upgrading-to-FreeRTOS-V8.html
Что нового:
1. Наконец-то добавили полноценные Event'ы http://www.freertos.org/FreeRTOS-Event-Groups.html
2. Возможность отложенного выполнения задач http://www.freertos.org/xTimerPendFunctionCallFromISR.html
3. Изменили нейминг, используя стандартные типы <stdint.h>. Теперь TaskHandle_t вместо xTaskHandle (совместимость с предыдущими версиями обещают сохранить)
juvf
Цитата(InsolentS @ Jan 9 2014, 07:33) *
1. Наконец-то добавили полноценные Event'ы http://www.freertos.org/FreeRTOS-Event-Groups.html
Действительно..... НАКОНЕЦ-ТО добавили Event'ы, а то костылями приходилось обходится.

Так по сути теперь вообще не нужны бинарные семафоры.
Xenia
Вышла FreeRTOS 8.2.0 !!!
(релиз, 16 января 2015)

http://sourceforge.net/projects/.../FreeRTOSV8.2.0.zip
Xenia
Вышла FreeRTOS 8.2.1
(релиз, март 2015)

http://sourceforge.net/projects/.../FreeRTOSV8.2.1.zip
SMaster
Кто-нибудь может объяснить нафига в 8.2.1 добавили thread local storage? Как они поясняют, так некоторые библиотечные фунции используют глобальную переменную err для оработки ошибок, но как это заюзать на практике - примеров нет... sad.gif Хочется понять что за штука такая, может полезно будет.

Direct task notifications, например, из релиза 8.2.0 я использую уже плотно, мне эта штука понравилась. Экономия памяти и времени.
desh
Насколько я понимаю, поддержка thread local storage должна осуществляться и со стороны стандартной библиотеки. Поддержка tls есть в DLib для IAR и в newlib. Про другие не скажу. Для поддержки tls библиотека должна быть скомпилирована с нужными опциями. После этого все глобальные переменные библиотеки могут быть (должны?) использованы как локальные в контексте каждого потока оси. Т.е. для каждого потока существует своя копия "глобальных" переменных библиотеки. FreeRTOS для этого использует стек задачи.

На практике tls меня интересовал только для функция strtok, которая между вызовами хранит указатель. В итоге проще оказалось использовать strtok только в одной задаче.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.