Hi,

That means that you have to implement your own memory management component
and define a parameterized interface that allows you to manage clients, so
in your application if a module needs dynamic memory its just connect to
this interface.Note that you will be allocating memory with your
implementation not malloc.

-Bill

On Mon, Dec 21, 2009 at 7:15 AM, Ricardo . <[email protected]> wrote:

> These give me a great help to understand these issues of dynamic memory,
> and for that thank you! I have just one more question:
>
> In "tinyos-programming.pdf" is said: "If your application requirements
> necessitate a
> dynamic memory pool, encapsulate it in a component and try to limit the set
> of users." -- This means that any code that uses dynamic memory should be
> done in a separate component? I see no relevance in this ... : S
>
> On Sun, Dec 20, 2009 at 9:37 PM, Faisal Aslam <
> [email protected]> wrote:
>
>> Dear Ricardo,
>>
>> > First of all thank you for your answer.
>> >
>> > Is slower because it has to find a contiguous space of memory large
>> enough
>> > to reserve, or is there another reason(s)?
>>
>> May be someone with more experience in C can give better reply on this.
>> However, it is slower for sure. It takes CPU cycle to manage memory, i.e.
>> to allocate and deallocate space.
>>
>> > If it is possible in all versions of TinyOS, why in some of the
>> literature
>> > says it is not possible? : S
>>
>> I do not know any literature that says it is not allowed to use dynamic
>> memory in TinyOS. One can write plan C code in TinyOS and C allows dynamic
>> memory allocation in MSP430 and AVR microcontroller. I know it because we
>> have done that.
>>
>> best regards,
>>
>> --
>> Faisal Aslam
>>
>> PhD Student
>> University of Freiburg
>> http://cone.informatik.uni-freiburg.de/people/aslam/
>> > On Fri, Dec 18, 2009 at 5:38 PM, Faisal Aslam <
>> > [email protected]> wrote:
>> >
>> >> Dear Ricardo,
>> >> Here is my take on your questions. See inline.
>> >>
>> >>
>> >> Ricardo . wrote:
>> >>
>> >>>
>> >>> Dear all,
>> >>>
>> >>> I need your help to clear up a question: my application needs dynamic
>> >>> memory, and literature that I've found some say it is not possible,
>> >>> other
>> >>> say it's possible but it is not efficient.
>> >>>
>> >>> My questions are:
>> >>>
>> >>> 1 - Which version of TinyOS is possible to use dynamic memory?
>> >>>
>> >> In all the versions. You can write pure C code in TinyOS and all
>> >> compilers
>> >> I know support dynamic memory.
>> >>
>> >>  2 - Any mote supports dynamic memory?
>> >>>
>> >> All motes.
>> >>
>> >>  3 - What is the reason for dynamic memory is not efficient?
>> >>> 4 - Using dynamic memory greatly affects the efficiency, or is almost
>> >>> imperceptible?
>> >>>
>> >> The answer of both question 3 and 4 is as follows. Dynamic memory means
>> >> that you cannot predict memory usage at compile time and could go out
>> of
>> >> memory easily. You have to deallocate memory yoursef carefully. There
>> >> are
>> >> more chances of complicated errors. The allocating and deallocating
>> >> memory
>> >> is slow process and your code will execute slower. The static memory
>> >> allocation is much more safer and faster.
>> >> You can also program your motes using Java. It has automatic garbage
>> >> collection and will give you "out of memory" error. It is usually safer
>> >> to
>> >> use Java then C. Unlike C in Java you cannot have segmentation fault.
>> >> You
>> >> can use data structure like Vector that will grow dynamically etc.
>> >>
>> >>
>> >>>
>> >>> I wonder if anyone knows explain some of these issues (preferably all
>> >>> =)),
>> >>> or if anyone know of any literature where I can get answers.
>> >>>
>> >>> Thankyou very much,
>> >>> --
>> >>> Ricardo
>> >>>
>> >>
>> >> --
>> >> Faisal Aslam
>> >>
>> >> University of Freiburg
>> >> http://cone.informatik.uni-freiburg.de/people/aslam/
>> >>
>> >>
>> > _______________________________________________
>> > Tinyos-help mailing list
>> > [email protected]
>> >
>> https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
>>
>>
>>
>>
>>
>
> _______________________________________________
> Tinyos-help mailing list
> [email protected]
> https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
>



-- 
Ing. Guillermo De Cesco
Invenio Ingenieria srl.
tel: (54)2944 442119
cel:(54)2944 15534750
web: www.invenioing.com
Av. Pioneros 4163 Dpto 6. CP(R8402AMH)
San Carlos de Bariloche.
Rio Negro, Argentina.
_______________________________________________
Tinyos-help mailing list
[email protected]
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Reply via email to