source: rtems/c/src/exec/sapi/src/posixapi.c @ 2e0ebd11

4.104.114.84.95
Last change on this file since 2e0ebd11 was 2e0ebd11, checked in by Joel Sherrill <joel.sherrill@…>, on 06/12/96 at 22:49:33

added initialization of posix signal manager.

  • Property mode set to 100644
File size: 2.3 KB
Line 
1/*
2 *  RTEMS API Initialization Support
3 *
4 *  NOTE:
5 *
6 *  COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994.
7 *  On-Line Applications Research Corporation (OAR).
8 *  All rights assigned to U.S. Government, 1994.
9 *
10 *  This material may be reproduced by or for the U.S. Government pursuant
11 *  to the copyright license under the clause at DFARS 252.227-7013.  This
12 *  notice must appear in all copies of this file and its derivatives.
13 *
14 *  $Id$
15 */
16
17#ifdef RTEMS_POSIX_API
18
19#include <assert.h>
20
21/*
22 *  POSIX_API_INIT is defined so all of the POSIX API
23 *  data will be included in this object file.
24 */
25
26#define POSIX_API_INIT
27
28#include <rtems/system.h>
29
30#include <sys/types.h>
31#include <rtems/config.h>
32#include <rtems/score/object.h>
33#include <rtems/posix/cond.h>
34#include <rtems/posix/config.h>
35#include <rtems/posix/key.h>
36#include <rtems/posix/mutex.h>
37#include <rtems/posix/priority.h>
38#include <rtems/posix/pthread.h>
39#include <rtems/posix/time.h>
40
41/*PAGE
42 *
43 *  _POSIX_API_Initialize
44 *
45 *  XXX
46 */
47
48posix_api_configuration_table _POSIX_Default_configuration = {
49  0,                             /* maximum_threads */
50  0,                             /* maximum_mutexes */
51  0,                             /* maximum_condition_variables */
52  0,                             /* maximum_keys */
53  0,                             /* number_of_initialization_tasks */
54  NULL                           /* User_initialization_tasks_table */
55};
56
57
58void _POSIX_API_Initialize(
59  rtems_configuration_table *configuration_table
60)
61{
62  posix_api_configuration_table *api_configuration;
63
64  /* XXX need to assert here based on size assumptions */
65
66  assert( sizeof(pthread_t) == sizeof(Objects_Id) );
67
68  api_configuration = configuration_table->POSIX_api_configuration;
69  if ( !api_configuration )
70    api_configuration = &_POSIX_Default_configuration;
71
72  _POSIX_signals_Manager_Initialization();
73
74  _POSIX_Threads_Manager_initialization(
75    api_configuration->maximum_threads,
76    api_configuration->number_of_initialization_tasks,
77    api_configuration->User_initialization_tasks_table
78  );
79 
80  _POSIX_Condition_variables_Manager_initialization(
81    api_configuration->maximum_condition_variables
82  );
83
84  _POSIX_Key_Manager_initialization( api_configuration->maximum_keys );
85
86  _POSIX_Mutex_Manager_initialization(
87    api_configuration->maximum_mutexes
88  );
89
90}
91
92#endif
93/* end of file */
Note: See TracBrowser for help on using the repository browser.