Pumpkin, Inc.

Pumpkin User Forums

OSSignalXYZ() improvement

Have an idea on how to make Salvo better? Post it here!

OSSignalXYZ() improvement

Postby luben » Wed Jan 10, 2001 5:02 am

Hello,

I think that you can apply the idea of OSTimer() to OSSignalXYZ() - when you signal an event from interrupt you can set in the interrupt routine only some flags and in the Scheduler you can complete the whole job. This will save interrupt levels and will decrease the interrupt response time.

I mean, OSSignalXYZ could be made from 2 parts (at least when you call it from interrupt routine).

Because I suspect that calling OSSignalMsgQ form interrupt will bring big limitations for the stack depth - is it consumes 4 levels, the allowed maximum user stack level will be 3 (and if I use ICD - 2).. not good.

Regards
Luben

luben
 
Posts: 324
Joined: Sun Nov 19, 2000 12:00 am
Location: Sofia, Bulgaria

Re: OSSignalXYZ() improvement

Postby aek » Wed Jan 10, 2001 5:17 am

OSSignalMsgQ() consumes three (3) stack levels.

You're correct about the stack depth limitations on the user program when calling OSSignalXyz() from an interrupt -- on a PIC16 PICmicro, that consumes 1 (for ISR) + 3 (for OSSignalXyz()) = 4 stack levels, leaving at best 8-4-1=3 ((task level is 1, with OSSched() in-lined)) to work with.

We're looking at applying the same kind of architectural change to OSSignalXyz() as we did to OSTimer(). Unfortunately, it's much more difficult, due to a variety of reasons. Such changes will not be in the v2.2 release.

-------
aek
aek
 
Posts: 1888
Joined: Sat Aug 26, 2000 11:00 pm

Re: OSSignalXYZ() improvement

Postby luben » Wed Jan 10, 2001 5:29 am

Hello,
By the way, how many interrupt levels consume OSSignalMsgQ()?

Regards
Luben

luben
 
Posts: 324
Joined: Sun Nov 19, 2000 12:00 am
Location: Sofia, Bulgaria


Return to Feature Requests

Who is online

Users browsing this forum: No registered users and 2 guests

cron