source: rtems/cpukit/posix/src/pspin.c @ eb448eec

4.115
Last change on this file since eb448eec was eb448eec, checked in by Sebastian Huber <sebastian.huber@…>, on 07/19/13 at 13:18:08

posix: Create spinlock implementation header

Move implementation specific parts of spinlock.h and spinlock.inl into
new header file spinlockimpl.h. The spinlock.h contains now only the
application visible API.

  • Property mode set to 100644
File size: 1.5 KB
Line 
1/*
2 *  Spinlock Manager
3 *
4 *  DESCRIPTION:
5 *
6 *  This package is the implementation of the Spinlock Manager.
7 *
8 *  Directives provided are:
9 *
10 *     + create a spinlock
11 *     + get an ID of a spinlock
12 *     + delete a spinlock
13 *     + acquire a spinlock
14 *     + release a spinlock
15 *
16 *  COPYRIGHT (c) 1989-2008.
17 *  On-Line Applications Research Corporation (OAR).
18 *
19 *  The license and distribution terms for this file may be
20 *  found in the file LICENSE in this distribution or at
21 *  http://www.rtems.com/license/LICENSE.
22 */
23
24#if HAVE_CONFIG_H
25#include "config.h"
26#endif
27
28#include <limits.h>
29
30#include <rtems/system.h>
31#include <rtems/config.h>
32#include <rtems/posix/spinlockimpl.h>
33
34/**
35 *  @brief _POSIX_Spinlock_Manager_initialization
36 */
37
38void _POSIX_Spinlock_Manager_initialization(void)
39{
40  _Objects_Initialize_information(
41    &_POSIX_Spinlock_Information,    /* object information table */
42    OBJECTS_POSIX_API,               /* object API */
43    OBJECTS_POSIX_SPINLOCKS,         /* object class */
44    Configuration_POSIX_API.maximum_spinlocks,
45                                     /* maximum objects of this class */
46    sizeof( POSIX_Spinlock_Control ),/* size of this object's control block */
47    true,                            /* true if the name is a string */
48    _POSIX_PATH_MAX                  /* maximum length of each object's name */
49#if defined(RTEMS_MULTIPROCESSING)
50    ,
51    false,                           /* true if this is a global object class */
52    NULL                             /* Proxy extraction support callout */
53#endif
54  );
55}
Note: See TracBrowser for help on using the repository browser.