Quality RTOS & Embedded Software

 Real time embedded FreeRTOS RSS feed 
Quick Start Supported MCUs PDF Books Trace Tools Ecosystem TCP & FAT




Loading

FreeRTOS Features - help please

Posted by Robert on August 11, 2011
Hello estimated colleagues. I am considering the use of FreeRTOS for an upcoming project (switching from ThreadX) and I have a few questions regarding its features that I need answered before I proceed. Can any of you check the following list and tell me whether these features are available? Your help is greatly appreciated!

Feature:
-Fixed size memory management
-Signal a task without requiring a semaphore
-Send messages to a task without needing a message queue
-Is it ROMable?
-ASCII names for each kernel object?
-Task registers
-Built-in performance measurement
-User definable hook functions
-Time stamps on posts
-Built-in Kernel Awareness support
-optimizable scheduler
-tick handling at task level
-Number of services?

Thank you very much.

RE: FreeRTOS Features - help please

Posted by Dave on August 12, 2011
> Hello estimated colleagues. I am considering the use of FreeRTOS for an upcoming
> project (switching from ThreadX)

Why do you want to switch from ThreadX?

> and I have a few questions regarding its features
> that I need answered before I proceed. Can any of you check the following list
> and tell me whether these features are available? Your help is greatly
> appreciated!

The information you want is all on the web site. Start here
http://www.freertos.org/FreeRTOS_Features.html Normally, if a feature is not explicitly provided, you can use other features to achieve the same effect.


> Feature:
> -Fixed size memory management

Apparently there used to be, but people found it too complicated. See
http://www.freertos.org/a00111.html

> -Signal a task without requiring a semaphore
> -Send messages to a task without needing a message queue

If you mean a posix style signal, then no.

Remember in FreeRTOS code size is king. Queues are used as the base primitive for all task to task and task to interrupt coms, and queues have event management built in.

> -Is it ROMable?

Yes. What isn't?

> -ASCII names for each kernel object?

Tasks and timers by default. Queues and the various semaphore types can be added to a registry with an ascii name.

> -Task registers

?

> -Built-in performance measurement

http://www.freertos.org/rtos-run-time-stats.html
http://www.freertos.org/rtos-trace-macros.html

> -User definable hook functions

Task switch hooks (definable per task), idle hooks, tick hooks, malloc fail hooks, stack overflow hooks.

> -Time stamps on posts

You can post a structure that has a time stamp you add yourself.

> -Built-in Kernel Awareness support

The kernel is aware of itself, yes.

> -optimizable scheduler

There are features that allow memory use to be inspected and so optimised. The kernel is configurable too, and you have all the source code.

> -tick handling at task level

?

> -Number of services?

?

RE: FreeRTOS Features - help please

Posted by Robert on August 12, 2011
Hello davedoors, thanks for your great reply! I want to switch to FreeRTOS because I've worked with ThreadX before and found it kind of hard to work with. I have a new group of engineers for this project so we would be starting from scratch in terms of RTOS-knowledge and figured it would be better to find one that was easier to use. A friend of mine recommended FreeRTOS and figured I'd give it a shot. I am also considering other options such as uC/OS-III. What I liked about freeRTOS is that I have a small amount of kernel files to deal with, and that makes it simpler for me. Furthermore, because of budget reasons, this is an excellent option to explore. Finally, I am an aficionado of open source, so this option seems to suit well.

Speaking of budget, do you (or anyone else) have an idea of how much would i have to pay if I want them to write me a port? The board I plan to work with is a Renesas board for which there is no port available, the RX610. How about prices for private training sessions or support by phone? Even though this case seems unlikely since forum-support seems very solid, perhaps there would be a case were I would need urgent support or training, and I need to plan for everything.

Going back to the features, I like the Task trace functions. Also when I asked about the number of services I meant the number of kernel services provided, such as task management, task scheduling, etc. I've seen a few that have from 50 to 100 services. I was just curious.

Thanks!

RE: FreeRTOS Features - help please

Posted by Richard on August 12, 2011
“Speaking of budget, do you (or anyone else) have an idea of how much would i have to pay if I want them to write me a port? The board I plan to work with is a Renesas board for which there is no port available, the RX610.”


If you write to me directly, I can send you a support and information pack, you can find the email address here http://www.freertos.org/RTOS-contact-and-support.html. However, currently price is not really the limiting factor, scheduling is. The development road map, both for kernel enhancements and new ports is extremely busy, and unfortunately the RX610 is not currently on the list. I could add it to the list, but could not guarantee when the work could start. I do have a commercial partner company who can also quote for work, but there rates are (understandably) somewhere more commercial than mine. If you are the same person that inquired through the ticketing system then you will have their details already.

“How about prices for private training sessions or support by phone?”


If you send an email to training [ at ] freertos.org, with details of the type of training you would be interested in, then I can forward it to our official training partner who can then enter into a dialogue with you (he is currently on vacation for a few weeks though). You can see more information here: http://www.freertos.org/training. There are a few people around the world doing training with FreeRTOS, but I can't recommend anybody in particular without first being familiar with their training material myself.

FreeRTOS is what I would call a mini, preemptive, real time scheduler. It is designed to be small and portable. That means it does not necessarily provide all the features of larger systems. I'm not too familiar with ThreadX myself (although I understand it is a good system) so can't really give a direct comparison.

One thing you might consider is trying the FreeRTOS Windows simulator. http://www.freertos.org/FreeRTOS-Windows-Simulator-Emulator-for-Visual-Studio-and-Eclipse-MingW.html It is quite comprehensive as it is used as a test and development bench too, so not so good for newbies, but for somebody such as yourself with previous kernel experience it is a convenient way of kicking the tires (if you know that expression). Don't expect real time out of it though - Windows idea of fine grain or accurate timing is very different to a microcontrollers idea. If you set it to 'simulate' a 1KHz tick is think you will get about 1/30th of the intended speed. Setting it to a slower tick allows a more accurate representation, at the cost of less fine grained timing.

Regards.

RE: FreeRTOS Features - help please

Posted by Robert on August 12, 2011
That is some really good info Mr. Barry, thanks!

If anyone has experience with FreeRTOS and either ThreadX or uCOS-III, and can provide a comparison that would help too. Thanks a lot!


[ Back to the top ]    [ About FreeRTOS ]    [ Sitemap ]    [ ]




Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.

Latest News

FreeRTOS kernel V10 is available for immediate download. Now MIT licensed.


FreeRTOS Partners

ARM Connected RTOS partner for all ARM microcontroller cores

IAR Partner

Microchip Premier RTOS Partner

RTOS partner of NXP for all NXP ARM microcontrollers

STMicro RTOS partner supporting ARM7, ARM Cortex-M3, ARM Cortex-M4 and ARM Cortex-M0

Texas Instruments MCU Developer Network RTOS partner for ARM and MSP430 microcontrollers

OpenRTOS and SafeRTOS