Commit Graph

64 Commits

Author SHA1 Message Date
Joel Sherrill
bac7b61449 Include memory for Ada task stacks. 1998-05-18 16:37:00 +00:00
Joel Sherrill
10b3c9b3ef Added default value for CONFIGURE_MAXIMUM_POSIX_THREADS since it is
used to calculate the amount of memory used by tasks whether the
POSIX API is enabled or disabled.
1998-05-04 12:35:22 +00:00
Joel Sherrill
b7be9c30d2 Removed redundant "* 1024" which exploded the size of the workspace. 1998-04-30 11:41:09 +00:00
Joel Sherrill
308aed9b39 Added numerous entries to make the memory calculation more accurate:
+ POSIX threads
  + Ada tasks
  + POSIX threads API support
  + POSIX condition variables
  + POSIX keys (still do not account for data fields)
  + POSIX mutexes
  + POSIX queued signals
  + added macro for extra memory for task stacks
  + default value for CONFIGURE_MAXIMUM_FAKE_ADA_TASKS
  + extra memory for Ada task stacks
1998-04-27 13:49:42 +00:00
Joel Sherrill
4390882539 Changed to account for libio's maximum_semaphores as well as its
memory requirements.

Also added variable to tell libio how many file descriptors to allocate.
1998-04-18 17:24:56 +00:00
Joel Sherrill
bd9c3d1e76 Numerous changes which in total greatly reduced the amount of source
code in each BSP's bspstart.c.  These changes were:

  + confdefs.h now knows libio's semaphore requirements
  + shared/main.c now copies Configuration to BSP_Configuration
  + shared/main.c fills in the Cpu_table with default values

This removed the need for rtems_libio_config() and the constant
BSP_LIBIO_MAX_FDS in every BSP.  Plus now the maximum number of open
files can now be set on the gcc command line.
1998-04-15 20:50:31 +00:00
Joel Sherrill
0451b44f36 Per suggestion from Eric Norum, went from one initial extension set
to multiple.  This lets the stack check extension be installed
at system initialization time and avoids the BSP having to
even know about its existence.
1998-04-15 00:02:10 +00:00
Joel Sherrill
01a49905ae Account for interrupt stack space 1998-04-14 22:56:31 +00:00
Joel Sherrill
ab97da95b3 Added stack checker extension 1998-04-14 21:30:10 +00:00
Joel Sherrill
3b89891244 Now accounts for region used by RTEMS malloc and extension used
by newlib.
1998-04-14 20:54:26 +00:00
Joel Sherrill
a66186ec6a Added misisng line continuation. 1998-02-20 19:57:53 +00:00
Joel Sherrill
b3dcd9a271 Accounted for fixed system overhead. 1998-02-19 22:54:35 +00:00
Joel Sherrill
60b791ada1 updated copyright to 1998 1998-02-17 23:46:28 +00:00
Joel Sherrill
0312defbeb Patch from Ralf Corsepius to reduce the amount of memory consumed by
the workspace by default.
1998-02-04 15:35:26 +00:00
Joel Sherrill
4f7fd59a87 Added CONFIGURE_GNAT_KEYS to correct the number of keys configured
for GNAT.  It was the number of Ada tasks when in fact the run-time
only required a single key.

Also added the CONFIGURE_MAXIMUM_FAKE_ADA_TASKS constant to account
for resources allocated for each non-Ada task/thread which invokes
the Ada run-time implicitly through an Ada call.
1997-12-23 16:03:43 +00:00
Joel Sherrill
cb4cf6a75a Added CONFIGURE_MEMORY_USER_OVERHEAD constant per Chris Johns request. 1997-11-18 22:30:51 +00:00
Joel Sherrill
98e4ebf594 Fixed typo in the pointer to the license terms. 1997-10-08 15:45:54 +00:00
Joel Sherrill
b61e6e1b14 Added GNAT configuration parameters. 1997-08-04 21:43:36 +00:00
Joel Sherrill
2a02b0abd5 Added postswitch extension. 1997-07-09 23:50:45 +00:00
Joel Sherrill
03f2154e51 headers updated to reflect new style copyright notice as part
of switching to the modified GNU GPL.
1997-04-22 17:20:27 +00:00
Joel Sherrill
eafd6989b7 enhanced rtems_shutdown_executive to insure that no attempt will
be made to shut the system down when it is down.
1997-04-09 20:03:35 +00:00
Joel Sherrill
9a11e1ff0d was checking for null cpu_table -- short have been checking configuration
table.
1997-04-02 14:58:19 +00:00
Joel Sherrill
254b445071 This set of changes is the build of what was required to convert to
GNU autoconf.  This is the first large step in allowing an RTEMS
user to perform a one-tree build (per crossgcc FAQ) including RTEMS
in the build process.  With this change RTEMS is configured in
built in the same style as the GNU tools, yet retains the basic
structure of its traditional Makefiles (ala Tony Bennett).
Jiri Gaisler (jgais@wd.estec.esa.nl) deserves (and received)
a big thank you for doing this.

There are still issues to be resolved but as of this commit, all target
which can be built on a linux host have been using a modified version
of the source Jiri submitted.  This source was merged and most targets
built in the tree before this commit.

There are some issues which remain to be resolved but they are primarily
related to host OS dependencies, script issues, the use of gawk
for hack_specs, and the dependence on gcc snapshots.  These will
be resolved.
1997-04-01 23:07:52 +00:00
Joel Sherrill
f7e46cf019 With the transition from command line macro definitions to targopts.h,
it was necessary to include system.h before checking if anything was
defined.
1997-01-28 23:35:01 +00:00
Joel Sherrill
503dc05890 switched from "STATIC INLINE" to "RTEMS_INLINE_ROUTINE" 1996-07-03 14:20:03 +00:00
Joel Sherrill
7f13a93288 fields for init threads stuff said tasks. 1996-06-14 15:49:31 +00:00
Mark Johannes
4334949d02 added maximum_queued_signals to _POSIX_Default_configuration 1996-06-13 21:01:21 +00:00
Joel Sherrill
eb0551f312 added posix configuration parameter maximum_queued_signals. 1996-06-13 20:47:31 +00:00
Joel Sherrill
3a075f5d18 now passing maximum_queued_signals to posix signals manager initialization 1996-06-13 20:46:43 +00:00
Joel Sherrill
e89f8cacbf Added include so _POSIX_signals_Manager_initialization is prototyped. 1996-06-13 16:42:51 +00:00
Joel Sherrill
2e0ebd11ad added initialization of posix signal manager. 1996-06-12 22:49:33 +00:00
Joel Sherrill
f39b01e676 added an assert if a pthread_t is not the same size as an Objects_Id 1996-06-03 21:08:16 +00:00
Joel Sherrill
be1c11edab tests now specify whether using posix initialization threads table
or rtems initialization table in configuration table
1996-05-29 22:48:26 +00:00
Joel Sherrill
5240c71c52 fixed support for posix initialization threads table 1996-05-29 20:58:45 +00:00
Joel Sherrill
d9a0689e35 Addressed RTEMS API initialization tasks table in a system without
RTEMS initialization tasks.
1996-05-29 16:07:21 +00:00
Joel Sherrill
99f9dffaf4 Added default POSIX API configuration table. 1996-05-29 16:05:28 +00:00
Joel Sherrill
c627b2a3a1 split the inclusion of "EXTERN" data based on whether it was sapi,
score, rtems api, or posix api related.
1996-05-28 21:40:52 +00:00
Joel Sherrill
c6fa38c006 added maximum keys 1996-05-28 19:29:51 +00:00
Joel Sherrill
962c9b65f2 new file 1996-05-28 16:33:11 +00:00
Joel Sherrill
da33d26358 added ifndef's for the POSIX maximum field in the POSIX api configuration table 1996-05-28 16:18:34 +00:00
Joel Sherrill
d4b4487779 added posix api initialization call to init.c
deleted a blank line in rtemsapi.c
1996-05-28 16:17:01 +00:00
Joel Sherrill
2eba45de91 made posix configuration information conditional so configurations wanting
only the rtems api don't have to include it.
1996-05-28 14:16:45 +00:00
Joel Sherrill
e6d4b1d086 added initial posix configuration support 1996-05-28 13:13:34 +00:00
Joel Sherrill
1a8fde6ca2 Removed prototyes for static inline routines and moved the comments into
the inline implementation.   The impetus for this was twofold.  First,
it is incorrect to have static inline prototypes when using the macro
implementation.  Second, this reduced the number of lines in the include
files seen by rtems.h by about 2000 lines.

Next we restricted visibility for the inline routines to inside the
executive itself EXCEPT for a handful of objects.  This reduced the
number of include files included by rtems.h by 40 files and reduced
the lines in the include files seen by rtems.h by about 6000 lines.

In total, these reduced the compile time of the entire RTEMS tree by 20%.
This results in about 8 minutes savings on the SparcStation 10 morgana.
1996-03-06 21:34:57 +00:00
Joel Sherrill
66d9e3ad29 Changed io manager initialization routine to not be static and added it here. 1996-02-21 22:37:55 +00:00
Joel Sherrill
4ff19203e0 changed io manager initialization routine to not be static 1996-02-21 22:37:18 +00:00
Joel Sherrill
56d34e6ca9 Removed the internal thread objects and dispersed its contents to
the thread handler (IDLE), MPCI object (SYSI now MP Receive)
and initialize_executive_early (IO initialization).  The SYSI task
no longer exists in a single processor configuration.  This reduces
single processor Workspace requirements by a TCB and a stack which
is often larger than the minimum stack size.  Moving the IO initialization
plus accompanying BSP hooks eliminated an initialization ordering problem
in which a global task could be created before the MPCI was initialized.
1996-02-21 14:32:02 +00:00
Joel Sherrill
f972294dc7 idle thread now created before system initialization thread.
Also system initialization thread only created in MP systems.
1996-02-14 18:59:37 +00:00
Joel Sherrill
389fa85047 Moved some initialization from the system initialization thread to
initialize_executive_early.  This was done to clear up an ordering problem
in which global tasks could be created before the MPCI layer was initialized.
1996-02-14 17:06:40 +00:00
Joel Sherrill
94b3ec5970 changed post task extension from user set to api set and added flag
in each thread which must be set when the post switch extension is to be run.
1996-02-13 22:14:48 +00:00