Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
03/04/10 08:35
Read: times


 
#173825 - Debugger != Simulator
Responding to: ???'s previous message
Munish Kumar said:
... in the debugger (sic), all XRAM locations are initialized to 0

No, it's not the Debugger which does that - that's the Simulator.

I think there should be atlest an option for this in simulator whether to fill uninitialized location with random data in order to get a closer approximation of the real world.

But the real-world data may not be "random" - there may well be features of the specific hardware that tend to make it start with a certain set of values.

Those values may be "random" in that you couldn't predict them in advance of first seeing the particular unit, but might be "constant" for that particular unit.
And different for all other units.

Or it could be the case that 98% of units start with RAM at all zeros - so you'd only notice this bug on the 2%.

Or your first Batch might all start up at zeros - so you'd only notice this bug on a later batch where that wasn't the case.

Or it could be that 98% of the RAM starts at zero - so you'd only notice this bug if your array happened to fall immediately before one of the 2% of "non-zero" locations.

Clearly, you can't simulate all this stuff!

As Erik so often says, the fact that you've "tested" it and not noticed any problems does not prove that there are no problems!

Another option, of course, is to have your startup code zero all RAM for you...

List of 35 messages in thread
TopicAuthorDate
Problem with strings in C            01/01/70 00:00      
   You missed a fundamental point on how 'C' does strings            01/01/70 00:00      
      I think you don't need to be mysterious here, Andy            01/01/70 00:00      
         Strings in 'C' *must* be NUL-terminated            01/01/70 00:00      
   A little whitespace goes a long way            01/01/70 00:00      
   conversion on top of conversion            01/01/70 00:00      
      Null termination            01/01/70 00:00      
         Think about it...            01/01/70 00:00      
         so is your problem solved or not?            01/01/70 00:00      
            "lucky" or "unlucky"?            01/01/70 00:00      
               rather            01/01/70 00:00      
                  Yes - that's what I meant!            01/01/70 00:00      
            That, in fact, IS it            01/01/70 00:00      
               how true            01/01/70 00:00      
               Debugger != Simulator            01/01/70 00:00      
               if that is true, find another job!            01/01/70 00:00      
                  Does Keil initialise non-static data?            01/01/70 00:00      
                     the very first thing ...            01/01/70 00:00      
                        this is not the case..            01/01/70 00:00      
                           Mr C hater:            01/01/70 00:00      
                              this IS part of the C-hatred            01/01/70 00:00      
                                 but you do            01/01/70 00:00      
                                    and what are the unzeroed values, then?            01/01/70 00:00      
                                       I have no idea            01/01/70 00:00      
                                    Many Reasons for not clearing (all of) RAM            01/01/70 00:00      
                                       I actually gave an example.            01/01/70 00:00      
                                       Another Example...            01/01/70 00:00      
                                          what I wold do            01/01/70 00:00      
                                             I Elect to Totally Disagree            01/01/70 00:00      
                                                a reply            01/01/70 00:00      
                                                   I'll take the time to reply when...            01/01/70 00:00      
                                                   It's too easy            01/01/70 00:00      
                                                      Auro variables are always undefined            01/01/70 00:00      
                                                Seconded!            01/01/70 00:00      
                                                   makes assumptions?            01/01/70 00:00      

Back to Subject List