Thanks for the reply.
On Fri, Mar 11, 2011 at 4:25 PM, Eric Decker <[email protected]> wrote: > > You don't specify what platform you are building for. Please do so in the > future it will make > it easier to answer your question. > > I am working on TelosB. > Most embedded processors include RAM and Flash based ROM on chip. When > compiling the toolchain > will tell you how much space it thinks your program has taken up in code > space (ROM, really flash) and > how much in RAM. > > On Fri, Mar 11, 2011 at 12:23 PM, Xiaohui Liu <[email protected]> wrote: > >> Hi, >> >> When I build my application, it says >> 47652 bytes in ROM >> 9426 bytes in RAM. >> What exactly consists of the content in ROM and RAM? >> > > >> Where are global variables stored, ROM or RAM? >> > > if a global variable is listed as "const" it goes in ROM. > > What variables are "const"? Do you mean using keyword "const" when declaring the variable? If a global variable is initilized it goes into ".data" and there is a block > of ROM that contains all the initilized data values. > On start up this block is copied into the .data section that actually lives > in RAM. > > If a global variable isn't initilized then it goes into the ".bss" section. > It gets zero'd on start up. The name is ancient and comes > from an old old old (maybe before you were born, gosh that's fun to say) > IBM assembler directive. BAL (Basic Assembly Language). > > >> What is .bss? >> > > Google is your friend. I did a simple google search for "what is .bss" > and got the answer. But that doesn't answer the question > in the context you are asking. I don't know what to point you at. This is > stuff I've picked up over the years. Probably by asking someone. Also I > was in on this stuff when it was happening the first time. Sorry I don't > have a better answer. > > >> What is the resulting .ihex file? >> > > I don't know what you are trying to ask. I don't understand the question. > I mean what is in the main.ihex generated? What is the file for? > > > >> According to this >> thread<http://mail.millennium.berkeley.edu/pipermail/tinyos-help/2008-August/035680.html>, >> data and global variables are in RAM, what are the "data" here, can anyone >> give some examples of such data? >> > > That thread talks about the micaz which is an Atmel processor. Is that the > processor you are building for? > > No, I'm building for msp430. > "data" refers to initilized data. See above. Other global variables get > put into bss and is zero'd. > > If you want to see the layout of your program you can use one of the > toolchain programs. For the msp430 these are > msp430-nm and msp430-objdump. Play with them and see what is there. > > >> >> When a program is downloaded into a mote, where is it stored? >> > > The code is flashed into ..... the flash. This is the ROM. And then > typically there is a reset vector that determines > the first PC (PC= program counter, not personal computer, in this context) > and the program begins to execute. What > happens next depends on the instructions but typically bss will get zero'd > and data will get copied down from ROM into > the appropriate RAM area. > > If power is lost, yes the RAM gets lost. > > >> Is data stored in RAM? If yes, will it be lost if mote is powered off just >> like all data in memory is lost when a PC is turned off? >> >> The controller fetches code instructions from ROM and data from RAM when >> executing a program, is this understanding right? >> > > Depends on the instruction being executed. > > I would recommend you find a reasonable introduction to how computers work > at the lower layer. I don't know one off the top > of my head. Try a google search for "How do CPUs work". > > >> >> Thanks for your clarification. I wish I could organize these random >> questions in a more systematic manner. >> > > See how much you can figure out on your own first. Do as much homework as > you can first. But keep in mind > getting pointed in the right direction can be very very helpful too so keep > it balanced. > > eric > > >> -- >> -Xiaohui Liu >> >> _______________________________________________ >> Tinyos-help mailing list >> [email protected] >> https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help >> > > > > -- > Eric B. Decker > Senior (over 50 :-) Researcher > > > -- -Xiaohui Liu
_______________________________________________ Tinyos-help mailing list [email protected] https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
