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.

Thanks Jean for the great lecture.

Iron

hello all from Edmonton, Alberta. Finally getting a chance to catch up from last week.

Iron

Audio is great today.

Iron

Hello and catching up

Iron

Really like your slides, very helpful for visualising RTOS functioning 

Iron

Thank you Jean, Jennifer

Crystal 16khz, 32khz, 50khz

It was very educational. Thx
Iron

Great presentation, THank You

Iron

Good LinkedIn link maybe be

http://www.linkedin.com/groups/DigiKey-Continuing-Education-Center-4223125

Iron

A bit late, but better than never.

Iron

Sorry but LinkedIn link seems don`t work!

 

Iron

Regarding advanced topics. May include scheduling algorithms, other kernel objects like queues, mailboxex, pipes, threds, flags etc, kernel services like memory management, driver management etc, good practices and standards related to RT kernels

Iron

Thanks a lot, great class!

Iron

See you all tomorrow for the last class.

Thanks for listening and chatting.

Blogger

Yes, have a tick, multiple uses.

Iron

cghaba:

Will there be another course with advanced topics in Real-time kernels?

 

IDK, that a good question UBM and/or Digi-Key.

What would you like to see covered in such a class?

Would you mind if the class would be more specific to a kernel so we could show 'actual' examples?

 

Blogger

aak:

What are the disadvantages of mutex over semaphores, if any?

 

There are two disadvantages I can think of:

1) They are 'binary' objects.  The resource is available or not.

    Semaphores can contain a count of the number of resources available.  See my buffer example in this chat.

 

2) It takes additional processing time to change the priority of a task.

 

Blogger

Good point regarding the generic nature of the class, Jean. I agree with a previous postings that the follow-on discussions are invaluable a really helped my understanding of some of the concepts presented in the classes. Thank You.

Iron

One comment I'd like to make.

I make this class 'generic' and I avoided talking about the Micrium kernels as much as possible.  Please understand that this is 'generic' knowledge and should apply to just about any commercial kernels. 

In fact, our books also provide a lot of generic 'knowledge' andcan be quite useful even if you decide to use other kernels.

Blogger

One more day, then, the weekend !!

kkonesky:

I'm thinking along the lines of a low priority task that grabs a semiphore.  Then a higher priority task wants that semiphore.  Your example bumped up the priority of the lower priority task so it would release the semiphore sooner.  What about the higher priority task taking the semiphore away?

 

Good question.  All this happens automatically.  Let's say another task, higher in priority than Task A in my slides wants the semaphore WHILE Task A has the semaphore then, the same thing happens, Task A will be raised in priority.

 

Hope this is what you are asking about.

Blogger

I'm thinking along the lines of a low priority task that grabs a semiphore.  Then a higher priority task wants that semiphore.  Your example bumped up the priority of the lower priority task so it would release the semiphore sooner.  What about the higher priority task taking the semiphore away?

Iron

kkonesky:

Is it ever practical to move a semaphore from a lower priority task to a higher priority task and then return it later?

 

Actually, it's the task that has a priority, not the semaphore.  So, yes, kernels typically provide APIs to allow you to change the priority of tasks.  The benefit of the mutex is that there is NO need to raise the priority of the task IF no other task wants access to the resource.  In other words, what you suggest would be to raise the task priority even if it's not actually needed.

Blogger

jjrochow:

Do you have a port for systems (SOCs) based on the ARM Cortex-A9?

 

Actually, we are finalizing our Cortex-A9 port and yes, it could work for SoCs.
We should publish it shortly on our website.

Blogger

I found the SOCs listed on this webpage:

http://micrium.com/downloadcenter/download-results/?searchterm=pa-arm-cortex-a9&supported=true

but no TI A9 port.

Do you have a port for systems (SOCs) based on the ARM Cortex-A9?

kkonesky:

Which is most likely to break a hardware timer or a software timer.  I'm thinking of the need for a timer to prevent code from just stopping...

 

Good question.  If you can have a hardware watchdog, you'd probably be better off.  However, one-shot timers can significantly simplify some code.  Like I mentioned turn on a light and let the soft-timer turn it off.

Blogger

Thanks Jean. Let us know if you get a chance to update the slide deck for this session.

Iron

@Digital_Angel - Good info. Not too bad @ $117.

Iron

Lt.Dan:

Jean, I know it may be difficult to fit on the slides, but it would be helpful to annotate the slides with the event details resulting in the task switches. You cover it in the lecture, but additional slides with those details would be most helpful, particularly those just getting started with real-time multitasking. Thanks.

 

Indeed, good suggestion.  I should have created multiple slides to show the sequence of things.

Blogger

mrresearch:

You mentioned in slide 9 about "disabling interrupts". When you do this from a task, does it disable the interrupts to all other tasks?

 

You can do this at any time in your code if your code needs to access a shared resource.  It's one of the 4 ways I described.  However, it's preferable to not disable interrupts (if possible) because, as you indicated, it disables ALL interrupts.

 

Well, not quite, it disables ALL 'kernel aware' interrupts.

Blogger

The Renesas demonstration kit for RX62N is also the hardware platform that is included in a special RX62N-specific edition of Micrium's book on the µC/OS-III Real Time Kernel. The book and board combo targets serious programmers and college students who need to understand and create programs based on the timesaving features of a real-time kernel. Part I of the text covers the internals of the new µC/OS-III real-time kernel. The emphasis is on the internals, features, API calls, and where and how to use an RTOS, and is all presented in a clear and useful way, and accompanied by a wealth of diagrams. Part II provides specific examples for using µC/OS-III on the new Renesas RX62N microcontroller.

http://www.digikey.com/us/en/ph/Renesas/rx600-demo-kit.html

Thanks, Jean for the HW/SW timer answer. So yes, I can see using SW timers in my apps.

Iron

LEE337:

Jean, will you touch on Mutexs tomorrow? 

I actually did today!?!  What do you mean by your question?

Blogger

Digital_Angel:

Good Intro and Overview.  With class time so short, some courses would benefit from a suggested reading list (prerequisite or for reference) that might allow a day to be set aside for installation, setup, usage, interfacing, debugging and other application specific slides.  Perhaps a Wikipedia-like article or a Design News Archived article.

 

Well, the best reading material are the books that you can download from our website :-)

Blogger

Hi Jean, so I have a general question on using an RTOS:

in the past I usually start with a flowchart or state diagram.. then begin coding. I don't think you can use a flow chart with an RTOS as now you have multiple tasks. For this application, coding to state diagrams is not a good idea as our electronics will go into multiple products so we would need new code for each product even though we will have lots of code in common (LCD driver, ethernet stack, USB stack, etc).

do you have any suggestions on how to "get started"?

thanks

Iron

jjrochow:
Are the books on uC/OS-II and III available on the Micrium website? That site was down for a while after yesterday's class

Yes, absolutely.  You can download the PDFs of the books for free or, get paper copies from Digi-Key or Amazon.com or your favorite technical bookstore.

Blogger

Which is most likely to break a hardware timer or a software timer.  I'm thinking of the need for a timer to prevent code from just stopping...

Iron

Good Intro and Overview.  With class time so short, some courses would benefit from a suggested reading list (prerequisite or for reference) that might allow a day to be set aside for installation, setup, usage, interfacing, debugging and other application specific slides.  Perhaps a Wikipedia-like article or a Design News Archived article.

Dennis Kong:
Question: "Priority Inheritance" method is described at Slide 15. I am wondering if uCOS also supports other methods like "Priority ceiling" or "Highest Locker Mutex".

Actually, uC/OS-II implements the priority ceiling protocol because it cannot have two tasks running at the same priority.

uC/OS-III implements the priority inheritance protocol because it supports multiple tasks at the same priority.

Blogger

Jean, I know it may be difficult to fit on the slides, but it would be helpful to annotate the slides with the event details resulting in the task switches. You cover it in the lecture, but additional slides with those details would be most helpful, particularly those just getting started with real-time multitasking. Thanks.

Iron

Bob Loy:

I'm still not sure of the difference between hardware timers and soft timers ...

 

A hardware time is a timer that is implemented in hardware.  It's on the chip.

A soft-timer, is a timer that is updated in software.  Whereas a chip may have a limited number of timers, the kernel can manage hundreds of soft-timers.

 

Blogger

Question: "Priority Inheritance" method is described at Slide 15. I am wondering if uCOS also supports other methods like "Priority ceiling" or "Highest Locker Mutex".

 

You mentioned in slide 9 about "disabling interrupts". When you do this from a task, does it disable the interrupts to all other tasks?

Iron

Maybe, choosing white color for task C induces the confusion. Another color will make it clearer.

Iron

I would like to make a suggestion to clean up the chat page:

After the lecture and chat starts, post only questions and answers not chit-chat. I think this would make the chat page easier to read and follow.

Item (5) on slide 15 shows the high priority task A resuming after the mutex was released by task C

Yes, slide 15. It is not clear because there are superimposed task A and C for some time, as if they are run at the same time.

Iron

Good presentation. Thank You Jean (and Jennifer!).

Iron

Thanks very much Jean & Jennifer, Stay Cool!

Iron
Oh I thought it was voice, thanks
Iron

@rrsqrd - this is the live chat page.

Iron

Thank you Jean for the lecture

Thank you Jennifer

Iron

Thank you Jennifer

Thank you  Jean

Iron

cghaba:

Not clear what is after item 5

 

You mean slide #15?

 

If so, what this indicates is that Task C finishes with the resource, releases the mutex and Task A starts accessing the resource.

Blogger

Thanks Jean, Jennifer & Digi-Key

Iron

Is it ever practical to move a semaphore from a lower priority task to a higher priority task and then return it later?

Iron

Jean, will you touch on Mutexs tomorrow? 

Iron

Are the books on uC/OS-II and III available on the Micrium website? That site was down for a while after yesterday's class.

What are the disadvantages of mutex over semaphores, if any?

Iron

Until tomorrow, have a good evening

Iron

Will there be another course with advanced topics in Real-time kernels?

Iron

Thanks Jean and Jennifer.

Iron

Thanks for the presentation.

Iron
Where is the live chat page.
Iron

If a mutex has the advantage of reducing the occurrence of priotity inversions, then why use a semaphore ever?

Iron

Thank you Jean, Jennifer and Digi-Key

Gold

Not clear what is after item 5

Iron

Slides 13 & 15 really help to understand this.

Iron

Priority inversion could be a problem, such as if time-sensitive calc is held off by a lower priorty task, causing loss of (missing) data critical to the calc.

Iron

I can see where a Priority Inversion could be a real problem in some future app I write.

Iron

Priority inversion is usually not an issue in my systems.

Iron

Priority inversion not a problem

Iron

Not really. The system is relatively slow anyway

Iron

It would totally depend on the higher priority task.  Typically though no.

Iron

very brief inversions would be acceptable

Iron

priority inversion would be very bad for our application

Iron

Generally, it is rare that I would have case where priority inversion would concern me.

Iron

Priority inversion not a problem

Iron

Jean's question was:

Would a priority inversion be a problem in your application?

  

SORRY NO Jennifer; wouldn't survive the trip Too Thirsty for knowledge (class) and liquids today,lol

Iron

@Bob Loy: soft timers are implemented by software, hardware timers are implemented by the uC

Iron

Are we going to discuss priority inversion?

Use soft timers in non-kernal systems. I implement these systems as concurrent state machines as a cooperative multi-tasking system.

Iron

Question: a task is allowed to enable/disable interrupts?

I'm still not sure of the difference between hardware timers and soft timers ...

Iron

JACKO-07 - do you deliver? =)

Yes, use built-in SW timers as regular ISR's.

Iron

not currently using soft timers but have in the past.

Iron

cuurntly not using soft timers

Iron

I have a 1 ms ms timer and its ISR decrements other soft timers

yes, using soft-timers provided by kernel

Iron

I use a 32bit second counter tht i read, add the timeout then wait for the time to be reached.

Iron

Not using soft timers

Iron

unknown.  Customer's choice.

Iron

No soft-timer be used now.

Iron

Yes, made own using excess CPU timers.

Iron

We are using RTOS, having both watchdog timer and periodic timer

Iron

Yes - our system does use some form of soft timers.

Iron

Not using soft timers.

Iron

@sherlock - yesterday I had to post one thing 3 times before it 'took' - try, try again!

 

Iron

Does you system currently use some form of 'soft-timer'?

   If so, how do you implement those if you don't have a kernel or, if the kernel you are using doesn't provide soft-timer services?

hello from Saint Louis

Iron

32.768 KHz crystal, RTC function.

Iron

Jennifer that for SURE!!!! Going for a Starbucks Orange Refresher with EXTRA Ice after the class! 

Iron

Sorry Hi Jennifer. I found my text input can not be show on screen. Is there any problem?

Iron

yes, hardware timer for kernel tick

Iron

Hi Jennifer. I found my text input can show on screen. Is there any problem?

Iron

12Mhz clock for ADC 

Iron

Yes use time source, for time measurement, timeouts, etc

Iron

accelerometer measurement

 

Iron

I'm thinking of using a tick rate that can divide down to accurate musical notes.

Iron

Use time sources, synchronization, precision delays, time of day, time outs etc.

Iron

crystal or oscillator, depending on project. Generally implement tick-based processes.

Iron

Yes. Used for timeouts.

Iron

Software timer for periodic interrupt, for time measurement.

Iron

I usually have a 1ms timer for timeouts, switch debouncing, etc.

single timer interrupt to control all timing delays

Iron

32.768 KHz crystal for system timer

Iron

tes RTC functions (Date, time, etc)

Iron

Switching, real time and other timeing events

Iron

Yes. Synchronization of events.

Iron

clock tick is from timer 0 used for periodic sampling of ADC values

Iron

yes for scheduling task

Iron

Jean's question was:

Does your system currently use some form of 'time source'?

   If so, what do you use it for?

Hi there JACKO-07 - You're not kidding!

 

Hi ALL;GREETINGS  from HOT HOT REALLY HOT BOSTON!

Iron

Albuquerque is here.

Iron

Greetings from Vermont

Iron

Hi all - Audio is live!

Hello, from cool Seattle!

Iron
Hello from Connecticut, just as steamy as Boston
Iron

@jjrochow@ra.rockwell.com - The title of the class was revised slightly. It is now "Time and Resource Mngmnt" but Jean confirmed that interrupt mngmnt will be covered in the material.

babybacs: Asa se pare. Mai era parca si Dan din Titan cred ca in prima zi.

Iron

Greetings from Metro Boston, MA. Another steamy, steamy 90's F!!

Iron

Hi from Mishawaka, IN

Iron

Greatings from steamy Chicago

 

Iron

Hello from Chihuahua, Mexico

Iron

The slide deck is for Time & Resource Management

Iron

Greetings for Colorado Springs.

Iron

Just to be clear. Todays lecture is to be:

July 18 - Day 4: Interrupt Management
7/18/2013 2:00:00 PM
Lecturer: Jean Labrosse
An important aspect of a kernel is how processor interrupts interact with the kernel and application tasks. ISRs can signal or send messages to tasks to defer lengthy processing to task-level code. The reason why most kernels need a periodic time source will also be explained.

Hello from Longmont, CO

Iron

Aloha from Montana

Gold

It is raining to cool down the heatwave.

Iron

hello from Mishawaka

Iron

Hello from Chicago

Iron

Checking in from Florida - 85 degrees, 72 dewpoint - cool and dry for this time of year!

Iron

Greetings from sunny Minnesota

Iron

@cghaba: Doar noi din Romania ?

Iron

Hello all from Timisoara, Romania

Iron

Good Day from Beaverton, Oregon

Iron

Good evening from Iasi, Romania

Iron

Hello from Sunny SE Lake Simcoe Ontario Canada

Iron

Hello in a sunny day on Valladolid, Spain

 

Iron

Hello from sunny Atlanta

Iron

Hey from Johnson City, TN

 

Iron

Greetings from Chicago.

Iron

HI, from San Jose CA

Iron

hello from Simi Valley Ca

Iron

Hello from Tennessee

Iron

Hi from Panama City, FL

Iron

Good morning from Mobile, AL

Good morning from Scottsdale AZ

Iron

Good morning from Vancouver.

Iron

Be sure to follow @designnews and @DigiKeyCEC on Twitter for the latest class information. We encourage you to tweet about today's class using the hashtag #CEC.

Please join our Digi-Key Continuing Education Center LinkedIn Group at http://linkd.in/YoNGeY

Good morning from Buenos Aires

Iron

Morning from Portland Oregon

Iron

I see my earlier deadlock question is somewhat answered on slide 4 of today's deck.

See you later my friends.

Iron

RTOS, don't leave home without it.



Partner Zone
Latest Analysis
The Strati EV car printed at the IMTS show is made of SABIC's LNP STAT KON AE003. SABIC tells Design News why this carbon fiber-reinforced compound was chosen by Local Motors and Oak Ridge National Laboratories.
The 2014 Ig Nobel Prize in Physics was awarded to Dr. Kiyoshi Mabuchi and his team members for their work measuring the slipperiness of banana peels. Turns out they're slipperier with the yellow side up.
Many scientists have been working battery-free ways to power wearable electronics that can replace bulky battery packs, particularly through the use of energy-harvesting materials. Now a team of researchers in China have upped the game by developing a lightweight and flexible solar cell that can be woven into two-way energy-harvesting fabric.
Researchers in Canada have developed a chin strap that harvests energy from chewing and can potentially power a digital earplug that can provide both protection and communication capabilities.
In case you haven't heard, the deadline to enter the 2014 Golden Mousetrap Awards is coming up fast Oct. 28! Have you entered yet?
More:Blogs|News
Design News Webinar Series
9/25/2014 11:00 a.m. California / 2:00 p.m. New York
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
10/7/2014 8:00 a.m. California / 11:00 a.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.
Oct 20 - 24, How to Design & Build an Embedded Web Server: An Embedded TCP/IP Tutorial
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: 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