Thank you , that's clear , it will help me a lot .
Now there's another thing I'd like to know please , due to the fact that circle os is monotask , any variable created is associated to an adress is unique , i.e. if thread A creates 2 variables i and j and that thread B uses i and j , it will use the variables created by thread A .
What I need to have , is a memory region for each thread , where every thread can have its own set of variables independently from other threads.
Dispatcher have to set a memory region to each task where it creates its own variables.
Let's say the threads I will create will not use more than 60 Bytes for creating multiple variables , 60 bytes ( a memory region of 60 Bytes in RW state ) + region code associated to the thread ( Read only ).
Well .. It could have been simple if an MPU was present , unfortunately it isn't the case and so I will have to implement a mechanism acting the same .
What I need to know is :
1) When a variable is created , what is done ? What assembly code is invoked ?
2) Some ideas about the memory choice for putting a association between a var name and an adress value ?
3) Where is placed the association "variable_name , type <---> adress in memory"