Changeset 0a8f070 in mainline for uspace/lib/c/include/ipc/taskman.h


Ignore:
Timestamp:
2019-08-07T02:33:03Z (6 years ago)
Author:
Matthieu Riolo <matthieu.riolo@…>
Children:
fe86d9d
Parents:
103939e
git-author:
Michal Koutný <xm.koutny+hos@…> (2015-08-16 16:04:14)
git-committer:
Matthieu Riolo <matthieu.riolo@…> (2019-08-07 02:33:03)
Message:

Create taskman server (extracts task-related operations from naming service)

  • Exploits initial phones connected to spawn parent instead of NS.
  • session_ns changed to session_primary (setup during taskman-loader handshake).
  • Task creation moved from NS to taskman (no clonable services anymore).
  • Other task-related operations implementation is to come (task_retval is temporarily dummy).
  • Async framework: implicit connections — create fibrils for calls that arrived through initial phone.

Conflicts:

abi/include/abi/ipc/methods.h
boot/Makefile.common
uspace/Makefile
uspace/app/trace/ipcp.c
uspace/lib/c/generic/async.c
uspace/lib/c/generic/libc.c
uspace/lib/c/generic/loader.c
uspace/lib/c/generic/ns.c
uspace/lib/c/generic/private/async.h
uspace/lib/c/generic/private/ns.h
uspace/lib/c/generic/task.c
uspace/lib/c/include/async.h
uspace/lib/c/include/ipc/services.h
uspace/lib/c/include/ipc/taskman.h
uspace/lib/c/include/loader/pcb.h
uspace/lib/c/include/ns.h
uspace/srv/loader/main.c
uspace/srv/ns/clonable.c
uspace/srv/ns/ns.c

File:
1 moved

Legend:

Unmodified
Added
Removed
  • uspace/lib/c/include/ipc/taskman.h

    r103939e r0a8f070  
    11/*
    2  * Copyright (c) 2009 Martin Decky
     2 * Copyright (c) 2015 Michal Koutny
    33 * All rights reserved.
    44 *
     
    2727 */
    2828
    29 /** @addtogroup ns
     29/** @addtogroup libcipc
    3030 * @{
    3131 */
     32/** @file
     33 */
    3234
    33 #ifndef NS_CLONABLE_H__
    34 #define NS_CLONABLE_H__
     35#ifndef LIBC_IPC_TASKMAN_H_
     36#define LIBC_IPC_TASKMAN_H_
    3537
    3638#include <ipc/common.h>
    37 #include <ipc/services.h>
    38 #include <abi/ipc/interfaces.h>
    39 #include <stdbool.h>
    4039
    41 extern errno_t ns_clonable_init(void);
    4240
    43 extern bool ns_service_is_clonable(service_t, iface_t);
    44 extern void ns_clonable_register(ipc_call_t *);
    45 extern void ns_clonable_forward(service_t, iface_t, ipc_call_t *);
     41typedef enum {
     42        TASKMAN_HELLO = IPC_FIRST_USER_METHOD,
     43} taskman_request_t;
     44
     45typedef enum {
     46        TASKMAN_CONNECT_TO_LOADER = 0,
     47        TASKMAN_LOADER_TO_NS,
     48        TASKMAN_LOADER_CALLBACK,
     49        TASKMAN_CONTROL
     50} taskman_interface_t;
    4651
    4752#endif
    4853
    49 /**
    50  * @}
     54/** @}
    5155 */
Note: See TracChangeset for help on using the changeset viewer.