Hi,

On 09/01/2014 12:02 AM, Adam Lackorzynski wrote:
> l4_debugger_set_object_name() is the function to use. Tried checking the
> return value?
>   
Thanks, it's working now. I've misplaced the call of that function before.

I'm currently struggling with creating a new task. I guess, according to
the initial post of this mailing list thread, using the following
interface is deprecated?
https://os.inf.tu-dresden.de/L4/l4libman/l4_task_new.html

So I've found l4_factory_create_task in factory.h. Unfortunately, there
seems to be no example in ./l4/pkg how to use it.
My first try is the following:

>l4_cap_idx_t task_cap = l4re_util_cap_alloc();
>l4_fpage_t task_fpage = l4_fpage(l4re_env()->first_free_utcb, 1024,
L4_CAP_FPAGE_RW);
>l4_factory_create_task(l4re_env()->factory, task_cap, task_fpage);
>// Create thread, start thread control sequence ...
>l4_thread_control_bind((l4_utcb_t *)l4re_env()->first_free_utcb, task_cap);
>// Commit & shift first_free_utcb ...

But when executing the example, the states of all threads created are
set to 'dead'. I'm not sure about using first_free_utcb as start address
for the flex-page as it is used as a offset for threads' UTCBs normally.

Can you give a small working example for creating new tasks?
Basically, I want to create a new task for each thread demanded by my
end users. So the number of tasks and threads to create is variable.

Thanks!

Best regards,
Valentin Hauner

_______________________________________________
l4-hackers mailing list
[email protected]
http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers

Reply via email to