Changeset ff14c520 in mainline for generic/src/proc/task.c


Ignore:
Timestamp:
2006-03-16T22:31:39Z (19 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
93165be
Parents:
37c57f2
Message:

It is now possible to associate symbolic names with both threads and tasks.
More verbose kconsole threads, tasks and scheduler commands.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • generic/src/proc/task.c

    r37c57f2 rff14c520  
    6363 *
    6464 * @param as Task's address space.
     65 * @param name Symbolic name.
    6566 *
    6667 * @return New task's structure
    6768 *
    6869 */
    69 task_t *task_create(as_t *as)
     70task_t *task_create(as_t *as, char *name)
    7071{
    7172        ipl_t ipl;
     
    7980        list_initialize(&ta->tasks_link);
    8081        ta->as = as;
     82        ta->name = name;
    8183
    8284       
     
    102104/** Create new task with 1 thread and run it
    103105 *
     106 * @param programe_addr Address of program executable image.
     107 * @param name Program name.
     108 *
    104109 * @return Task of the running program or NULL on error
    105110 */
    106 task_t * task_run_program(void *program_addr)
     111task_t * task_run_program(void *program_addr, char *name)
    107112{
    108113        as_t *as;
     
    120125        }
    121126       
    122         task = task_create(as);
     127        task = task_create(as, name);
    123128        t = thread_create(uinit, (void *)((elf_header_t *)program_addr)->e_entry,
    124                           task, THREAD_USER_STACK);
     129                          task, 0, "uinit");
    125130       
    126131        /*
     
    149154                t = list_get_instance(cur, task_t, tasks_link);
    150155                spinlock_lock(&t->lock);
    151                 printf("Task: %Q ActiveCalls: %d", t->taskid,
    152                       atomic_get(&t->active_calls));
     156                printf("%s: address=%P, taskid=%Q, as=%P, ActiveCalls: %d",
     157                        t->name, t, t->taskid, t->as, atomic_get(&t->active_calls));
    153158                for (i=0; i < IPC_MAX_PHONES; i++) {
    154159                        if (t->phones[i].callee)
Note: See TracChangeset for help on using the changeset viewer.