Hi,

I thought that the compiler for the MSP430 architecture would simply 
ignore the packet attribute.

Even if the code executes on the motes, some compilers might ignore the 
packet attribute. This results in the packet format not being equal on 
all platforms, essentially meaning that motes from different platforms 
cannot communicate.

In TinyOS 2.x the nx_ types were introduced (like nx_uint8_t) that 
should be used for packet structs. The nx_ types ensure the same 
endianeness and the same data packing for all platforms.

Cheers,
Urs

Philip Levis wrote:
> On Apr 13, 2008, at 7:32 AM, fatima zohra wrote:
>> hello,
>> while reading the TinyOS programmation manual here, i came across  
>> this important Hint :
>>
>> Programming Hint 14: Never, ever use the "packed" attribute.
>>
>>
>> can anyone explain to me why is it so important to notice this  
>> problem ?? is it a big issue if we use packed attribute ?
> 
> Because if you used the packed attribute, words will not necessarily  
> be aligned on word boundaries. Some architectures (such as the MSP430  
> of Telos nodes) require words be aligned on word boundaries, or return  
> undefined results. So if you use the packed attribute, you could have  
> code that cannot work correctly.
> 
> Phil
_______________________________________________
Tinyos-help mailing list
[email protected]
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Reply via email to