Subject:
|
Re: task switching strategy?
|
Newsgroups:
|
lugnet.robotics.rcx.legos
|
Date:
|
Sat, 22 Apr 2000 02:44:42 GMT
|
Viewed:
|
1683 times
|
| |
| |
On Fri, 21 Apr 2000, Steve Morris wrote:
<snip lots of discussion, some of which I understand now and the rest of
which will probably make more sense after I take OS next semester.>
> So what am I missing? Certainly the current scheme is elegant;
> not a trivial issue. That makes it easy to understand and
> maintain. Quite possibly the current CPU overhead is trivial and
> my suggestions would have no benefit.
I think the big thing is that virtually no one write CPU intensive code
for legOS. As a result, while the overhead may not be trivial (i.e., it
may eat tons of time) it isn't particularly relevant, since no one is
using that time.
One other thing you may wish to consider- if the code is overly
complicated, it may eat into memory by increasing the kernel size. This
probably shouldn't be a problem, but then again you clearly know more
about your intended implementation than I do.
> It is only in my gut
> that the idea of extra work every millisecond seems bad. Perhaps
> the actual numbers are acceptable. For example a 100 usec overhead
> of 10% would be fine. Perhaps someone has toggled a motor bit
> at the beginning and end of the timer interrupt and measured the
> time on a scope?
Not that they've reported here. Kekoa Proudfoot would probably be the
best one to ask, though.
> By the way, in spite of these concerns I think the code is quite
> excellent. It is clear and easy to read. I picked up the
> major points in just a small number of hours of code reading.
> This code is a delight to read. Also lest I seem merely a
> complainer I hereby volunteer to experiment with any of these
> potential changes if anyone thinks they might be beneficial.
If you have time, I have a couple of programs around that (once ported to
0.2.3- mid-May?) should be an excellent test of whether or not your
changes help in CPU-intensive apps.
> More likely is that the changes I propose have negative side
> effects that I don't understand which will be clearly
> corrected by some poster.
Only if Markus actually shows up ;)
Good luck...
Luis
-----------------------------------------------------------------------
"As an engineer, it's important to look yourself in the eye in the
mirror every morning, and remind yourself that 'marketing is
everything,' and engineering doesn't matter a tinker's damn."
-Keith Bostic
-----------------------------------------------------------------------
|
|
Message is in Reply To:
| | task switching strategy?
|
| I've been wandering through the kernal comparing it to similar kernals I have known or written, trying to understand the design choices. It appears that task are only switched at the 1ms timer interrupt and at yield() function call. yield() is only (...) (25 years ago, 21-Apr-00, to lugnet.robotics.rcx.legos)
|
2 Messages in This Thread:
- Entire Thread on One Page:
- Nested:
All | Brief | Compact | Dots
Linear:
All | Brief | Compact
|
|
|
|