source: rtems/c/src/exec/posix/include/limits.h @ 05195890

4.104.114.84.95
Last change on this file since 05195890 was 05195890, checked in by Joel Sherrill <joel.sherrill@…>, on 05/22/96 at 22:31:51

These files have been modified in the initial pass at getting the portion
of the POSIX API necessary to support the GNAT runtime to initially compile.
We now have verified that the specifications for the necessary routines
are correct per the POSIX standards we have.

The removed files were moved to newlib as they were duplicates of files
already included there.

  • Property mode set to 100644
File size: 5.4 KB
Line 
1/* limits.h
2 *
3 *  This file lists the minimums for the limits set by each of
4 *  the POSIX features subsets.
5 *
6 *  XXX: Careful attention needs to be paid to section 2.8 in 1003.1b-1993
7 *       to segregrate the variables below based on their "class" according
8 *       to our implementation.  We also need to set the Run-Time Invariant
9 *       and other related values.
10 *
11 *  $Id$
12 */
13
14#include_next <limits.h>
15
16#ifndef __POSIX_LIMITS_h
17#define __POSIX_LIMITS_h
18
19/* really only to get min stack size from <rtems/score/cpu.h> */
20#include <rtems/system.h>
21
22/****************************************************************************
23 ****************************************************************************
24 *                                                                          *
25 *         P1003.1b-1993 defines the constants below this comment.          *
26 *                                                                          *
27 ****************************************************************************
28 ****************************************************************************/
29
30#define _POSIX_AIO_LISTIO_MAX   2
31#define _POSIX_AIO_MAX          1
32#define _POSIX_ARG_MAX          4096
33#define _POSIX_CHILD_MAX        6
34#define _POSIX_DELAYTIMER_MAX   32
35#define _POSIX_LINK_MAX         8
36#define _POSIX_MAX_CANON        255
37#define _POSIX_MAX_INPUT        255
38#define _POSIX_MQ_OPEN_MAX      8
39#define _POSIX_MQ_PRIO_MAX      32
40#define _POSIX_NAME_MAX         14
41#define _POSIX_NGROUPS_MAX      0
42#define _POSIX_OPEN_MAX         16
43#define _POSIX_PATH_MAX         255
44#define _POSIX_PIPE_BUF         512
45#define _POSIX_RTSIG_MAX        8
46#define _POSIX_SEM_NSEMS_MAX    256
47#define _POSIX_SEM_VALUE_MAX    32767
48#define _POSIX_SIGQUEUE_MAX     32
49#define _POSIX_SSIZE_MAX        32767
50#define _POSIX_STREAM_MAX       8
51#define _POSIX_TIMER_MAX        32
52#define _POSIX_TZNAME_MAX       3
53
54/*
55 *  Definitions of the following may be omitted if the value is >= stated
56 *  minimum but is indeterminate.
57 */
58
59#define AIO_LISTIO_MAX          2
60#define AIO_MAX                 1
61#define AIO_PRIO_DELTA_MAX      0
62#define ARG_MAX                 4096
63#define CHILD_MAX               6
64#define DELAYTIMER_MAX          32
65#define MQ_OPEN_MAX             8
66#define MQ_PRIO_MAX             32
67#define OPEN_MAX                16
68#define PAGESIZE                1
69#define RTSIG_MAX               8
70#define SEM_NSEMS_MAX           256
71#define SEM_VALUE_MAX           32767
72#define SIGQUEUE_MAX            32
73#define STREAM_MAX              8
74#define TIMER_MAX               32
75#define TZNAME_MAX              3
76
77/*
78 *  Pathname Variables
79 */
80
81#define LINK_MAX                8
82#define MAX_CANON               255
83#define MAX_INPUT               255
84#define NAME_MAX                14
85#define PATH_MAX                255
86#define PIPE_BUF                512
87
88/*
89 *  Invariant values
90 */
91
92#define SSIZE_MAX               32767
93
94/*
95 *  Maximum Values
96 */
97
98#define _POSIX_CLOCKRES_MIN      0   /* in nanoseconds */
99
100/****************************************************************************
101 ****************************************************************************
102 *                                                                          *
103 *         P1003.1c/D10 defines the constants below this comment.           *
104 *
105 *  XXX: doc seems to have printing problems in this table :(
106 *                                                                          *
107 ****************************************************************************
108 ****************************************************************************/
109
110#define _POSIX_LOGIN_NAME_MAX                9
111#define _POSIX_THREAD_DESTRUCTOR_ITERATIONS  4
112#define _POSIX_THREAD_KEYS_MAX               28
113#define _POSIX_THREAD_THREADS_MAX            64
114#define _POSIX_TTY_NAME_MAX                  9
115
116/*
117 *  Definitions of the following may be omitted if the value is >= stated
118 *  minimum but is indeterminate.
119 */
120
121#define LOGIN_NAME_MAX                      _POSIX_LOGIN_NAME_MAX
122#define TTY_NAME_MAX                        _POSIX_TTY_NAME_MAX
123#define PTHREAD_DESTRUCTOR_ITERATIONS       _POSIX_THREAD_DESTRUCTOR_ITERATIONS
124#define PTHREAD_STACK_MIN                   CPU_STACK_MINIMUM_SIZE
125
126/*
127 *  The maximum number of keys (PTHREAD_KEYS_MAX) and threads
128 *  (PTHREAD_THREADS_MAX) are configurable and may exceed the minimum.
129 *
130#define PTHREAD_KEYS_MAX                    _POSIX_THREAD_KEYS_MAX
131#define PTHREAD_THREADS_MAX                 _POSIX_THREAD_THREADS_MAX
132*/
133
134
135/****************************************************************************
136 ****************************************************************************
137 *                                                                          *
138 *         P1003.4b/D8 defines the constants below this comment.            *
139 *                                                                          *
140 ****************************************************************************
141 ****************************************************************************/
142
143#define _POSIX_INTERRUPT_OVERRUN_MAX        32
144
145/*
146 *  Definitions of the following may be omitted if the value is >= stated
147 *  minimum but is indeterminate.
148 */
149
150#define INTERRUPT_OVERRUN_MAX               32
151
152/*
153 *  Pathname Variables
154 */
155
156#define MIN_ALLOC_SIZE     
157#define REC_MIN_XFER_SIZE   
158#define REC_MAX_XFER_SIZE   
159#define REC_INCR_XFER_SIZE 
160#define REC_XFER_ALIGN     
161#define MAX_ATOMIC_SIZE     
162
163#endif
164/* end of include file */
Note: See TracBrowser for help on using the repository browser.