HOME  |  NEWS  |  BLOGS  |  MESSAGES  |  FEATURES  |  VIDEOS  |  WEBINARS  |  INDUSTRIES  |  FOCUS ON FUNDAMENTALS
  |  REGISTER  |  LOGIN  |  HELP
Comments
You must login to participate in this chat. Please login.

Not using and RTOS

Iron

Thanks to all. bye.

Iron

Have a great day everyone. Signing off now.

Iron

Thank you for great lecture. See you tomorrow.

Iron

Tocard, CPU - See you tomorrow . I need to continue my sleep

Iron

@cpu: Thanks. 
And really signing off this time -- gotta get back to it.  See you all tomorrow!

Iron

@samsul, the Freescale QUIKSTIK board has a built-in debugger that connects to your PC by USB cable. You don't have to buy a separate debugger. Cheap is good!

Iron

@samsul: if you use CodeWarrior, there's a free version, but you have to pay if you want to use C+ (or larger code sizes).  (Can't remember, but in the thousands of $$, I think.)  ICD is about $100 from P&E, but I don't like their stuff too much.
However, the Tower has everything built-in and CW will work for prototyping (as long as you're not going to use C )

Iron

@Tocard, your stuff sounds cool. Good talking to you.

Iron

Where you find 68x?

Iron

? Tocard, CPU - the development tools come together . The IDE, the ICD (programming ang debugging box) like pickit3 for Microchip. Are they expensive the tools

Iron

@samsul, cpu: I'm going to sign-off now, too.  Have a great rest of your day and good luck playing with the Freescale parts!

Iron

FYI, a quick count of the RTOSses and OSses mentioned up to 2:11 pm:

 

41    None
24    FreeRTOS   
11    Custom
 8    uc/OS
 8    Linux
 7    QNX
 5    MQX
 4    Keil
 3    WinCE
 2    VxWorks
 2    ThreadX
 2    RTX
 2    OpenRTOS
 2    CMX
 1    pSOS
 1    eCOS
 1    Xenomai
 1    WindRiver
 1    Synopsis
 1    QuantumLeaps
 1    NuttX
 1    Nucleus
 1    ChiBios

My friend is using ColdFire for some cool new projects. He likes the MC68000-based stuff. Hey, these "old" architectures are sound and solid and you can do so much with them.

Iron

Thanks. See you tomorrow.

Iron

How about atmel and TI MSP430 any goods?

Iron

element14, Mouser, Digi-Key. Several versionf of the boards, all about $50 or less. Some were as low as $18 I think. You will need a compiler. The offer a CodeWarrior version for free, but it has limitations with the MQX. See the comments by Charles Lord on his CEC presentation, or maybe on his web site, about which complier supprts the RTOS. http://www.blueridgetechnc.com

Iron

@samsul: For full production, we built our own boards.  But I had a Tower System first to prototype with.  Got a couple from different places.  They're inexpensive off of Freescale's website.  But my distributor (Future/Avnet/Arrow in the US) gave me one for free.  I also got one free from Freescale's FTF conference.

Iron

@samsul: Colin signed-off a few mintues ago.

Iron

? Tocard - You use the MCU and built the board or buy the ready made... from where to get the board if so

Iron

?Colin, did you fall asleep

Iron

@samsul: we were using a ColdFire MCF52235 with MQX and C+ .

Iron

?CPU - where do I get that K-series board... Element 14

Iron

Thanks Walls for today"s lecture

Freescale's Tower System is pretty nice for learning and prototyping, too.

Iron

Thanks colin, chuck, pdxesto and everyone involved

Iron

?Tocard , which specific freescale MCU you are using with RTOS

Iron

I second cpu on Freescale / Motorola.

 

Iron

Try the Freescale K-series ARM chips. Powerful and cheap. Good eval boards. The QuikStick board used in the MQX course a few weeks back looked like a nice little board to play with, and get learning about RTOSes.

Iron

CPU - yes you have the right to say that

Iron

@cpu: Amen to that!  I feel the same way.  (We use both Freescale and PIC here and I hate when I have to figure out something "new" on a PIC to do something simple on Freescale.)

Iron

Freescale often just seems "right" to me. I learned on their chips/Motorola. They offer many architectures, ARM and internally-developed. Operations on many Freescale chips just seem "right" where Microchip has some odd things.

Also Microchip uses a version of the Harvard architecture and there are so many painful things that must be done to access memory. In the Freescale chips I've used, program memory and data memory are easily handled within the code.

Iron

?CPU - I love to try freescale then... did you use the one from Netburner

Iron

Thanks for all the interactions here. I am going to sign off and get on with my evening. Hope to "see" everyone tomorrow.  TTFN

Blogger

@samsul, cpu: to follow-on, I used MQX with C+ and found "classifying" a lot of the API to be quite useful!

Iron

@samsul, cpu: I've used Freescale and MQX in the past and like them both a lot.  Freescale architecture (to me) is logical and robust.  I find the datasheets are excellent.  (Other people have differing opinions, of course).  But I also found Freescale field engineering support to be great; much like I expect Colin and Mentor are.

Iron

Learning makes you feel young again!

Iron

very active chat.  Thanks everyone

Iron

Listening to recording.

@naperlou: exactly!

Blogger

Thanks again everyone.

Ada was meant to be a real-time language from the start.  C+ not really.

Blogger

I agree with cpu. the MQX RTOS for Freescale class was excellent. I hope the next 2 days we'll have actual code that we can use and try out.

Iron

@luizcosta: C+ does not really include any RT capabilities in the language, unlike ADA, but does not necessarily get in the way of writing RT code [like Java might, for example]

Blogger

?CPU any good reason why you go for freescale

Iron

thanks Colin and see all tomorrow.

Iron

@COLIN: One last question is if C+ is a truly RT language as ADA has struggled to be for years.

Iron

Colin, Charles et al: Thanks for the fine presentation.

Iron

@ samsul I have not used the PIC32 yet. If a project required a chip of that capacity, I'd be very tempted to move over to Freescale.

Iron

@Yves: no problem.  This is definitely a case, IMO, where you get what you pay for.

Iron

@Tocard,  Good to know, regarding FreeRTOS. Thanks

Iron

State-machine.com has excellant information and tools for both RTOS and bare metal C and C+ for embedded systems. They have complete system downloads for many of the microcontroller development kits on the market and they are free to download.

@ALL: Thank you for your active participation in this learning experience.

Iron

@Sonali: different RTOSes handle interrupts in different way - I am sorry, but th equestion is not pertinent to C+

Blogger

?Thanks CPU. Have you ever use C+ for PIC32

Iron

I guess having C+ by creating the processing logics within a class AND keep instantiating the class to process data from various sources like UART, TCP will be cool. Write once, use many times

Iron

? Are interrupts handled with a macro/function or do we have to write ur own entry exit functions? This is mostly present in the RTOS I have used. Is this a common feature in other RTOS as well?

Iron

@samsul, about a month ago DesignNews offered a 5-day CEC course on the MQX RTOS for Freescale chips. That was a very good course. Check it out.

http://www.designnews.com/lecture.asp?doc_id=272400

Iron

@bitbanger55: nice idea! :-)

Blogger

I have no experience on RTOS

Iron

@Colin: You could spin the course on FreeRTOS showing how well your RTOS solves the issues that are encountered with it. 

Ha ha, thanks Colin. I love to learn RTOS. Now I did everything with C and cooperative multitasking and state machines

Iron

@pdxesto Thank you very much. I'll look into it

Iron

@samsul: as I work for a company that sells an RTOS, I would get into trouble if I did a class on FreeRTOS :-)

Blogger

@Colin: Thanks!  I agree it would be rare, but we have legacy C code now that has nested structures like this (without the cool Cpp con/de structors, of course.)

Iron

Sorry CPU.... I can't exactly remember the issues. It sounds like lack of stability or supports! For that, I still keep to using C

Iron

Thanks Colin and Charles. Very interesting lecture.

Iron

@Yves: we use FreeRTOS now and it's very basic compared to other OSes I've used at other jobs.  Many task-aware debuggers don't do a great job with it, either.  If you're looking for "cheap and lightweight", it's probably OK.  Just make sure you understand all the licensing agreements if using in a commercial product.

Iron

@Vic14: re. garbage collection:

http://en.wikipedia.org/wiki/Garbage_collection_(computer_science)

Iron

@samsul, what kind of C ++ issues did you read about with the Microchip MPLAB X compilers?

Iron

@Tocard: I think it is unlikely that you would nest such objects, but you could keep a (static) instance counter and only do the enable interrupts in a destructor when it is zero

Blogger

? Colin, how is about giving class on using FreeRtos with C+

Iron

@Colln: Thank you so much... 

Iron

?@Colin: @Ormund: C+ code is not necessarily any bigger than its equivalent fuinctionality in C - mostly, if memory is tight, the application is also small(-ish) and benefits less from using C instead of C

 

Your reply got corrupted and no meaning is implied, I'm afraid.

Iron

It looks like FreeRTOS is getting very popular,

if I consider many responses from this Live Chat.

Iron

@Mar: it is entirely valid to return a pointer to static data, yes - scope and existance are not the same thing

Blogger

Me neither, but I read about some issues on the C+ implementation of the Microchip

Iron

? In the paired-operation example, let's assume it's just globally disabling/enabling interrupts.  How would you handle nested objects so that interrupts weren't enabled until the very last destructor?

Iron

? Are interrupts handled with a macro/function or do we have to write ur own entry exit functions? This is mostly present in the RTOS I have used. Is this a common feature in other RTOS as well?

Iron

? Colin, You mean better still use C than C+

Iron

? Read your static article... good.  Thank you.

Question:

IF you declare a static array within a function, and the function is
declared to return a pointer, IS it valid to return a pointer to that
array?  Will the data be there?  I know it is local scope for the 
'variable name' but for the pointer to the memory location???

Iron

Microchip: the new mplab X IDE lets you use c+ .

I haven't tried it yet.

Iron

@Ormund: C+ code is not necessarily any bigger than its equivalent fuinctionality in C - mostly, if memory is tight, the application is also small(-ish) and benefits less from using C instead of C

Blogger

Nice question Ormund... I saw Arduino libraries are all in C+

Iron

@ElRoy: no, there is no easy way in C+ itself to see how much data is craeted by a class - however, what about sizeof() ?

Blogger

@FrankMcCarthy If you can choose an MCU that has protectable blocks of ROM, you can safely exec from one while reflashing the other. Standardize the locations in the memory map of those blocks (or chip maker may have defined that for you) and go from there.

Iron

? Is it really worth using C+ on a chip like the Atmega32? It seems to be that one would spend too much avoiding features of the language to keep the code small enough.

Iron

@Colins: Isn't "block allocation" a task that should be taken by the OS/monitor?

Iron

@jhelgesen: debugging with an RTOS cand be a challenge, but, with a modern OS-aware debugger, that is much less of an issue

Blogger

@william_in_oregon thanks

Iron

@engSwSP: I cannot see how the size of allocated memory chunks affects determinism - an RTOS would ensure that this is not the case

Blogger

@FrankMcCarthy, Also if you use EEPROM, and then migrate to a chip without EEPROM, you need to do all this patching with EE emulation. More challenges...

Iron

What I don't like about real time OS is that when you're debugging, you don't know what's happening in the OS that could be causing a problem; either from a bug or misimplementation.

Bare metal gives total control and understanding.

The "OO Trick" for pairing is that when C+ code finishes a block, destructors are called for all objects that only live in that scope. If you create an object using one of the paired objects, say to disable interrupts, when the block ends, C will always call the destructor, and that will re-enable interrupts.

 

It's cleaner to call the destructor yourself, and re-enable interrupts explicitly, but this covers any cases where the programmer forgets to do so.

Good, Fast, Cheap; Pick any two

Iron

@emertp: fragmentation cannot be reduced with malloc() - th eonly viable way is to use a block allocator

Blogger

@FrankMcCarthy, that issue with replacing some things in memory while keeping others is a pain. Whatever you learn now to do on one chip with one compiler, often you have to reinvent it all for another compiler. I hate that.

Iron

? When a new class is defined, memory must be allocated to it. Is there a mechanism in C+ that provides visibility of the amount of memory a class requires or does the designer need to wait until the class is instantiated to find out?

Iron

@naimi145: I do not have a specific suggestion for a C+ /embedded book - my own book does cover this topic, but is not dedicated to it

Blogger

? In my opinion the determinism of memory allocaion has to do with the granularity of the amount

of memory being handled. With that even in the methodology presented it is possible to stanble on 

fragmentation. Do you agree on that?

Iron

Real time responsiveness and exception handling.

Iron

Thanks Colin and Charles.  Thanks everyone.

?How can we best minimize the fragmentation occurrence.

Iron

? Colin do you have any recommended books for learning CPP embedded code?

 

Iron

Question: What aspect of embedded systems programming is most challenging?

Most chalenging aspect of embedded systems programming is creating a product on time and in the budget.

People asked for info about static keyword - here is my article on the topic: http://www.embedded.com/design/programming-languages-and-tools/4429398/The-C-keyword-static-

Blogger

?Anyone knows whether Microchip is up to speed on C+ programming for PIC32 MCU

Iron

What aspect of embedded systems programming is most challenging? Maybe predictability and reliable execution.

Have a nice day everyone!

Iron

@Curtis: some RTOSes allow change of task priority, others do not

Blogger

@HOST - I have a desktop PC with amplified speakers. The volume for THIS webinar has been low all week, but particulary low today.  I have been able to compensate due to amplified speakers, but I have not needed to do this for several other recent Design News webinars.  Other people have also had a problem today.  Obviously, something is different!

The "Lock Talk Radio" announcements at the beginning and end are normal volume, everything else is very low.  Hopefully you can fix it for Thurs & Friday.

Thanks

Iron

How to earn IEE dev hours:

 

http://www.designnews.com/document.asp?doc_id=270640

 

?COLIN ....... Regarding pairing, how exactly do we ensure that BOTH of the pair functions are executed? I mean, I can write a sequence of calls that have only the possibility of executing one after another, to force both parts of the pair to exec. but what is the OO "trick" that we can take advantege of?

Iron

@What aspect of embedded systems programming is most challenging?

Technically speaking, the  sychronization of tasks/processes is the toughest specially when intermingled with interrupt/event based device management.

Iron

@engSwSP: it is not possible to get fragmentation with block memory allocation - exhaustion, yes, but not fragmentation

Blogger

did the chat stop working?

Iron

@pdxesto I don't understand what you mean? how is that done?

Iron

Thanks Colin and Charles

Iron

In an embedded system, memory is finite.

Dynamic memory allocation is useful only for those blocks that you know aren't needed at the same time.

You need to have room for all the memory that could be in use at the same time.

Static memory allocation is much safer and the compiler will warn you if there isn't enough room.

?How do we receive the IEEE Professional Devel9opment HOurs?

Iron

Thanks Colin, good lecture!

Iron

Thank you. The strategy for creating task local data looks good.

  Thanks Colin, i will review Cplusplus for dummies and i may learn it.

Iron

Thanks Colin and Charles.

Iron

Thanks from Canada

 

Iron

Learning C/CPP.  I used ASM and Machine code programming for smaller projects and Fluke BASICC (yes, two C's) for larger projects before.

Iron

The Course Evaluation Form should be completed after the last class, but I aleady completed. any suggetions please? does it cause any problems?

Iron

debugging it and having memory and timing issues.

Iron

@laxman99: we will be looking at hardware access in the case studies

Blogger

What aspect of embedded systems programming is most challenging? Patching functions from ROM. My embedded work often includes code in ROM on the chip and code loaded from flash. The code is ROM can not be changed. The code in flash can be changed. We often need to update functions in ROM with new versions. We call this patching. Please comment on good methods for patching.

 

Thanks Colin and Charles.

Iron

The most challenging aspect of embedded systems programming lately is preventing scope creep.

Iron

Thanks Colin and Charles

Iron

Hi folks. Any questions?

Blogger

THanks Collin, chuck, Dogo-Key, et. tal.

Iron

The most challenging is the timing logic.

Iron

Lucky not to use real time yet.

Iron

Thank you Colin & Chuck

Iron

Everything is chanllanging about embedded 

 

Iron

determining guaranteed response time (to events and for control loops) can be a challenge...

Iron

Thanks Colin, Chuck and Digi-key 

Iron

?More info on Static please... c vrs c+

 

Thanks for today's lecture and your future blog session!

 

Iron

challenge is designing Embedded system to have low response time, low memory footprint, avoid deadlocks, resource management

Iron

Thanks Colin - another grand session - and thanks Chuck & Digi-Key

Iron

challenging part is synchronizing program with external devices and handle exceptions in real time situation

 

Iron

Thank you Colin, Charles, and Digi-Key

Gold

Most challenging thing is changing specifications which do not fit the overall system design.

Iron

thx for the presentation

Iron

Memory management

 

Iron

? Can you dynamicaly (on-the-run) change the priority of a task? 

Iron

Thank you Colin and Charles.

Iron

memory management and real time i/o's

Iron

Yes. dynamic memory overhead and delay is a problem for a real time system.

Iron

There are three I face the most: 1.) Preventing scope creep.  2.) Documenting the code. 3.) Planning for reusability.

Iron

@WHAT kASPECT OF EMBEDDED ...: Most serious for a professional to mantain a consistent career is market fragmentation. Too many CPUs and "frameworks" floating around for one to keep up his/her competitive edge.

Iron

Defining the exact correct requirements that the embedded software is to implement is the most challenging aspect of embedded system programming.

Iron

Thanks Colin & Digi-Key!

Iron

[3]time and data sincro

Iron

Thanks Colin.... I managed joining your class this morning

Iron

Thanks Colin and Chuck...

Iron

Memory allocation and (re)use....

 

Most challenging for me is the optimizing code and data space for limited memory systems.

Iron

Biggest challenge: Limited resources of the hardware and poorly specified and/or changing requirements.

Iron

Question: What aspect of embedded systems programming is most challenging?

test and debugging of course

Iron

? Are interrupts handled with a macro/function or do we have to write ur own entry exit functions? This is mostly present in the RTOS I have used. Is this a common feature in other RTOS as well?

Iron

[3] task scheduling, concurrency

system reources needed for a particular embedded device or fulfil a particular task.

Iron

Many challenges, but mostly doing what needs done in RT effectively and elegantly.  Also, agree wuth @cpu... getting the PROJECT done one time!

Iron

Because real time nature things can ge out of control very quickly if there are memory leaks.

Iron

Thank you Colin!!!!

 

Iron

Not much of a challenge that can't be overcome but it's probably on-board testing.

Iron

it could be a problem if not coded correctly.

Iron

Optimizing the code size and speed in the execution is the most challenging.

Iron

most challenging is concisely and completely defining requirements up front, next for me is defining logic flow from those requirements, then it's just a matter of coding/testing.

debugging event related bugs can be challenging!!

 

Iron

Resource management and interupt servicing andhandling in RTOS

Iron

Q3: Hardware IP designers constantly changing their designs to the point that embedded code has to be significantly re-written to accommodate it.

Iron

getting customer to nail down requirements

Iron

Most challenging - pointers, pointers, pointers !!!

Iron

@Vic14: garbage collection consolidates memory fragments

Iron

Keep code small to fit available memory.

Iron

even with memory partition as mentioned is possible to get fragmentation...

Iron

Avoiding a complete rewrite by defining the product accurately at the start is the most challenging for me

Iron

Memory management and resource allocation.

Iron

Getting all the requirements defined and aggreaded on

Iron

[3] making sure you know what the customer wants

Iron

Error or overflow recovery.

Iron

behaviour determinism in code execution

Iron

Using on the efficient way the memory of the system!!!

 

Iron

?The challenge is designing the tasks to run given the processor performance available.  Implementation comes from a proper design of tasks.

 

Iron

debugging embedded code can be a big challange

Iron

Most challenging - keeping up with new techniques, continuous learning

Iron

writing run to completion code so that it doesn't block.

networking programming among others for IuT (Internet of Things)

Iron

Writing drivers for hardware interfacing

Iron

Local storage of data is challanging

 

Bronze

Comunicating from software to hardware

Iron

What aspect of embedded systems programming is most challenging? <-- Defining an efficient data structure

Iron

Understanding the problem to be solved with the system.    Meeting timing requirements with the hardware assigned.

Iron

Question review: Is dynamic memory an issue/problem for a real-time system?

Blogger

the quirks of any given processor, and working around them, because they all have them (and if it's not the chip, it's the toolchain--yes, especially commercial ones)

Iron

Fitting code into the fixed memory size.

Iron

Most Challenging aspect is writing the Hello program. It's a downhill slide from there.

Iron

Getting the specifications before beginning programming...

Iron

Restrictions in number of resources.

 

Iron

Question: Is dynamic memory an issue/problem for a real-time system?

I think dynamic memory is an issue for a real-time system.

an issue, indeed

 

Blogger

[3]challenging: memory allocation; running at a certain mem location; also interfacing with other devices (i.e. I2C)

Iron

Getting a clear definition for the customer

Iron

Getting the correct specifications.

Iron

What is most challenging: Getting it right.

Iron

Thank you once again.

Iron

? access to the hardware properly

Iron

Limited CPU resources (speed, memory size,...)

Iron

P1 *p1Name;
p1Name =malloc (sizeof(p1));
p1Name =new p1;
.
.
.
delete p1Name;

Iron

Embedded programming challenges:  scheduling, resource management (e.g., avoid deadlocks), achieving deterministic behavior.

Iron

I feel it is memory management besides also maintaining predictability and robustness of the embedded system we are programming

Iron

This scheme requies you know exhaustively the program's dynamic behavior. The example is overly simplified.

Iron

Most challenging is control and allocation of resources.

Iron

Identifying the requirements and verifying that the system meets them.

Iron

A.: good performances vs low resources.

Iron

3) Ensuring some form or error recovery in critical systems.

Iron

Building board support pakages to accommodate RTOSs

 

Iron

Eliciting correct customer requirements.

Iron

getting the client to agree to requirements...

getting the hardware to agree with the software...

Iron

challenge is execution speed and handling large data

Iron

Challenge is fitting everything into available RAM/ROM space.

Iron

Dynamic behavior is challenging due to predictablity and system robustness.

Iron

Q.3. Most challenging part of embedded system dev, creating product on time and within budget.

Iron

The memory pools DO NOT address the example. That code is simply broken if it runs on a system with such limited memory.

It *can* help reduce fragmentation, in that the pools don't get fragmented.

 

I vote for New() being safer.... :-)

Iron

Maximizing efficiency in use of memory and processor cycles. E.g. don't load a whole library if you only need a single method from within that library.

Iron

Question: What aspect of embedded systems programming is most challenging?

Blogger

The system design aspects are the most challenging as that defines the complexity of each module/block/task and the interfaces. So more effort early pays in the later implementation work.

Iron

@HOST: I have a problem. Mu laptop stays at maximum audio volume, and still can't hear well.

Iron

We use Keil RL-ARM RTOS.

Iron

?hOW THE MEMORY COULD BE FRAGMENT into geometric segments?

Iron

3. keeping code small enough to fit available memory and retain all of the desired functionality

Iron

?Which one is safer and better, malloc or new?

Iron

? How do we portion the memory into geometric seq segments?

Iron

?colin can you combine defragmented memory?

Iron

How does using memory pool help the initial example condition in slide 21?

Iron

nice.... managing the the memory STRATEGY

Iron

Question: Are you using an RTOS? If so, which one?

No, I'm not using any RTOS.

Question: Is dynamic memory an issue/problem for a real-time system?


Yes, it could be a problem if it's limited

Iron

The strategy on slide 22 doesn't address the problem from slide 21.

to answer your question: Are you using an RTOS ? Yes, in house developed, FreeRTOS, uCOS

Iron

hello from Timisoara, late today  :(

Iron

? how can we chane memory size dynamically in program when we have different situation should be handleed in real time? How can we define size in dynamic format?

 

Iron

Re. audio issues

Deisgn News seminars, compared to others, seem to be more prone to various problems: low volume, frequent drop-outs. Hopefully they will work on improving this.

 

Iron

Dynamic memory shouldn't be a problem if identifiers register, static, auto and extern are used adequately

Iron

? Slide 18.  Doesn't having a separate class encapsulating locking / unlocking increate the possibility of a race condition occuring in your implementation?

 

Iron

Very simple and useful trick

Iron

Dynamic memory has to be handled carefully.  Often the order of allocations and deallocations can cause fragmentation and as memory is limited you may run out of memory.

Iron

dynamic memory can influence response time & performance.

>>>Dynamic memory allocation a problem for RT systems?<<<

Yes.

Iron

@DYNAMIC MEMORY: In my understanding it is a HUGE problem, for kRealTime applications are generally restricted in memory real-state (relatively speaking) and can't be left "sitting there" for too long. Memory that is not used for some time should be allowed to be reused.

Iron

Yes Dynamic memory can be an issue for small systems 

Iron

2: yes.   Can be non-deterministic or fail due to fragmentation

 

Iron

Dynamic Memory can be a problem.  Allocation/Deallocation can be time dependent and affect real time operations.  Allocation fail (out-of-memory) is catastrophic.

Iron

FreeRTOS for example has its own dynamic memory alloction so it seems that it might be a problem with some systems

Iron

I would say it would be highly probable that dynamic memmory would be an issue in RTOS.

Iron

Yes, usually about availability (out of memory) and the time it takes (variable) to allocate and to return it to the operating system

Iron

oF COURSE IS A PROBLEM FOR AN RTOS....THE PROCESS HAVE TO MANAGE THIS KIND OF ISSUES.

 

Iron

Dynamic memory can be a problem depending on the code.

Iron

Yes, dynamic memory allocation can block threads and interrupts

Yes. Dynamic memory allocation is a problem.

Iron

dynamic memory is an issue. We usually use memory areas that are managed internally. I have not used malloc/free with my ebedded work yet.

 

I would say yes, dynamic memory is a problem for a timed system.

Iron

dynamic memory can be a problem in a RTOS environment

Iron

Potentially a problem

 

Iron

I don't believe it's a problem.

Iron

It can be if there is not enough memory at the time of allocation?

Iron

Yes dynamic memory is a problem due to non-deterministic operation over time.

Iron

I would say dynamic memory is a problem for RTOS

Iron

yes for constrained memory systems..

Iron

Yes, it is a problem.

Iron

My takeaway from yesterday's lecture was that dynamic memory was an issue for embedded software and RTOS.

Iron

If coded properly, no it is not a problem

Iron

Dynamic memory might be a problem if memory is limited.

Iron

[2] Yes; fragmentation can occur, causing malloc() failures as the system ages.

Iron

we try NOT to have dynamic memory allocation in automotive - the OEMs don't like it

Iron

yes, dynamic memory is an issue

Iron

Yes, but we do don't use much, so small/non-existent problem.

Iron

yes dynamic memory allocation is a problem in embedded RTOS

Iron

I avoid dynamic memory use

Iron

Yes it is an issue for RTOS

Iron

yes it could be a problem

 

Bronze

Q.2. Dynamic memory seems to be a concern in real-time systems.

Iron

yes, dynamic memory is an issue

Iron

No dynamic meory issues

 

Iron

no problem unless you have leaks ? (and enough memory !)

Iron

Is dynamic memory a problem for real time systems: no, if it is managed properly it is not a problem.

 

Iron

dynamic memory is a problem for real time systems.

Iron

Yes it is a problem or at least it is proceived as a problem.

Iron

yes, it is a problem

Iron

Yes its  a problem

Iron

yes, its a problem when have limited memory

Yes, it's a problem.

Iron

Volume is low here, as well. I had to switch to earbuds because speakers weren't loud enough.

Iron

Yes.  It's a problem.

 

Iron

No it is not a problem

Iron

? so an appiication of static could be if i had a hundred timers and when any expired i wanted to set a semaphore so another task could check??

Iron

Yes. Memory leaks, real time determinism

Iron

No it's not a problem.

Iron

Question: Is dynamic memory an issue/problem for a real-time system?

Blogger

it can be a problem

Blogger

Yes, it is a problem.

Iron

Yes, clearly memory management is a problem.

 

use powered speakers or small, non professional headphones that don't require amplification, and of course make sure the system, speaker, and browser volume bars are up

Iron

Dynamic memory is rife with challenges.

Iron

Yes. Dynamic memory is a problem because it may lead to allocation failure and memory fragmentation

 
Iron

I would think it would be even more of an issue. If you expect a result in real time, or at least deterministic time, you can't wait while memory is reallocated.

Iron

yes, it's a problem

Iron

potential problem.

Iron

Dynamic memory management can impact the deterministic behavior of the real-time operations.

Iron

i use earphones and max the volumes and I hear much better

Iron

I use MQX, FreeRtos and a home brew time slicer.

Iron


Dynamic memory - yes, an issue in some (multi-processor) implementations.

Iron

[2] depends on overhead and memory fragmentation

Iron

Dynamic memory must be a problem for an RTOS (just guessing).

Iron

Dynamic memory has management problems with real time systems

 

Iron

(2) Yes, dynamic memory is a problem in RTOS, due to fragmentation issues and nondeterministic nature

I don't have any problem with the volume

Iron

Slide 15 depend on the number of complexity task, in a system that should make calculations with matrix like DSP process in multichannel, can be a issue.

Iron

Re volume; have you max'ed out the volume control on the player bar?

Iron

Sound volume low, and audio quality pretty poor, also.

Iron

what design news webinar doesn't have lo-fi audio issues? turn up your speakers and stop flooding the chat

Iron

volume is very low here also.

Iron

Lower than other PC sounds, intro music etc, but completely usable here.

Iron

C+ std lib 11 has std::thread

Iron

@gbabecki depending on the RTOS implemetation create task may also start the task

Iron

It is very low here.

Iron

I agree, volume is low compared to other Design News webinars I have attended.

Iron

Volumne is barely usable with all gains at max here.

 

Volume is fine here.

Iron

@wws re: slide 9

In this hypothetical example of encapsulation the constructor simply illustrates creating the class and doesn't imply that it is actually "started".

Iron

@HOST: CAN YOU INCREASE COLIN'S VOLUME?

Iron

?You obviously assume asynchronous interactions between threads/tasks which is quite typical of programmers with telco background..

Iron

no rtos on one, embedded linux on another

Iron

?@Colin: What part of the code instantiates "task" class ?

Iron

I am also finding the audio signal very low

Iron

What do you mean various time? real time ?

Iron

@Colin: QNX is what I have used as RTOS.

 

Iron

The audio is quite low.

 

Iron

Good morning everyone

Iron

? Slide 9: Isn't it a bit dangerous to start a task when the constructor is invoked?  I believe that goies against MISRA standards for good practices.

 

 

Iron

@horriatm $$$ and level of support

Iron

various rtos at various times including qnx, mqx, freertos,

Iron

? Can you explain a little about the difference between commercial and other open source RTOS ?

 

Iron

Greetings from Waterloo Ontario Canada

Iron

I'm just starting in embedded programming, so no current RTOS.

 

Iron

(1) MQX RTOS and FreeRTOS

We're starting up with NuttX. We like the BSD license.

No RTOS here at this time

Iron

Chat Window Froze?

Iron

We are using CMX in some projects and home grown in others.

Iron

lost post- not using RTOS right now. using state machines and tasks coordinated by a global timer.

Iron

? what techniques are there in RTOS multithread programming?

Iron

Just getting into embedded programming. Not yet using an RTOS.

Iron

Do not always use a RTOS but will sometimes use FreeRTOS.

Iron

good morning all....

Iron

Linix is embedded in the Vera3 Home automation

Iron

Hi from Ireland, not using RTOS at the moment

Iron

Using a flavor of Linux on Raspberry Pi

Gold

?custom timers and semaphores and state machines

Iron

Not currently using.

Iron

No RTOS yet ; but interested in a few

Iron

I think the chat function just went down...

Iron

I'm an ASIC guy.  I support the RTOS/development chosen by the FW team, which is why I am interested.

Iron

not using realtime OS for embedded right now. Just using state machines and tasks coordinated by a global timer.

Iron

Have used many RTOSs.  Current project using FreeRTOS.

Iron

Not using an RTOS

 

Iron

NO.

Just one that barely resemble an RTOs (just a few primitives implemented )

Iron

No RTOS, just a programmed control loop

Bronze

I want tro start using FreeRTOS soon

Iron

no RTOS experience yet!

Iron

An RTOS from Keil for the 8051 processor and an RTOS from Synopsis for the ARC processor.

using QuantumLeaps framework which is RTOS-like. used uCOS in the past and others

Iron

I am not Using RTOS yet.

Iron

I am not using an RTOS yet.

Is OS-9 still used?

Not currently using an RTOS. Don't need hard RT response.

Iron

Not currently using RTOS.

Iron

currently not using rtos

No RTOS yet, but enjoyed Design News Training on QNX.  I would consider.

Have done my own.

Iron

using Keil's RTOS for ARM

Iron

I am using FreeRTOS

 

Iron

Nothing current, have developed on WinCE

pSos in the past

moving soon to Quadros RTXC

Iron

No RTOS, haven't needed one yet.

Iron

Using WinCE 6.0, SuperTask!.

Iron

No not at this time

Iron

Not yet, but I'm trying to use the uC/OS 

Iron

Yes, Linux for the bigger projects, FreeRTOS for the smaller systems, used ThreadX and uCOS previously

Iron

Not now.

Stating to study FreeRtos for my next project.

Iron

I have been using uCOS-II, VxWorks and most recently Xenomai

Iron

OBL (one big loop), and MQX

Iron

[1] Embedded Linux; v2pthreads lib to get VxWorks API. Don't need full determinism.

Iron

In the most recent project we've used FreeRTOS.

Iron

Question: Are you using an RTOS? If so, which one?

Blogger

Currently not using an RTOS on an Arduino.  Working with embedded LInux for Raspberry Pi, Beagle Bone Black, and Arduino.

Iron

If I am using an RTOS, I am not aware of it.

Iron

We're using our own RTOS

 

Iron

[1] Not at this time. Have used VxWorks, others we had a OS independent layer we coded to for code portability

Iron

Not currently using RTOS much.

Iron

Looking at FreeRTOS but not using yet.

Iron

RTOS - Using our own custom "Executive".  Investigating MQX.

Iron

I am using eCOS part is written in C+ but designed to support C

Iron

I'm not currentluy using an RTOS

 

Hello from Rich in New York.

Iron

Hello, sorry I'm late.

Iron

we are using Nucleus and a linux.

 

Iron

Considering FreeRTOS

Iron

Q.1. Also looking at MQX for Freescale

Iron

Yes, QNX

In the past we have used others

Iron

Greetings from Valladolid, Spain in the most old West.

 

Iron

Q.1. I am just getting started using FreeRTOS.

Iron

Welcome back Colin.

Iron

Hello from Rochester, NY

 

Iron

Morning Colin, 4am here :)

Iron

Greetings from Midland Tx

 

Iron

Hello from Greenbelt Maryland

 

Iron

Hello there Colin

Blogger

Capitola is here.

Iron

Hello from Sunny Saint Louis, MO

Iron

hi from baltimore, md

Iron

Had to logout and login again

Iron

Hello from Montreal, QC

Iron

Hello from Ohio

Platinum

Hello from Los Angeles

Iron

Hello from Caxias do Sul - Brasil

Iron

Hi all -Audio is live! If you don't see the audio bar at the top of the screen, please refresh your browser. It may take a couple tries. When you see the audio bar, if it doesn't start automatically, hit the play button. If you experience audio interruptions and are using IE, try using FF or Chrome as your browser. Many people experience issues with IE. Also, make sure your flash player is updated with the current version. Some companies block live audio streams, so if that is the case for your company, the class will be archived on this page immediately following the class and you can listen then. People don't experience any issues with the audio for the archived version.

Hello from Western PA.

 

Iron

Good evening, from Germany.

Iron

Hello from Greensboro, NC

Ready for day 3

Iron

Hello from Albuquerque.

Iron

Hello All from Seattle.

Iron

Hello from Brooklyn NY

Iron

Hello from San Jose, CA.

Iron

Not using an RTOS at the moment but i have used Micrium RTOSII

Iron

Hello from Miami, Fl

 

Iron

Hello! from Montreal, Quebec

Iron

Good morning from Reno, NV!

Iron

Hello from Raleigh, NC

Iron

Hi every one, I am from Newcastle upon Tyne

Iron

Hello from Philadelphia. Had to miss yesterday, but may be able to finish the rest of the week.

Iron

Qc City, PQ, Canada

 

Iron

@LRoberts:  I'm from the Timberlake area of Shelton, WA.  Which timberlands?

Iron

Greetings from Vermont

Iron

Hello from Pittsburg, Kansas

Iron

Hello everyone - welcome or welcome back, as appropriate. We will be starting the presentation at the top of the hour and I will be on here to answer any questions straight after.

Blogger

Hello from Longmont, CO

Iron

Hello from Dallas...

Iron

Hello from the timberlands of Washington

 

Iron

Hello, signing on from Rochester, NY.

Iron

Hello from Philippines.

Hello from Big Sky country

Gold

Hello from Thornville, Ohio

Iron

Hello from Western New York.

Iron

Hello from Delavan, WI.

Iron

Hello from Manizales, Colombia.

Hello from Santa Barbara

 

hello from Mishawaka

Iron

Hello from Shelton, WA

Iron

Hello from Albuquerque.

Iron

Good afternoon to everyone. How are you Colin? I hope you are well.

Iron

Good day from New York.

Iron

Hello from Summerville, SC

Iron

Good afternoon from Florida

@DaveWR - only have the coyotes walking thru the back yard in Zephyr. Wish I was able to work at home (especially today with the roof tarring going on)

Iron

Hello From London Ontario

 

Iron

haven't seen a heron since living in Angus, ON. we have "tar sand turkeys" though :-)

Iron

@Tom:  There are worse places to live. I can walk out to the back patio door 30 feet from my office and watch the Great Blue Herons on the river. I have an office at home and a big shop. 

Iron

@TomBee - hehehe they just removed our skylights today as part of redoing the roof

Iron

@DaveWR - small world, live in Zephyr but at work in Newmarket. 

Iron

You are eligible to earn IEEE Professional Development Hours by attending these courses and participating in the chat function. Additionally, we are no longer using the points system, offering "graduation", or giving grades. The IEEE hours are taking the place of that. There are some important things for you to know about earning the hours. The most important ones are that you need to attend these courses live, you need to attend a minimum of two of them per semester, you need to fill out a course evaluation form within 2 weeks of the end of the class, you need to attend 4 out of the 5 classes per course, and you need to participate in the chat function every day you attend. Please click on the link at the top of this page that says "How do I earn IEEE professional development hours" to read all of these important details and more.

 

Blogger

Good afternoon from Rochester, NY

Iron

@TomBee:  I lied actually -- but I am on a ravine lot overlooking the Pefferlaw River. I can launch the canoes and dinghies down below. And the sun is actually shining. :-)

Iron

Hello all and happy humpday from Edmonton, Alberta.

Iron

Greetings from Detroit, Michigan

Hello from Chicago

Iron

Please join our Digi-Key Continuing Education Center LinkedIn Group at http://linkd.in/yoNGeY and be sure to follow @designnews and @DigiKeyCEC on Twitter for the latest class information. We encourage you to tweet about oday's class using #DigiKeyCEC.

Blogger

@DaveWR - What a lucky guy sitting by Lake Simcoe. I'm in the office in Aurora with only a skylight to provide a hint of whether it is sunny or raining. But gladly, I do see sun on the carpet.

Iron

Hi from Panama City, FL.

Iron

The streaming audio player will appear at the top of this web page when the show starts at 2 PM Eastern time today. If the audio doesn't start automatically, click on the play button to start it. Note however, that some companies block live audio streams. If when the show starts, the audio bar doesn't appear or you don't hear any audio, try refreshing your browser. If that doesn't work, try using Firefox or Google Chrome as your browser. Some users experience audio interruptions with IE. Also, make sure your flash player is updated with the current version. If that doesn't work, your company is likely blocking the live stream. The class will be archived immediately following our live taping and you will be able to listen to it then. You shouldn't experience any problems with the audio when listening on-demand.

Blogger

Hello from India...Looking forward to taday's lecture :)

Iron

Hello from sunny SE Lake Simcoe, Ontario Canada.

Iron

Be sure to click 'Today's Slide Deck' under Special Educational Materials above right to download the PowerPoint for today's session.

Blogger

Greetings from Scottsdale, AZ

Iron

Hi all.  68 and partly cloudy in Minneapolis today.

Iron

hi from Gudalajara MX!

hi everyone!! from baltimore,md

Iron

Howdy from Tomball, TEXAS!

Iron

Hello to all from PA, USA, overcast and ready to rain.

Iron

Hitting the hump. Memorial weekend, here we come !!



Partner Zone
Latest Analysis
Released on September 19, 2014, this 5.5 inch screen iPhone is the larger version of the iPhone 6, whose teardown follows tomorrow.
A Design News course on field programmable gate arrays (FPGAs) should help engineers who are considering the technology for their upcoming designs.
In many engineering workplaces, there’s a generational conflict between recent engineering graduates and older, more experienced engineers. However, a recent study published in the psychology journal Cognition suggests that both may have something to learn from another group: 4 year olds.
CTC releases EtherCAT Master module for high-performance control of networked servos, stepping motors, and I/O devices.
Conventional wisdom holds that MIT, Cal Tech, and Stanford are three of the country’s best undergraduate engineering schools. Unfortunately, when conventional wisdom visits the topic of best engineering schools, it too often leaves out some of the most distinguished programs that don’t happen to offer PhD-level degrees.
More:Blogs|News
Design News Webinar Series
9/10/2014 11:00 a.m. California / 2:00 p.m. New York
7/23/2014 11:00 a.m. California / 2:00 p.m. New York
7/17/2014 11:00 a.m. California / 2:00 p.m. New York
9/25/2014 11:00 a.m. California / 2:00 p.m. New York
Quick Poll
The Continuing Education Center offers engineers an entirely new way to get the education they need to formulate next-generation solutions.
Sep 22 - 26, MCU Software Development – A Step-by-Step Guide (Using a Real Eval Board)
SEMESTERS: 1  |  2  |  3  |  4  |  5  |  6


Focus on Fundamentals consists of 45-minute on-line classes that cover a host of technologies. You learn without leaving the comfort of your desk. All classes are taught by subject-matter experts and all are archived. So if you can't attend live, attend at your convenience.
Next Class: September 30 - October 2
Sponsored by Altera
Learn More   |   Login   |   Archived Classes
Twitter Feed
Design News Twitter Feed
Like Us on Facebook

Sponsored Content

Technology Marketplace

Copyright © 2014 UBM Canon, A UBM company, All rights reserved. Privacy Policy | Terms of Service