forked from Imagelibrary/rtems
2003-11-10 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* include/.cvsignore: Remove. * include/Makefile.am: Remove. * include/timesys.h: Remove. * .cvsignore: Remove. * ChangeLog: Remove. * Makefile.am: Remove. * README: Remove. * configure.ac: Remove. * tmtests.am: Remove. * tm01/.cvsignore: Remove. * tm01/Makefile.am: Remove. * tm01/system.h: Remove. * tm01/task1.c: Remove. * tm01/tm01.doc: Remove. * tm02/.cvsignore: Remove. * tm02/Makefile.am: Remove. * tm02/system.h: Remove. * tm02/task1.c: Remove. * tm02/tm02.doc: Remove. * tm03/.cvsignore: Remove. * tm03/Makefile.am: Remove. * tm03/system.h: Remove. * tm03/task1.c: Remove. * tm03/tm03.doc: Remove. * tm04/.cvsignore: Remove. * tm04/Makefile.am: Remove. * tm04/system.h: Remove. * tm04/task1.c: Remove. * tm04/tm04.doc: Remove. * tm05/.cvsignore: Remove. * tm05/Makefile.am: Remove. * tm05/system.h: Remove. * tm05/task1.c: Remove. * tm05/tm05.doc: Remove. * tm06/.cvsignore: Remove. * tm06/Makefile.am: Remove. * tm06/system.h: Remove. * tm06/task1.c: Remove. * tm06/tm06.doc: Remove. * tm07/.cvsignore: Remove. * tm07/Makefile.am: Remove. * tm07/system.h: Remove. * tm07/task1.c: Remove. * tm07/tm07.doc: Remove. * tm08/.cvsignore: Remove. * tm08/Makefile.am: Remove. * tm08/system.h: Remove. * tm08/task1.c: Remove. * tm08/tm08.doc: Remove. * tm09/.cvsignore: Remove. * tm09/Makefile.am: Remove. * tm09/system.h: Remove. * tm09/task1.c: Remove. * tm09/tm09.doc: Remove. * tm10/.cvsignore: Remove. * tm10/Makefile.am: Remove. * tm10/system.h: Remove. * tm10/task1.c: Remove. * tm10/tm10.doc: Remove. * tm11/.cvsignore: Remove. * tm11/Makefile.am: Remove. * tm11/system.h: Remove. * tm11/task1.c: Remove. * tm11/tm11.doc: Remove. * tm12/.cvsignore: Remove. * tm12/Makefile.am: Remove. * tm12/system.h: Remove. * tm12/task1.c: Remove. * tm12/tm12.doc: Remove. * tm13/.cvsignore: Remove. * tm13/Makefile.am: Remove. * tm13/system.h: Remove. * tm13/task1.c: Remove. * tm13/tm13.doc: Remove. * tm14/.cvsignore: Remove. * tm14/Makefile.am: Remove. * tm14/system.h: Remove. * tm14/task1.c: Remove. * tm14/tm14.doc: Remove. * tm15/.cvsignore: Remove. * tm15/Makefile.am: Remove. * tm15/system.h: Remove. * tm15/task1.c: Remove. * tm15/tm15.doc: Remove. * tm16/.cvsignore: Remove. * tm16/Makefile.am: Remove. * tm16/system.h: Remove. * tm16/task1.c: Remove. * tm16/tm16.doc: Remove. * tm17/.cvsignore: Remove. * tm17/Makefile.am: Remove. * tm17/system.h: Remove. * tm17/task1.c: Remove. * tm17/tm17.doc: Remove. * tm18/.cvsignore: Remove. * tm18/Makefile.am: Remove. * tm18/system.h: Remove. * tm18/task1.c: Remove. * tm18/tm18.doc: Remove. * tm19/.cvsignore: Remove. * tm19/Makefile.am: Remove. * tm19/system.h: Remove. * tm19/task1.c: Remove. * tm19/tm19.doc: Remove. * tm20/.cvsignore: Remove. * tm20/Makefile.am: Remove. * tm20/system.h: Remove. * tm20/task1.c: Remove. * tm20/tm20.doc: Remove. * tm21/.cvsignore: Remove. * tm21/Makefile.am: Remove. * tm21/system.h: Remove. * tm21/task1.c: Remove. * tm21/tm21.doc: Remove. * tm22/.cvsignore: Remove. * tm22/Makefile.am: Remove. * tm22/system.h: Remove. * tm22/task1.c: Remove. * tm22/tm22.doc: Remove. * tm23/.cvsignore: Remove. * tm23/Makefile.am: Remove. * tm23/system.h: Remove. * tm23/task1.c: Remove. * tm23/tm23.doc: Remove. * tm24/.cvsignore: Remove. * tm24/Makefile.am: Remove. * tm24/system.h: Remove. * tm24/task1.c: Remove. * tm24/tm24.doc: Remove. * tm25/.cvsignore: Remove. * tm25/Makefile.am: Remove. * tm25/system.h: Remove. * tm25/task1.c: Remove. * tm25/tm25.doc: Remove. * tm26/.cvsignore: Remove. * tm26/Makefile.am: Remove. * tm26/fptest.h: Remove. * tm26/system.h: Remove. * tm26/task1.c: Remove. * tm26/tm26.doc: Remove. * tm27/.cvsignore: Remove. * tm27/Makefile.am: Remove. * tm27/system.h: Remove. * tm27/task1.c: Remove. * tm27/tm27.doc: Remove. * tm28/.cvsignore: Remove. * tm28/Makefile.am: Remove. * tm28/system.h: Remove. * tm28/task1.c: Remove. * tm28/tm28.doc: Remove. * tm29/.cvsignore: Remove. * tm29/Makefile.am: Remove. * tm29/system.h: Remove. * tm29/task1.c: Remove. * tm29/tm29.doc: Remove. * tmck/.cvsignore: Remove. * tmck/Makefile.am: Remove. * tmck/system.h: Remove. * tmck/task1.c: Remove. * tmck/tmck.doc: Remove. * tmoverhd/.cvsignore: Remove. * tmoverhd/Makefile.am: Remove. * tmoverhd/dumrtems.h: Remove. * tmoverhd/empty.c: Remove. * tmoverhd/system.h: Remove. * tmoverhd/testtask.c: Remove. * tmoverhd/tmoverhd.doc: Remove.
This commit is contained in:
@@ -1,14 +0,0 @@
|
||||
aclocal.m4
|
||||
autom4te*.cache
|
||||
config.cache
|
||||
config.guess
|
||||
config.log
|
||||
config.status
|
||||
config.sub
|
||||
configure
|
||||
depcomp
|
||||
install-sh
|
||||
Makefile
|
||||
Makefile.in
|
||||
missing
|
||||
mkinstalldirs
|
||||
@@ -1,461 +0,0 @@
|
||||
2003-11-10 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* include/.cvsignore: Remove.
|
||||
* include/Makefile.am: Remove.
|
||||
* include/timesys.h: Remove.
|
||||
* .cvsignore: Remove.
|
||||
* ChangeLog: Remove.
|
||||
* Makefile.am: Remove.
|
||||
* README: Remove.
|
||||
* configure.ac: Remove.
|
||||
* tmtests.am: Remove.
|
||||
* tm01/.cvsignore: Remove.
|
||||
* tm01/Makefile.am: Remove.
|
||||
* tm01/system.h: Remove.
|
||||
* tm01/task1.c: Remove.
|
||||
* tm01/tm01.doc: Remove.
|
||||
* tm02/.cvsignore: Remove.
|
||||
* tm02/Makefile.am: Remove.
|
||||
* tm02/system.h: Remove.
|
||||
* tm02/task1.c: Remove.
|
||||
* tm02/tm02.doc: Remove.
|
||||
* tm03/.cvsignore: Remove.
|
||||
* tm03/Makefile.am: Remove.
|
||||
* tm03/system.h: Remove.
|
||||
* tm03/task1.c: Remove.
|
||||
* tm03/tm03.doc: Remove.
|
||||
* tm04/.cvsignore: Remove.
|
||||
* tm04/Makefile.am: Remove.
|
||||
* tm04/system.h: Remove.
|
||||
* tm04/task1.c: Remove.
|
||||
* tm04/tm04.doc: Remove.
|
||||
* tm05/.cvsignore: Remove.
|
||||
* tm05/Makefile.am: Remove.
|
||||
* tm05/system.h: Remove.
|
||||
* tm05/task1.c: Remove.
|
||||
* tm05/tm05.doc: Remove.
|
||||
* tm06/.cvsignore: Remove.
|
||||
* tm06/Makefile.am: Remove.
|
||||
* tm06/system.h: Remove.
|
||||
* tm06/task1.c: Remove.
|
||||
* tm06/tm06.doc: Remove.
|
||||
* tm07/.cvsignore: Remove.
|
||||
* tm07/Makefile.am: Remove.
|
||||
* tm07/system.h: Remove.
|
||||
* tm07/task1.c: Remove.
|
||||
* tm07/tm07.doc: Remove.
|
||||
* tm08/.cvsignore: Remove.
|
||||
* tm08/Makefile.am: Remove.
|
||||
* tm08/system.h: Remove.
|
||||
* tm08/task1.c: Remove.
|
||||
* tm08/tm08.doc: Remove.
|
||||
* tm09/.cvsignore: Remove.
|
||||
* tm09/Makefile.am: Remove.
|
||||
* tm09/system.h: Remove.
|
||||
* tm09/task1.c: Remove.
|
||||
* tm09/tm09.doc: Remove.
|
||||
* tm10/.cvsignore: Remove.
|
||||
* tm10/Makefile.am: Remove.
|
||||
* tm10/system.h: Remove.
|
||||
* tm10/task1.c: Remove.
|
||||
* tm10/tm10.doc: Remove.
|
||||
* tm11/.cvsignore: Remove.
|
||||
* tm11/Makefile.am: Remove.
|
||||
* tm11/system.h: Remove.
|
||||
* tm11/task1.c: Remove.
|
||||
* tm11/tm11.doc: Remove.
|
||||
* tm12/.cvsignore: Remove.
|
||||
* tm12/Makefile.am: Remove.
|
||||
* tm12/system.h: Remove.
|
||||
* tm12/task1.c: Remove.
|
||||
* tm12/tm12.doc: Remove.
|
||||
* tm13/.cvsignore: Remove.
|
||||
* tm13/Makefile.am: Remove.
|
||||
* tm13/system.h: Remove.
|
||||
* tm13/task1.c: Remove.
|
||||
* tm13/tm13.doc: Remove.
|
||||
* tm14/.cvsignore: Remove.
|
||||
* tm14/Makefile.am: Remove.
|
||||
* tm14/system.h: Remove.
|
||||
* tm14/task1.c: Remove.
|
||||
* tm14/tm14.doc: Remove.
|
||||
* tm15/.cvsignore: Remove.
|
||||
* tm15/Makefile.am: Remove.
|
||||
* tm15/system.h: Remove.
|
||||
* tm15/task1.c: Remove.
|
||||
* tm15/tm15.doc: Remove.
|
||||
* tm16/.cvsignore: Remove.
|
||||
* tm16/Makefile.am: Remove.
|
||||
* tm16/system.h: Remove.
|
||||
* tm16/task1.c: Remove.
|
||||
* tm16/tm16.doc: Remove.
|
||||
* tm17/.cvsignore: Remove.
|
||||
* tm17/Makefile.am: Remove.
|
||||
* tm17/system.h: Remove.
|
||||
* tm17/task1.c: Remove.
|
||||
* tm17/tm17.doc: Remove.
|
||||
* tm18/.cvsignore: Remove.
|
||||
* tm18/Makefile.am: Remove.
|
||||
* tm18/system.h: Remove.
|
||||
* tm18/task1.c: Remove.
|
||||
* tm18/tm18.doc: Remove.
|
||||
* tm19/.cvsignore: Remove.
|
||||
* tm19/Makefile.am: Remove.
|
||||
* tm19/system.h: Remove.
|
||||
* tm19/task1.c: Remove.
|
||||
* tm19/tm19.doc: Remove.
|
||||
* tm20/.cvsignore: Remove.
|
||||
* tm20/Makefile.am: Remove.
|
||||
* tm20/system.h: Remove.
|
||||
* tm20/task1.c: Remove.
|
||||
* tm20/tm20.doc: Remove.
|
||||
* tm21/.cvsignore: Remove.
|
||||
* tm21/Makefile.am: Remove.
|
||||
* tm21/system.h: Remove.
|
||||
* tm21/task1.c: Remove.
|
||||
* tm21/tm21.doc: Remove.
|
||||
* tm22/.cvsignore: Remove.
|
||||
* tm22/Makefile.am: Remove.
|
||||
* tm22/system.h: Remove.
|
||||
* tm22/task1.c: Remove.
|
||||
* tm22/tm22.doc: Remove.
|
||||
* tm23/.cvsignore: Remove.
|
||||
* tm23/Makefile.am: Remove.
|
||||
* tm23/system.h: Remove.
|
||||
* tm23/task1.c: Remove.
|
||||
* tm23/tm23.doc: Remove.
|
||||
* tm24/.cvsignore: Remove.
|
||||
* tm24/Makefile.am: Remove.
|
||||
* tm24/system.h: Remove.
|
||||
* tm24/task1.c: Remove.
|
||||
* tm24/tm24.doc: Remove.
|
||||
* tm25/.cvsignore: Remove.
|
||||
* tm25/Makefile.am: Remove.
|
||||
* tm25/system.h: Remove.
|
||||
* tm25/task1.c: Remove.
|
||||
* tm25/tm25.doc: Remove.
|
||||
* tm26/.cvsignore: Remove.
|
||||
* tm26/Makefile.am: Remove.
|
||||
* tm26/fptest.h: Remove.
|
||||
* tm26/system.h: Remove.
|
||||
* tm26/task1.c: Remove.
|
||||
* tm26/tm26.doc: Remove.
|
||||
* tm27/.cvsignore: Remove.
|
||||
* tm27/Makefile.am: Remove.
|
||||
* tm27/system.h: Remove.
|
||||
* tm27/task1.c: Remove.
|
||||
* tm27/tm27.doc: Remove.
|
||||
* tm28/.cvsignore: Remove.
|
||||
* tm28/Makefile.am: Remove.
|
||||
* tm28/system.h: Remove.
|
||||
* tm28/task1.c: Remove.
|
||||
* tm28/tm28.doc: Remove.
|
||||
* tm29/.cvsignore: Remove.
|
||||
* tm29/Makefile.am: Remove.
|
||||
* tm29/system.h: Remove.
|
||||
* tm29/task1.c: Remove.
|
||||
* tm29/tm29.doc: Remove.
|
||||
* tmck/.cvsignore: Remove.
|
||||
* tmck/Makefile.am: Remove.
|
||||
* tmck/system.h: Remove.
|
||||
* tmck/task1.c: Remove.
|
||||
* tmck/tmck.doc: Remove.
|
||||
* tmoverhd/.cvsignore: Remove.
|
||||
* tmoverhd/Makefile.am: Remove.
|
||||
* tmoverhd/dumrtems.h: Remove.
|
||||
* tmoverhd/empty.c: Remove.
|
||||
* tmoverhd/system.h: Remove.
|
||||
* tmoverhd/testtask.c: Remove.
|
||||
* tmoverhd/tmoverhd.doc: Remove.
|
||||
|
||||
2003-10-22 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: Remove RTEMS_CANONICAL_HOST.
|
||||
|
||||
2003-10-02 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac:Remove RTEMS_CHECK_CPU.
|
||||
|
||||
2003-09-04 Joel Sherrill <joel@OARcorp.com>
|
||||
|
||||
* include/timesys.h, tm01/system.h, tm01/task1.c, tm01/tm01.doc,
|
||||
tm02/system.h, tm02/task1.c, tm02/tm02.doc, tm03/system.h,
|
||||
tm03/task1.c, tm03/tm03.doc, tm04/system.h, tm04/task1.c,
|
||||
tm04/tm04.doc, tm05/system.h, tm05/task1.c, tm05/tm05.doc,
|
||||
tm06/system.h, tm06/task1.c, tm06/tm06.doc, tm07/system.h,
|
||||
tm07/task1.c, tm07/tm07.doc, tm08/system.h, tm08/task1.c,
|
||||
tm08/tm08.doc, tm09/system.h, tm09/task1.c, tm09/tm09.doc,
|
||||
tm10/system.h, tm10/task1.c, tm10/tm10.doc, tm11/system.h,
|
||||
tm11/task1.c, tm11/tm11.doc, tm12/system.h, tm12/task1.c,
|
||||
tm12/tm12.doc, tm13/system.h, tm13/task1.c, tm13/tm13.doc,
|
||||
tm14/system.h, tm14/task1.c, tm14/tm14.doc, tm15/system.h,
|
||||
tm15/task1.c, tm15/tm15.doc, tm16/system.h, tm16/task1.c,
|
||||
tm16/tm16.doc, tm17/system.h, tm17/task1.c, tm17/tm17.doc,
|
||||
tm18/system.h, tm18/task1.c, tm18/tm18.doc, tm19/system.h,
|
||||
tm19/task1.c, tm19/tm19.doc, tm20/system.h, tm20/task1.c,
|
||||
tm20/tm20.doc, tm21/system.h, tm21/task1.c, tm21/tm21.doc,
|
||||
tm22/system.h, tm22/task1.c, tm22/tm22.doc, tm23/system.h,
|
||||
tm23/task1.c, tm23/tm23.doc, tm24/system.h, tm24/task1.c,
|
||||
tm24/tm24.doc, tm25/system.h, tm25/task1.c, tm25/tm25.doc,
|
||||
tm26/fptest.h, tm26/system.h, tm26/task1.c, tm26/tm26.doc,
|
||||
tm27/system.h, tm27/task1.c, tm27/tm27.doc, tm28/system.h,
|
||||
tm28/task1.c, tm28/tm28.doc, tm29/system.h, tm29/task1.c,
|
||||
tm29/tm29.doc, tmck/system.h, tmck/task1.c, tmck/tmck.doc,
|
||||
tmoverhd/dumrtems.h, tmoverhd/empty.c, tmoverhd/system.h,
|
||||
tmoverhd/testtask.c, tmoverhd/tmoverhd.doc: URL for license changed.
|
||||
|
||||
2003-08-18 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* Makefile.am: Reflect having moved aclocal/.
|
||||
|
||||
2003-08-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* Makefile.am: Reflect having moved automake/.
|
||||
* include/Makefile.am: Reflect having moved automake/.
|
||||
* tm01/Makefile.am: Reflect having moved automake/.
|
||||
* tm02/Makefile.am: Reflect having moved automake/.
|
||||
* tm03/Makefile.am: Reflect having moved automake/.
|
||||
* tm04/Makefile.am: Reflect having moved automake/.
|
||||
* tm05/Makefile.am: Reflect having moved automake/.
|
||||
* tm06/Makefile.am: Reflect having moved automake/.
|
||||
* tm07/Makefile.am: Reflect having moved automake/.
|
||||
* tm08/Makefile.am: Reflect having moved automake/.
|
||||
* tm09/Makefile.am: Reflect having moved automake/.
|
||||
* tm10/Makefile.am: Reflect having moved automake/.
|
||||
* tm11/Makefile.am: Reflect having moved automake/.
|
||||
* tm12/Makefile.am: Reflect having moved automake/.
|
||||
* tm13/Makefile.am: Reflect having moved automake/.
|
||||
* tm14/Makefile.am: Reflect having moved automake/.
|
||||
* tm15/Makefile.am: Reflect having moved automake/.
|
||||
* tm16/Makefile.am: Reflect having moved automake/.
|
||||
* tm17/Makefile.am: Reflect having moved automake/.
|
||||
* tm18/Makefile.am: Reflect having moved automake/.
|
||||
* tm19/Makefile.am: Reflect having moved automake/.
|
||||
* tm20/Makefile.am: Reflect having moved automake/.
|
||||
* tm21/Makefile.am: Reflect having moved automake/.
|
||||
* tm22/Makefile.am: Reflect having moved automake/.
|
||||
* tm23/Makefile.am: Reflect having moved automake/.
|
||||
* tm24/Makefile.am: Reflect having moved automake/.
|
||||
* tm25/Makefile.am: Reflect having moved automake/.
|
||||
* tm26/Makefile.am: Reflect having moved automake/.
|
||||
* tm27/Makefile.am: Reflect having moved automake/.
|
||||
* tm28/Makefile.am: Reflect having moved automake/.
|
||||
* tm29/Makefile.am: Reflect having moved automake/.
|
||||
* tmck/Makefile.am: Reflect having moved automake/.
|
||||
* tmoverhd/Makefile.am: Reflect having moved automake/.
|
||||
|
||||
2003-08-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: Use rtems-bugs@rtems.com as bug report email address.
|
||||
|
||||
2003-05-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: Remove CC_CFLAGS_DEBUG_V.
|
||||
CC_CFLAGS_DEFAULT (obsolete).
|
||||
|
||||
2003-05-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: Remove CC_CFLAGS_PROFILE_V.
|
||||
Remove CC_LDFLAGS_PROFILE_V.
|
||||
|
||||
2003-03-06 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: Remove AC_CONFIG_AUX_DIR.
|
||||
|
||||
2003-02-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: AM_INIT_AUTOMAKE([1.7.2]).
|
||||
|
||||
2003-02-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: AC_PREREQ(2.57).
|
||||
|
||||
2002-10-21 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* .cvsignore: Reformat.
|
||||
Add autom4te*cache.
|
||||
Remove autom4te.cache.
|
||||
|
||||
2002-08-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* tm01/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm02/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm03/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm04/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm05/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm06/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm07/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm08/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm09/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm10/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm11/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm12/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm13/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm14/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm15/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm16/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm17/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm18/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm19/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm20/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm21/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm22/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm23/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm24/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm25/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm26/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm27/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm28/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tm29/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tmck/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
* tmoverhd/Makefile.am: Use $(OBJEXT) instead of .o.
|
||||
|
||||
2002-08-01 Joel Sherrill <joel@OARcorp.com>
|
||||
|
||||
* Per PR47 add support for buffered test output. This involved
|
||||
adding defines to redirect output to a buffer and dump it when
|
||||
full, at "test pause", and at exit. To avoid problems when redefining
|
||||
exit(), all tests were modified to call rtems_test_exit().
|
||||
Some tests, notable psxtests, had to be modified to include
|
||||
the standard test macro .h file (pmacros.h or tmacros.h) to
|
||||
enable this support.
|
||||
* include/timesys.h, tm01/task1.c, tm02/task1.c, tm03/task1.c,
|
||||
tm04/task1.c, tm05/task1.c, tm06/task1.c, tm07/task1.c, tm08/task1.c,
|
||||
tm09/task1.c, tm10/task1.c, tm11/task1.c, tm12/task1.c, tm13/task1.c,
|
||||
tm14/task1.c, tm15/task1.c, tm16/task1.c, tm17/task1.c, tm18/task1.c,
|
||||
tm19/task1.c, tm20/task1.c, tm21/task1.c, tm22/task1.c, tm23/task1.c,
|
||||
tm24/task1.c, tm25/task1.c, tm26/task1.c, tm27/task1.c, tm28/task1.c,
|
||||
tm29/task1.c, tmck/task1.c, tmoverhd/testtask.c: Modified.
|
||||
2002-04-14 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: Remove ENABLE_GCC28.
|
||||
|
||||
2002-03-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac:
|
||||
AC_INIT(package,_RTEMS_VERSION,_RTEMS_BUGS).
|
||||
AM_INIT_AUTOMAKE([no-define foreign 1.6]).
|
||||
* include/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm01/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm02/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm03/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm04/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm05/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm06/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm07/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm08/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm09/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm10/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm11/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm12/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm13/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm14/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm15/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm16/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm17/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm18/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm19/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm20/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm21/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm22/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm23/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm24/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm25/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm26/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm27/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm28/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tm29/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tmck/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* tmoverhd/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
|
||||
2001-11-08 Jiri Gaisler <jiri@gaisler.com>
|
||||
|
||||
This fix is response to test results reported by Jerry Needell
|
||||
<jerry.needell@unh.edu> for the SPARC/ERC32 and tracked as PR80.
|
||||
* tm27/task1.c: Account for overhead in starting and stopping
|
||||
the timer.
|
||||
|
||||
2001-10-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* .cvsignore: Add autom4te.cache for autoconf > 2.52.
|
||||
* configure.in: Remove.
|
||||
* configure.ac: New file, generated from configure.in by autoupdate.
|
||||
|
||||
2001-09-22 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* tmtests.am: Use TMPINSTALL_FILES = to make automake-1.5 happy.
|
||||
|
||||
2001-09-19 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* tm27/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm26/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm24/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm16/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm18/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm02/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm10/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm11/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm15/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm19/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm04/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm17/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm28/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tmck/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm08/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm12/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm03/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm13/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm29/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tmoverhd/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm20/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm09/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm01/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm21/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm07/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm25/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm22/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm06/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm05/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm14/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
* tm23/Makefile.am: include leaf.am instead of leaf.cfg.
|
||||
|
||||
2001-05-10 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.in: Use RTEMS_PROG_CC_FOR_TARGET([-ansi -fasm]).
|
||||
|
||||
2001-01-26 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* tm20/Makefile.am: Remove stubdir.rel
|
||||
|
||||
2000-11-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* Makefile.am: Use ... instead of RTEMS_TOPdir in ACLOCAL_AMFLAGS.
|
||||
|
||||
2000-11-02 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* Makefile.am: Switch to ACLOCAL_AMFLAGS = -I $(RTEMS_TOPdir)/aclocal.
|
||||
|
||||
2000-10-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* Makefile.am: ACLOCAL_AMFLAGS= -I $(RTEMS_TOPdir)/macros.
|
||||
Switch to GNU canonicalization.
|
||||
* tmtests.am: Remove DEFS.
|
||||
|
||||
2000-09-04 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* tm01/Makefile.am, tm02/Makefile.am, tm03/Makefile.am,
|
||||
tm04/Makefile.am, tm05/Makefile.am, tm06/Makefile.am,
|
||||
tm07/Makefile.am, tm08/Makefile.am, tm09/Makefile.am,
|
||||
tm10/Makefile.am, tm11/Makefile.am, tm12/Makefile.am,
|
||||
tm13/Makefile.am, tm14/Makefile.am, tm15/Makefile.am,
|
||||
tm16/Makefile.am, tm17/Makefile.am, tm18/Makefile.am,
|
||||
tm19/Makefile.am, tm20/Makefile.am, tm21/Makefile.am,
|
||||
tm22/Makefile.am, tm23/Makefile.am, tm24/Makefile.am,
|
||||
tm25/Makefile.am, tm26/Makefile.am, tm27/Makefile.am,
|
||||
tm28/Makefile.am, tm29/Makefile.am, tmck/Makefile.am,
|
||||
tmoverhd/Makefile.am: Include compile.am
|
||||
|
||||
2000-08-10 Joel Sherrill <joel@OARcorp.com>
|
||||
|
||||
* ChangeLog: New file.
|
||||
@@ -1,14 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
ACLOCAL_AMFLAGS = -I ../aclocal
|
||||
|
||||
SUBDIRS = include tmck tmoverhd tm01 tm02 tm03 tm04 tm05 tm06 tm07 tm08 tm09 \
|
||||
tm10 tm11 tm12 tm13 tm14 tm15 tm16 tm17 tm18 tm19 tm20 tm21 tm22 tm23 \
|
||||
tm24 tm25 tm26 tm27 tm28 tm29
|
||||
|
||||
EXTRA_DIST = tmtests.am
|
||||
|
||||
include $(top_srcdir)/../automake/subdirs.am
|
||||
include $(top_srcdir)/../automake/local.am
|
||||
@@ -1,21 +0,0 @@
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
|
||||
This directory contains the RTEMS Timing Test Suite.
|
||||
The tests in this directory are used to measure the execution
|
||||
time of RTEMS directive and some critical internal functions.
|
||||
The results of these test are reported in the Fact Sheets
|
||||
and Supplental Manuals.
|
||||
|
||||
These tests attempt to benchmark RTEMS as the user would. They measure
|
||||
the execution time for a directive (under various circumstances)
|
||||
from the time RTEMS is entered until it is executed. Where possible,
|
||||
the time is the average of at least 100 invocations of the directive.
|
||||
|
||||
The accuracy of the times reported by these benchmarks is very dependent
|
||||
on the resolution of the timer being used. It is also important to
|
||||
insure that all sources of hardware interrupts are disabled during
|
||||
execution of the tests. This insures that the directive time reported
|
||||
does not include any interrupt time.
|
||||
|
||||
@@ -1,69 +0,0 @@
|
||||
## Process this file with autoconf to produce a configure script.
|
||||
##
|
||||
## $Id$
|
||||
|
||||
AC_PREREQ(2.57)
|
||||
AC_INIT([rtems-c-src-tests-tmtests],[_RTEMS_VERSION],[rtems-bugs@rtems.com])
|
||||
AC_CONFIG_SRCDIR([tm01])
|
||||
RTEMS_TOP(../../../..)
|
||||
|
||||
RTEMS_CANONICAL_TARGET_CPU
|
||||
|
||||
AM_INIT_AUTOMAKE([no-define foreign 1.7.2])
|
||||
AM_MAINTAINER_MODE
|
||||
|
||||
RTEMS_ENABLE_BARE
|
||||
|
||||
RTEMS_ENV_RTEMSBSP
|
||||
RTEMS_CHECK_RTEMS_TEST_NO_PAUSE
|
||||
|
||||
RTEMS_PROJECT_ROOT
|
||||
|
||||
RTEMS_PROG_CC_FOR_TARGET([-ansi -fasm])
|
||||
|
||||
RTEMS_CANONICALIZE_TOOLS
|
||||
|
||||
RTEMS_CHECK_CUSTOM_BSP(RTEMS_BSP)
|
||||
|
||||
AC_SUBST(BARE_CPU_CFLAGS)
|
||||
AC_SUBST(BARE_CPU_MODEL)
|
||||
|
||||
OPERATION_COUNT=${OPERATION_COUNT-100}
|
||||
AC_SUBST(OPERATION_COUNT)
|
||||
|
||||
# Explicitly list all Makefiles here
|
||||
AC_CONFIG_FILES([Makefile
|
||||
include/Makefile
|
||||
tmck/Makefile
|
||||
tmoverhd/Makefile
|
||||
tm01/Makefile
|
||||
tm02/Makefile
|
||||
tm03/Makefile
|
||||
tm04/Makefile
|
||||
tm05/Makefile
|
||||
tm06/Makefile
|
||||
tm07/Makefile
|
||||
tm08/Makefile
|
||||
tm09/Makefile
|
||||
tm10/Makefile
|
||||
tm11/Makefile
|
||||
tm12/Makefile
|
||||
tm13/Makefile
|
||||
tm14/Makefile
|
||||
tm15/Makefile
|
||||
tm16/Makefile
|
||||
tm17/Makefile
|
||||
tm18/Makefile
|
||||
tm19/Makefile
|
||||
tm20/Makefile
|
||||
tm21/Makefile
|
||||
tm22/Makefile
|
||||
tm23/Makefile
|
||||
tm24/Makefile
|
||||
tm25/Makefile
|
||||
tm26/Makefile
|
||||
tm27/Makefile
|
||||
tm28/Makefile
|
||||
tm29/Makefile
|
||||
])
|
||||
AC_OUTPUT
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,8 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
|
||||
noinst_HEADERS = timesys.h
|
||||
|
||||
include $(top_srcdir)/../automake/local.am
|
||||
@@ -1,66 +0,0 @@
|
||||
/* timesys.h
|
||||
*
|
||||
* This header file contains the global variables for the Time
|
||||
* suite.
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#include <tmacros.h>
|
||||
|
||||
/*
|
||||
* This constant determines the maximum number of a resource
|
||||
* that will be created. For example, some test create multiple
|
||||
* blocking tasks to determine the execution time of blocking
|
||||
* services. By default, the blocking time of 100 tasks will
|
||||
* be measured. Small targets often do not have enough memory
|
||||
* to create 100 tasks. By overriding the default OPERATION_COUNT
|
||||
* with a lower number (typically 10 or less), all of the time tests
|
||||
* can usually be run. This is stil not very fine-grained but
|
||||
* is enough to significantly reduce memory consumption.
|
||||
*/
|
||||
|
||||
#ifndef OPERATION_COUNT
|
||||
#define OPERATION_COUNT 100
|
||||
#endif
|
||||
|
||||
/* functions */
|
||||
|
||||
#define put_time( _message, _total_time, \
|
||||
_iterations, _loop_overhead, _overhead ) \
|
||||
printf( \
|
||||
"%s %d\n", \
|
||||
(_message), \
|
||||
(((_total_time) - (_loop_overhead)) / (_iterations)) - (_overhead) \
|
||||
)
|
||||
|
||||
#if defined(STACK_CHECKER_ON) || defined(RTEMS_DEBUG)
|
||||
#define Print_Warning() \
|
||||
do { \
|
||||
puts( \
|
||||
"\n" \
|
||||
"THE TIMES REPORTED BY THIS TEST INCLUDE DEBUG CODE!\n" \
|
||||
"\n" \
|
||||
); \
|
||||
} while (0)
|
||||
|
||||
#else
|
||||
#define Print_Warning()
|
||||
#endif
|
||||
|
||||
/* variables */
|
||||
|
||||
TEST_EXTERN volatile rtems_unsigned32 end_time; /* ending time variable */
|
||||
TEST_EXTERN volatile rtems_unsigned32 overhead; /* loop overhead variable */
|
||||
|
||||
TEST_EXTERN rtems_id Task_id[ OPERATION_COUNT+1 ]; /* array of task ids */
|
||||
TEST_EXTERN rtems_id Task_name[ OPERATION_COUNT+1 ]; /* array of task names */
|
||||
|
||||
/* end of include file */
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,45 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
|
||||
TEST = tm01
|
||||
|
||||
MANAGERS = io semaphore
|
||||
|
||||
C_FILES = task1.c
|
||||
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
|
||||
|
||||
H_FILES = system.h
|
||||
noinst_HEADERS = $(H_FILES)
|
||||
|
||||
DOCTYPES = doc
|
||||
DOCS = $(DOCTYPES:%=$(TEST).%)
|
||||
|
||||
SRCS = $(DOCS) $(C_FILES) $(H_FILES)
|
||||
OBJS = $(C_O_FILES)
|
||||
|
||||
PRINT_SRCS = $(DOCS)
|
||||
|
||||
PGM = ${ARCH}/$(TEST).exe
|
||||
|
||||
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
|
||||
include $(top_srcdir)/../automake/compile.am
|
||||
include $(top_srcdir)/../automake/leaf.am
|
||||
include $(top_srcdir)/tmtests.am
|
||||
|
||||
#
|
||||
# (OPTIONAL) Add local stuff here using +=
|
||||
#
|
||||
|
||||
OPERATION_COUNT = @OPERATION_COUNT@
|
||||
AM_CPPFLAGS += -I$(top_srcdir)/include -DOPERATION_COUNT=$(OPERATION_COUNT)
|
||||
|
||||
${PGM}: $(OBJS) $(LINK_FILES)
|
||||
$(make-exe)
|
||||
|
||||
all-local: $(ARCH) $(TMPINSTALL_FILES)
|
||||
|
||||
EXTRA_DIST = $(C_FILES) $(DOCS)
|
||||
|
||||
include $(top_srcdir)/../automake/local.am
|
||||
@@ -1,40 +0,0 @@
|
||||
/* system.h
|
||||
*
|
||||
* This include file is used by all tests in the Time Suite.
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
|
||||
#include <coverhd.h>
|
||||
#include <tmacros.h>
|
||||
|
||||
/* functions */
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
#include <timesys.h>
|
||||
|
||||
/* configuration information */
|
||||
|
||||
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
|
||||
#define CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER
|
||||
|
||||
#define CONFIGURE_MAXIMUM_TASKS 2
|
||||
#define CONFIGURE_MAXIMUM_SEMAPHORES 1
|
||||
#define CONFIGURE_TICKS_PER_TIMESLICE 0
|
||||
|
||||
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
|
||||
|
||||
#include <confdefs.h>
|
||||
|
||||
/* end of include file */
|
||||
@@ -1,188 +0,0 @@
|
||||
/*
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#define TEST_INIT
|
||||
#include "system.h"
|
||||
|
||||
rtems_task Test_task(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_status_code status;
|
||||
|
||||
Print_Warning();
|
||||
|
||||
puts( "\n\n*** TIME TEST 1 ***" );
|
||||
|
||||
Task_name[ 1 ] = rtems_build_name( 'T', 'A', '1', ' ' );
|
||||
Task_name[ 2 ] = rtems_build_name( 'T', 'A', '2', ' ' );
|
||||
Task_name[ 3 ] = rtems_build_name( 'T', 'A', '3', ' ' );
|
||||
|
||||
status = rtems_task_create(
|
||||
Task_name[ 1 ],
|
||||
128,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&Task_id[ 1 ]
|
||||
);
|
||||
directive_failed( status, "rtems_task_create of TA1" );
|
||||
|
||||
status = rtems_task_start( Task_id[ 1 ], Test_task, 0 );
|
||||
directive_failed( status, "rtems_task_start of TA1" );
|
||||
|
||||
status = rtems_task_delete( RTEMS_SELF );
|
||||
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
|
||||
|
||||
}
|
||||
|
||||
rtems_task Test_task(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_unsigned32 semaphore_obtain_time;
|
||||
rtems_unsigned32 semaphore_release_time;
|
||||
rtems_unsigned32 semaphore_obtain_no_wait_time;
|
||||
rtems_unsigned32 semaphore_obtain_loop_time;
|
||||
rtems_unsigned32 semaphore_release_loop_time;
|
||||
rtems_unsigned32 index;
|
||||
rtems_unsigned32 iterations;
|
||||
rtems_name name;
|
||||
rtems_id smid;
|
||||
rtems_status_code status;
|
||||
|
||||
name = rtems_build_name( 'S', 'M', '1', ' ' );
|
||||
|
||||
semaphore_obtain_time = 0;
|
||||
semaphore_release_time = 0;
|
||||
semaphore_obtain_no_wait_time = 0;
|
||||
semaphore_obtain_loop_time = 0;
|
||||
semaphore_release_loop_time = 0;
|
||||
|
||||
|
||||
/* Time one invocation of rtems_semaphore_create */
|
||||
|
||||
Timer_initialize();
|
||||
(void) rtems_semaphore_create(
|
||||
name,
|
||||
OPERATION_COUNT,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_NO_PRIORITY,
|
||||
&smid
|
||||
);
|
||||
end_time = Read_timer();
|
||||
put_time(
|
||||
"rtems_semaphore_create",
|
||||
end_time,
|
||||
1,
|
||||
0,
|
||||
CALLING_OVERHEAD_SEMAPHORE_CREATE
|
||||
);
|
||||
|
||||
/* Time one invocation of rtems_semaphore_delete */
|
||||
|
||||
Timer_initialize();
|
||||
(void) rtems_semaphore_delete( smid );
|
||||
end_time = Read_timer();
|
||||
put_time(
|
||||
"rtems_semaphore_delete",
|
||||
end_time,
|
||||
1,
|
||||
0,
|
||||
CALLING_OVERHEAD_SEMAPHORE_CREATE
|
||||
);
|
||||
|
||||
status = rtems_semaphore_create(
|
||||
name,
|
||||
OPERATION_COUNT,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
RTEMS_NO_PRIORITY,
|
||||
&smid
|
||||
);
|
||||
|
||||
for ( iterations=OPERATION_COUNT ; iterations ; iterations-- ) {
|
||||
|
||||
Timer_initialize();
|
||||
for ( index = 1 ; index<=OPERATION_COUNT ; index++ )
|
||||
(void) Empty_function();
|
||||
end_time = Read_timer();
|
||||
|
||||
semaphore_obtain_loop_time += end_time;
|
||||
semaphore_release_loop_time += end_time;
|
||||
|
||||
/* rtems_semaphore_obtain (available) */
|
||||
|
||||
Timer_initialize();
|
||||
for ( index = 1 ; index<=OPERATION_COUNT ; index++ )
|
||||
(void) rtems_semaphore_obtain(
|
||||
smid,
|
||||
RTEMS_DEFAULT_OPTIONS,
|
||||
RTEMS_NO_TIMEOUT
|
||||
);
|
||||
end_time = Read_timer();
|
||||
|
||||
semaphore_obtain_time += end_time;
|
||||
|
||||
/* rtems_semaphore_release */
|
||||
|
||||
Timer_initialize();
|
||||
for ( index = 1 ; index<=OPERATION_COUNT ; index++ )
|
||||
(void) rtems_semaphore_release( smid );
|
||||
end_time = Read_timer();
|
||||
|
||||
semaphore_release_time += end_time;
|
||||
|
||||
/* semaphore obtain (RTEMS_NO_WAIT) */
|
||||
Timer_initialize();
|
||||
for ( index = 1 ; index<=OPERATION_COUNT ; index++ )
|
||||
rtems_semaphore_obtain( smid, RTEMS_NO_WAIT, RTEMS_NO_TIMEOUT );
|
||||
semaphore_obtain_no_wait_time += Read_timer();
|
||||
|
||||
Timer_initialize();
|
||||
for ( index = 1 ; index<=OPERATION_COUNT ; index++ )
|
||||
rtems_semaphore_release( smid );
|
||||
end_time = Read_timer();
|
||||
|
||||
semaphore_release_time += end_time;
|
||||
}
|
||||
|
||||
put_time(
|
||||
"rtems_semaphore_obtain: available",
|
||||
semaphore_obtain_time,
|
||||
OPERATION_COUNT * OPERATION_COUNT,
|
||||
semaphore_obtain_loop_time,
|
||||
CALLING_OVERHEAD_SEMAPHORE_OBTAIN
|
||||
);
|
||||
|
||||
put_time(
|
||||
"rtems_semaphore_obtain: not available -- NO_WAIT",
|
||||
semaphore_obtain_no_wait_time,
|
||||
OPERATION_COUNT * OPERATION_COUNT,
|
||||
semaphore_obtain_loop_time,
|
||||
CALLING_OVERHEAD_SEMAPHORE_OBTAIN
|
||||
);
|
||||
|
||||
put_time(
|
||||
"rtems_semaphore_release: no waiting tasks",
|
||||
semaphore_release_time,
|
||||
OPERATION_COUNT * OPERATION_COUNT * 2,
|
||||
semaphore_release_loop_time * 2,
|
||||
CALLING_OVERHEAD_SEMAPHORE_RELEASE
|
||||
);
|
||||
|
||||
puts( "*** END OF TEST 1 ***" );
|
||||
rtems_test_exit( 0 );
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
# COPYRIGHT (c) 1989-1999.
|
||||
# On-Line Applications Research Corporation (OAR).
|
||||
#
|
||||
# The license and distribution terms for this file may be
|
||||
# found in the file LICENSE in this distribution or at
|
||||
# http://www.rtems.com/license/LICENSE.
|
||||
#
|
||||
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,45 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
|
||||
TEST = tm02
|
||||
|
||||
MANAGERS = io semaphore
|
||||
|
||||
C_FILES = task1.c
|
||||
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
|
||||
|
||||
H_FILES = system.h
|
||||
noinst_HEADERS = $(H_FILES)
|
||||
|
||||
DOCTYPES = doc
|
||||
DOCS = $(DOCTYPES:%=$(TEST).%)
|
||||
|
||||
SRCS = $(DOCS) $(C_FILES) $(H_FILES)
|
||||
OBJS = $(C_O_FILES)
|
||||
|
||||
PRINT_SRCS = $(DOCS)
|
||||
|
||||
PGM = ${ARCH}/$(TEST).exe
|
||||
|
||||
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
|
||||
include $(top_srcdir)/../automake/compile.am
|
||||
include $(top_srcdir)/../automake/leaf.am
|
||||
include $(top_srcdir)/tmtests.am
|
||||
|
||||
#
|
||||
# (OPTIONAL) Add local stuff here using +=
|
||||
#
|
||||
|
||||
OPERATION_COUNT = @OPERATION_COUNT@
|
||||
AM_CPPFLAGS += -I$(top_srcdir)/include -DOPERATION_COUNT=$(OPERATION_COUNT)
|
||||
|
||||
${PGM}: $(OBJS) $(LINK_FILES)
|
||||
$(make-exe)
|
||||
|
||||
all-local: $(ARCH) $(TMPINSTALL_FILES)
|
||||
|
||||
EXTRA_DIST = $(C_FILES) $(DOCS)
|
||||
|
||||
include $(top_srcdir)/../automake/local.am
|
||||
@@ -1,41 +0,0 @@
|
||||
/* system.h
|
||||
*
|
||||
* This include file is used by all tests in the Time Suite.
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
|
||||
#include <coverhd.h>
|
||||
#include <tmacros.h>
|
||||
|
||||
/* functions */
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
#include <timesys.h>
|
||||
|
||||
/* configuration information */
|
||||
|
||||
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
|
||||
#define CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER
|
||||
|
||||
#define CONFIGURE_MAXIMUM_TASKS 111
|
||||
#define CONFIGURE_MAXIMUM_TIMERS 110
|
||||
#define CONFIGURE_MAXIMUM_SEMAPHORES 101
|
||||
#define CONFIGURE_TICKS_PER_TIMESLICE 0
|
||||
|
||||
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
|
||||
|
||||
#include <confdefs.h>
|
||||
|
||||
/* end of include file */
|
||||
@@ -1,157 +0,0 @@
|
||||
/*
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#define TEST_INIT
|
||||
#include "system.h"
|
||||
|
||||
rtems_id High_id;
|
||||
rtems_id Low_id;
|
||||
rtems_id Semaphore_id;
|
||||
|
||||
rtems_task High_task(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task Middle_tasks(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task Low_task(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
|
||||
void test_init();
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_status_code status;
|
||||
|
||||
Print_Warning();
|
||||
|
||||
puts( "\n\n*** TIME TEST 2 ***" );
|
||||
|
||||
test_init();
|
||||
|
||||
status = rtems_task_delete( RTEMS_SELF );
|
||||
directive_failed( status, "rtems_task_delete" );
|
||||
}
|
||||
|
||||
void test_init()
|
||||
{
|
||||
rtems_status_code status;
|
||||
rtems_unsigned32 index;
|
||||
rtems_task_priority priority;
|
||||
|
||||
priority = 5;
|
||||
|
||||
status = rtems_task_create(
|
||||
rtems_build_name( 'H', 'I', 'G', 'H' ),
|
||||
priority,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&High_id
|
||||
);
|
||||
directive_failed( status, "rtems_task_create of high task" );
|
||||
|
||||
priority++;
|
||||
|
||||
status = rtems_task_start( High_id, High_task, 0 );
|
||||
directive_failed( status, "rtems_task_start of high task" );
|
||||
|
||||
for ( index=2 ; index <= OPERATION_COUNT ; index++ ) {
|
||||
status = rtems_task_create(
|
||||
rtems_build_name( 'M', 'I', 'D', ' ' ),
|
||||
priority,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&Low_id
|
||||
);
|
||||
directive_failed( status, "rtems_task_create middle" );
|
||||
|
||||
priority++;
|
||||
|
||||
status = rtems_task_start( Low_id, Middle_tasks, 0 );
|
||||
directive_failed( status, "rtems_task_start middle" );
|
||||
}
|
||||
|
||||
status = rtems_task_create(
|
||||
rtems_build_name( 'L', 'O', 'W', ' ' ),
|
||||
priority,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&Low_id
|
||||
);
|
||||
directive_failed( status, "rtems_task_create low" );
|
||||
|
||||
status = rtems_task_start( Low_id, Low_task, 0 );
|
||||
directive_failed( status, "rtems_task_start low" );
|
||||
|
||||
status = rtems_semaphore_create(
|
||||
rtems_build_name( 'S', 'M', '1', ' '),
|
||||
0,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
RTEMS_NO_PRIORITY,
|
||||
&Semaphore_id
|
||||
);
|
||||
directive_failed( status, "rtems_semaphore_create of SM1" );
|
||||
}
|
||||
|
||||
rtems_task High_task(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_status_code status;
|
||||
|
||||
Timer_initialize(); /* start blocking rtems_semaphore_obtain time */
|
||||
status = rtems_semaphore_obtain(
|
||||
Semaphore_id,
|
||||
RTEMS_DEFAULT_OPTIONS,
|
||||
RTEMS_NO_TIMEOUT
|
||||
);
|
||||
}
|
||||
|
||||
rtems_task Middle_tasks(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_status_code status;
|
||||
|
||||
status = rtems_semaphore_obtain(
|
||||
Semaphore_id,
|
||||
RTEMS_DEFAULT_OPTIONS,
|
||||
RTEMS_NO_TIMEOUT
|
||||
);
|
||||
}
|
||||
|
||||
rtems_task Low_task(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_semaphore_obtain: not available -- caller blocks",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
0,
|
||||
CALLING_OVERHEAD_SEMAPHORE_OBTAIN
|
||||
);
|
||||
|
||||
puts( "*** END OF TEST 2 ***" );
|
||||
rtems_test_exit( 0 );
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
# COPYRIGHT (c) 1989-1999.
|
||||
# On-Line Applications Research Corporation (OAR).
|
||||
#
|
||||
# The license and distribution terms for this file may be
|
||||
# found in the file LICENSE in this distribution or at
|
||||
# http://www.rtems.com/license/LICENSE.
|
||||
#
|
||||
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,45 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
|
||||
TEST = tm03
|
||||
|
||||
MANAGERS = io semaphore
|
||||
|
||||
C_FILES = task1.c
|
||||
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
|
||||
|
||||
H_FILES = system.h
|
||||
noinst_HEADERS = $(H_FILES)
|
||||
|
||||
DOCTYPES = doc
|
||||
DOCS = $(DOCTYPES:%=$(TEST).%)
|
||||
|
||||
SRCS = $(DOCS) $(C_FILES) $(H_FILES)
|
||||
OBJS = $(C_O_FILES)
|
||||
|
||||
PRINT_SRCS = $(DOCS)
|
||||
|
||||
PGM = ${ARCH}/$(TEST).exe
|
||||
|
||||
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
|
||||
include $(top_srcdir)/../automake/compile.am
|
||||
include $(top_srcdir)/../automake/leaf.am
|
||||
include $(top_srcdir)/tmtests.am
|
||||
|
||||
#
|
||||
# (OPTIONAL) Add local stuff here using +=
|
||||
#
|
||||
|
||||
OPERATION_COUNT = @OPERATION_COUNT@
|
||||
AM_CPPFLAGS += -I$(top_srcdir)/include -DOPERATION_COUNT=$(OPERATION_COUNT)
|
||||
|
||||
${PGM}: $(OBJS) $(LINK_FILES)
|
||||
$(make-exe)
|
||||
|
||||
all-local: $(ARCH) $(TMPINSTALL_FILES)
|
||||
|
||||
EXTRA_DIST = $(C_FILES) $(DOCS)
|
||||
|
||||
include $(top_srcdir)/../automake/local.am
|
||||
@@ -1,41 +0,0 @@
|
||||
/* system.h
|
||||
*
|
||||
* This include file is used by all tests in the Time Suite.
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
|
||||
#include <coverhd.h>
|
||||
#include <tmacros.h>
|
||||
|
||||
/* functions */
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
#include <timesys.h>
|
||||
|
||||
/* configuration information */
|
||||
|
||||
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
|
||||
#define CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER
|
||||
|
||||
#define CONFIGURE_MAXIMUM_TASKS 111
|
||||
#define CONFIGURE_MAXIMUM_TIMERS 110
|
||||
#define CONFIGURE_MAXIMUM_SEMAPHORES 101
|
||||
#define CONFIGURE_TICKS_PER_TIMESLICE 0
|
||||
|
||||
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
|
||||
|
||||
#include <confdefs.h>
|
||||
|
||||
/* end of include file */
|
||||
@@ -1,150 +0,0 @@
|
||||
/*
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#define TEST_INIT
|
||||
#include "system.h"
|
||||
|
||||
rtems_id Semaphore_id;
|
||||
rtems_task test_init(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task Middle_tasks(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task High_task(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_status_code status;
|
||||
rtems_id task_id;
|
||||
|
||||
Print_Warning();
|
||||
|
||||
puts( "\n\n*** TIME TEST 3 ***" );
|
||||
status = rtems_task_create(
|
||||
rtems_build_name( 'T', 'A', '1', ' ' ),
|
||||
252,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&task_id
|
||||
);
|
||||
directive_failed( status, "rtems_task_create of test_init" );
|
||||
|
||||
status = rtems_task_start( task_id, test_init, 0 );
|
||||
directive_failed( status, "rtems_task_start of test_init" );
|
||||
|
||||
status = rtems_task_delete( RTEMS_SELF );
|
||||
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
|
||||
}
|
||||
|
||||
rtems_task test_init(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_status_code status;
|
||||
rtems_unsigned32 index;
|
||||
rtems_id task_id;
|
||||
rtems_task_priority priority;
|
||||
|
||||
priority = 250;
|
||||
|
||||
status = rtems_semaphore_create(
|
||||
rtems_build_name( 'S', 'M', '1', '\0'),
|
||||
0,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
RTEMS_NO_PRIORITY,
|
||||
&Semaphore_id
|
||||
);
|
||||
directive_failed( status, "rtems_semaphore_create of SM1" );
|
||||
|
||||
for ( index = 2 ; index <= OPERATION_COUNT ; index ++ ) {
|
||||
rtems_task_create(
|
||||
rtems_build_name( 'M', 'I', 'D', ' ' ),
|
||||
priority,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&task_id
|
||||
);
|
||||
directive_failed( status, "rtems_task_create middle" );
|
||||
|
||||
priority--;
|
||||
|
||||
rtems_task_start( task_id, Middle_tasks, 0 );
|
||||
directive_failed( status, "rtems_task_start middle" );
|
||||
}
|
||||
|
||||
status = rtems_task_create(
|
||||
rtems_build_name( 'H', 'I', 'G', 'H' ),
|
||||
priority,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&task_id
|
||||
);
|
||||
directive_failed( status, "rtems_task_create of high task" );
|
||||
|
||||
status = rtems_task_start( task_id, High_task, 0 );
|
||||
directive_failed( status, "rtems_task_start of high task" );
|
||||
|
||||
Timer_initialize(); /* start the timer */
|
||||
status = rtems_semaphore_release( Semaphore_id );
|
||||
}
|
||||
|
||||
rtems_task Middle_tasks(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_status_code status;
|
||||
|
||||
status = rtems_semaphore_obtain(
|
||||
Semaphore_id,
|
||||
RTEMS_DEFAULT_OPTIONS,
|
||||
RTEMS_NO_TIMEOUT
|
||||
);
|
||||
|
||||
status = rtems_semaphore_release( Semaphore_id );
|
||||
}
|
||||
|
||||
rtems_task High_task(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_status_code status;
|
||||
|
||||
status = rtems_semaphore_obtain(
|
||||
Semaphore_id,
|
||||
RTEMS_DEFAULT_OPTIONS,
|
||||
RTEMS_NO_TIMEOUT
|
||||
);
|
||||
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_semaphore_release: task readied -- preempts caller",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
0,
|
||||
CALLING_OVERHEAD_SEMAPHORE_RELEASE
|
||||
);
|
||||
|
||||
puts( "*** END OF TEST 3 ***" );
|
||||
rtems_test_exit( 0 );
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
# COPYRIGHT (c) 1989-1999.
|
||||
# On-Line Applications Research Corporation (OAR).
|
||||
#
|
||||
# The license and distribution terms for this file may be
|
||||
# found in the file LICENSE in this distribution or at
|
||||
# http://www.rtems.com/license/LICENSE.
|
||||
#
|
||||
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,45 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
|
||||
TEST = tm04
|
||||
|
||||
MANAGERS = io semaphore
|
||||
|
||||
C_FILES = task1.c
|
||||
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
|
||||
|
||||
H_FILES = system.h
|
||||
noinst_HEADERS = $(H_FILES)
|
||||
|
||||
DOCTYPES = doc
|
||||
DOCS = $(DOCTYPES:%=$(TEST).%)
|
||||
|
||||
SRCS = $(DOCS) $(C_FILES) $(H_FILES)
|
||||
OBJS = $(C_O_FILES)
|
||||
|
||||
PRINT_SRCS = $(DOCS)
|
||||
|
||||
PGM = ${ARCH}/$(TEST).exe
|
||||
|
||||
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
|
||||
include $(top_srcdir)/../automake/compile.am
|
||||
include $(top_srcdir)/../automake/leaf.am
|
||||
include $(top_srcdir)/tmtests.am
|
||||
|
||||
#
|
||||
# (OPTIONAL) Add local stuff here using +=
|
||||
#
|
||||
|
||||
OPERATION_COUNT = @OPERATION_COUNT@
|
||||
AM_CPPFLAGS += -I$(top_srcdir)/include -DOPERATION_COUNT=$(OPERATION_COUNT)
|
||||
|
||||
${PGM}: $(OBJS) $(LINK_FILES)
|
||||
$(make-exe)
|
||||
|
||||
all-local: $(ARCH) $(TMPINSTALL_FILES)
|
||||
|
||||
EXTRA_DIST = $(C_FILES) $(DOCS)
|
||||
|
||||
include $(top_srcdir)/../automake/local.am
|
||||
@@ -1,40 +0,0 @@
|
||||
/* system.h
|
||||
*
|
||||
* This include file is used by all tests in the Time Suite.
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
|
||||
#include <coverhd.h>
|
||||
#include <tmacros.h>
|
||||
|
||||
/* functions */
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
#include <timesys.h>
|
||||
|
||||
/* configuration information */
|
||||
|
||||
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
|
||||
#define CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER
|
||||
|
||||
#define CONFIGURE_MAXIMUM_TASKS 111
|
||||
#define CONFIGURE_MAXIMUM_SEMAPHORES 1
|
||||
#define CONFIGURE_TICKS_PER_TIMESLICE 0
|
||||
|
||||
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
|
||||
|
||||
#include <confdefs.h>
|
||||
|
||||
/* end of include file */
|
||||
@@ -1,387 +0,0 @@
|
||||
/*
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#define TEST_INIT
|
||||
#include "system.h"
|
||||
|
||||
rtems_id Semaphore_id;
|
||||
rtems_id Task_id[OPERATION_COUNT+1];
|
||||
rtems_unsigned32 task_count;
|
||||
rtems_id Highest_id;
|
||||
|
||||
rtems_task Low_tasks(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task High_task(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task Restart_task(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
void test_init();
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_status_code status;
|
||||
|
||||
Print_Warning();
|
||||
|
||||
puts( "\n\n*** TIME TEST 4 ***" );
|
||||
|
||||
test_init();
|
||||
|
||||
status = rtems_task_delete( RTEMS_SELF );
|
||||
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
|
||||
}
|
||||
|
||||
void test_init()
|
||||
{
|
||||
rtems_status_code status;
|
||||
rtems_unsigned32 index;
|
||||
|
||||
task_count = OPERATION_COUNT;
|
||||
|
||||
for ( index = 1 ; index <= OPERATION_COUNT ; index++ ) {
|
||||
|
||||
status = rtems_task_create(
|
||||
rtems_build_name( 'T', 'I', 'M', 'E' ),
|
||||
10,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_NO_PREEMPT,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&Task_id[ index ]
|
||||
);
|
||||
directive_failed( status, "rtems_task_create loop" );
|
||||
|
||||
status = rtems_task_start( Task_id[ index ], Low_tasks, 0 );
|
||||
directive_failed( status, "rtems_task_start loop" );
|
||||
}
|
||||
|
||||
status = rtems_semaphore_create(
|
||||
rtems_build_name( 'S', 'M', '1', ' ' ),
|
||||
0,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
RTEMS_NO_PRIORITY,
|
||||
&Semaphore_id
|
||||
);
|
||||
directive_failed( status, "rtems_semaphore_create of SM1" );
|
||||
}
|
||||
|
||||
rtems_task Highest_task(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_task_priority old_priority;
|
||||
rtems_status_code status;
|
||||
|
||||
if ( argument == 1 ) {
|
||||
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_task_restart: blocked task -- preempts caller",
|
||||
end_time,
|
||||
1,
|
||||
0,
|
||||
CALLING_OVERHEAD_TASK_RESTART
|
||||
);
|
||||
|
||||
status = rtems_task_set_priority(
|
||||
RTEMS_CURRENT_PRIORITY,
|
||||
254,
|
||||
&old_priority
|
||||
);
|
||||
directive_failed( status, "rtems_task_set_priority" );
|
||||
|
||||
} else if ( argument == 2 ) {
|
||||
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_task_restart: ready task -- preempts caller",
|
||||
end_time,
|
||||
1,
|
||||
0,
|
||||
CALLING_OVERHEAD_TASK_RESTART
|
||||
);
|
||||
|
||||
status = rtems_task_delete( RTEMS_SELF );
|
||||
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
|
||||
|
||||
} else
|
||||
(void) rtems_semaphore_obtain(
|
||||
Semaphore_id,
|
||||
RTEMS_DEFAULT_OPTIONS,
|
||||
RTEMS_NO_TIMEOUT
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
rtems_task High_task(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_status_code status;
|
||||
rtems_unsigned32 index;
|
||||
rtems_name name;
|
||||
rtems_task_priority old_priority;
|
||||
|
||||
Timer_initialize();
|
||||
(void) rtems_task_restart( Highest_id, 1 );
|
||||
/* preempted by Higher_task */
|
||||
|
||||
Timer_initialize();
|
||||
(void) rtems_task_restart( Highest_id, 2 );
|
||||
/* preempted by Higher_task */
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) Empty_function();
|
||||
overhead = Read_timer();
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
rtems_semaphore_release( Semaphore_id );
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_semaphore_release: task readied -- returns to caller",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
0,
|
||||
CALLING_OVERHEAD_SEMAPHORE_RELEASE
|
||||
);
|
||||
|
||||
name = rtems_build_name( 'T', 'I', 'M', 'E' );
|
||||
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ ) {
|
||||
status = rtems_task_delete( Task_id[index] );
|
||||
directive_failed( status, "rtems_task_delete" );
|
||||
}
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
rtems_task_create(
|
||||
name,
|
||||
10,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_NO_PREEMPT,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&Task_id[ index ]
|
||||
);
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_task_create",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
overhead,
|
||||
CALLING_OVERHEAD_TASK_CREATE
|
||||
);
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
rtems_task_start( Task_id[ index ], Low_tasks, 0 );
|
||||
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_task_start",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
overhead,
|
||||
CALLING_OVERHEAD_TASK_START
|
||||
);
|
||||
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ ) {
|
||||
status = rtems_task_delete( Task_id[ index ] );
|
||||
directive_failed( status, "rtems_task_delete" );
|
||||
}
|
||||
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ ) {
|
||||
status = rtems_task_create(
|
||||
name,
|
||||
250,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_NO_PREEMPT,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&Task_id[ index ]
|
||||
);
|
||||
directive_failed( status, "rtems_task_create LOOP" );
|
||||
|
||||
status = rtems_task_start( Task_id[ index ], Restart_task, 0 );
|
||||
directive_failed( status, "rtems_task_start LOOP" );
|
||||
|
||||
status = rtems_task_suspend( Task_id[ index ] );
|
||||
directive_failed( status, "rtems_task_suspend LOOP" );
|
||||
}
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) rtems_task_restart( Task_id[ index ], 0 );
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_task_restart: suspended task -- returns to caller",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
overhead,
|
||||
CALLING_OVERHEAD_TASK_RESTART
|
||||
);
|
||||
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) rtems_task_suspend( Task_id[ index ] );
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) rtems_task_delete( Task_id[ index ] );
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_task_delete: suspended task",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
overhead,
|
||||
CALLING_OVERHEAD_TASK_DELETE
|
||||
);
|
||||
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ ) {
|
||||
status = rtems_task_create(
|
||||
name,
|
||||
250,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&Task_id[ index ]
|
||||
);
|
||||
directive_failed( status, "rtems_task_create LOOP" );
|
||||
|
||||
status = rtems_task_start( Task_id[ index ], Restart_task, 0 );
|
||||
directive_failed( status, "rtems_task_start LOOP" );
|
||||
}
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) rtems_task_restart( Task_id[ index ], 1 );
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_task_restart: ready task -- returns to caller",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
overhead,
|
||||
CALLING_OVERHEAD_TASK_RESTART
|
||||
);
|
||||
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ ) {
|
||||
status = rtems_task_set_priority( Task_id[ index ], 5, &old_priority );
|
||||
directive_failed( status, "rtems_task_set_priority loop" );
|
||||
}
|
||||
|
||||
/* yield processor -- tasks block */
|
||||
status = rtems_task_wake_after( RTEMS_YIELD_PROCESSOR );
|
||||
directive_failed( status, "rtems_task_wake_after" );
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) rtems_task_restart( Task_id[ index ], 1 );
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_task_restart: blocked task -- returns to caller",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
overhead,
|
||||
CALLING_OVERHEAD_TASK_RESTART
|
||||
);
|
||||
|
||||
/* yield processor -- tasks block */
|
||||
status = rtems_task_wake_after( RTEMS_YIELD_PROCESSOR );
|
||||
directive_failed( status, "rtems_task_wake_after" );
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) rtems_task_delete( Task_id[ index ] );
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_task_delete: blocked task",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
overhead,
|
||||
CALLING_OVERHEAD_TASK_DELETE
|
||||
);
|
||||
|
||||
puts( "*** END OF TEST 4 ***" );
|
||||
rtems_test_exit( 0 );
|
||||
}
|
||||
|
||||
rtems_task Low_tasks(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_id id;
|
||||
rtems_status_code status;
|
||||
|
||||
task_count--;
|
||||
|
||||
if ( task_count == 0 ) {
|
||||
status = rtems_task_create(
|
||||
rtems_build_name( 'H', 'I', ' ', ' ' ),
|
||||
5,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&id
|
||||
);
|
||||
directive_failed( status, "rtems_task_create HI" );
|
||||
|
||||
status = rtems_task_start( id, High_task, 0 );
|
||||
directive_failed( status, "rtems_task_start HI" );
|
||||
|
||||
status = rtems_task_create(
|
||||
rtems_build_name( 'H', 'I', 'G', 'H' ),
|
||||
3,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&Highest_id
|
||||
);
|
||||
directive_failed( status, "rtems_task_create HIGH" );
|
||||
|
||||
status = rtems_task_start( Highest_id, Highest_task, 0 );
|
||||
directive_failed( status, "rtems_task_start HIGH" );
|
||||
|
||||
}
|
||||
(void) rtems_semaphore_obtain(
|
||||
Semaphore_id,
|
||||
RTEMS_DEFAULT_OPTIONS,
|
||||
RTEMS_NO_TIMEOUT
|
||||
);
|
||||
}
|
||||
|
||||
rtems_task Restart_task(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
if ( argument == 1 )
|
||||
(void) rtems_semaphore_obtain(
|
||||
Semaphore_id,
|
||||
RTEMS_DEFAULT_OPTIONS,
|
||||
RTEMS_NO_TIMEOUT
|
||||
);
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
# COPYRIGHT (c) 1989-1999.
|
||||
# On-Line Applications Research Corporation (OAR).
|
||||
#
|
||||
# The license and distribution terms for this file may be
|
||||
# found in the file LICENSE in this distribution or at
|
||||
# http://www.rtems.com/license/LICENSE.
|
||||
#
|
||||
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,45 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
|
||||
TEST = tm05
|
||||
|
||||
MANAGERS = io
|
||||
|
||||
C_FILES = task1.c
|
||||
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
|
||||
|
||||
H_FILES = system.h
|
||||
noinst_HEADERS = $(H_FILES)
|
||||
|
||||
DOCTYPES = doc
|
||||
DOCS = $(DOCTYPES:%=$(TEST).%)
|
||||
|
||||
SRCS = $(DOCS) $(C_FILES) $(H_FILES)
|
||||
OBJS = $(C_O_FILES)
|
||||
|
||||
PRINT_SRCS = $(DOCS)
|
||||
|
||||
PGM = ${ARCH}/$(TEST).exe
|
||||
|
||||
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
|
||||
include $(top_srcdir)/../automake/compile.am
|
||||
include $(top_srcdir)/../automake/leaf.am
|
||||
include $(top_srcdir)/tmtests.am
|
||||
|
||||
#
|
||||
# (OPTIONAL) Add local stuff here using +=
|
||||
#
|
||||
|
||||
OPERATION_COUNT = @OPERATION_COUNT@
|
||||
AM_CPPFLAGS += -I$(top_srcdir)/include -DOPERATION_COUNT=$(OPERATION_COUNT)
|
||||
|
||||
${PGM}: $(OBJS) $(LINK_FILES)
|
||||
$(make-exe)
|
||||
|
||||
all-local: $(ARCH) $(TMPINSTALL_FILES)
|
||||
|
||||
EXTRA_DIST = $(C_FILES) $(DOCS)
|
||||
|
||||
include $(top_srcdir)/../automake/local.am
|
||||
@@ -1,41 +0,0 @@
|
||||
/* system.h
|
||||
*
|
||||
* This include file is used by all tests in the Time Suite.
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
|
||||
#include <coverhd.h>
|
||||
#include <tmacros.h>
|
||||
|
||||
/* functions */
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
#include <timesys.h>
|
||||
|
||||
/* configuration information */
|
||||
|
||||
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
|
||||
#define CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER
|
||||
|
||||
#define CONFIGURE_MAXIMUM_TASKS 111
|
||||
#define CONFIGURE_MAXIMUM_TIMERS 110
|
||||
#define CONFIGURE_MAXIMUM_SEMAPHORES 101
|
||||
#define CONFIGURE_TICKS_PER_TIMESLICE 0
|
||||
|
||||
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
|
||||
|
||||
#include <confdefs.h>
|
||||
|
||||
/* end of include file */
|
||||
@@ -1,131 +0,0 @@
|
||||
/*
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#define TEST_INIT
|
||||
#include "system.h"
|
||||
|
||||
rtems_id Task_id[OPERATION_COUNT+1];
|
||||
rtems_unsigned32 Task_index;
|
||||
|
||||
rtems_task High_task(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task Middle_tasks(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task Low_task(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
void test_init();
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_status_code status;
|
||||
|
||||
Print_Warning();
|
||||
|
||||
puts( "\n\n*** TIME TEST 5 ***" );
|
||||
|
||||
test_init();
|
||||
|
||||
status = rtems_task_delete( RTEMS_SELF );
|
||||
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
|
||||
}
|
||||
|
||||
void test_init()
|
||||
{
|
||||
rtems_status_code status;
|
||||
rtems_task_entry task_entry;
|
||||
rtems_task_priority priority;
|
||||
rtems_unsigned32 index;
|
||||
|
||||
priority = 250;
|
||||
|
||||
for( index = 0; index <= OPERATION_COUNT ; index++ ) {
|
||||
|
||||
status = rtems_task_create(
|
||||
rtems_build_name( 'T', 'I', 'M', 'E' ),
|
||||
priority,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&Task_id[ index ]
|
||||
);
|
||||
directive_failed( status, "rtems_task_create loop" );
|
||||
|
||||
priority--;
|
||||
|
||||
if ( index==0 ) task_entry = Low_task;
|
||||
else if ( index==OPERATION_COUNT ) task_entry = High_task;
|
||||
else task_entry = Middle_tasks;
|
||||
|
||||
status = rtems_task_start( Task_id[ index ], task_entry, 0 );
|
||||
directive_failed( status, "rtems_task_start loop" );
|
||||
}
|
||||
}
|
||||
|
||||
rtems_task High_task(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
Timer_initialize();
|
||||
|
||||
(void) rtems_task_suspend( RTEMS_SELF );
|
||||
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_task_resume: task readied -- preempts caller",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
0,
|
||||
CALLING_OVERHEAD_TASK_RESUME
|
||||
);
|
||||
|
||||
puts( "*** END OF TEST 5 ***" );
|
||||
rtems_test_exit( 0 );
|
||||
}
|
||||
|
||||
rtems_task Middle_tasks(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
(void) rtems_task_suspend( RTEMS_SELF );
|
||||
|
||||
Task_index++;
|
||||
(void) rtems_task_resume( Task_id[ Task_index ] );
|
||||
}
|
||||
|
||||
rtems_task Low_task(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_task_suspend: calling task",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
0,
|
||||
CALLING_OVERHEAD_TASK_SUSPEND
|
||||
);
|
||||
|
||||
Task_index = 1;
|
||||
Timer_initialize();
|
||||
(void) rtems_task_resume( Task_id[ Task_index ] );
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
# COPYRIGHT (c) 1989-1999.
|
||||
# On-Line Applications Research Corporation (OAR).
|
||||
#
|
||||
# The license and distribution terms for this file may be
|
||||
# found in the file LICENSE in this distribution or at
|
||||
# http://www.rtems.com/license/LICENSE.
|
||||
#
|
||||
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,45 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
|
||||
TEST = tm06
|
||||
|
||||
MANAGERS = io
|
||||
|
||||
C_FILES = task1.c
|
||||
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
|
||||
|
||||
H_FILES = system.h
|
||||
noinst_HEADERS = $(H_FILES)
|
||||
|
||||
DOCTYPES = doc
|
||||
DOCS = $(DOCTYPES:%=$(TEST).%)
|
||||
|
||||
SRCS = $(DOCS) $(C_FILES) $(H_FILES)
|
||||
OBJS = $(C_O_FILES)
|
||||
|
||||
PRINT_SRCS = $(DOCS)
|
||||
|
||||
PGM = ${ARCH}/$(TEST).exe
|
||||
|
||||
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
|
||||
include $(top_srcdir)/../automake/compile.am
|
||||
include $(top_srcdir)/../automake/leaf.am
|
||||
include $(top_srcdir)/tmtests.am
|
||||
|
||||
#
|
||||
# (OPTIONAL) Add local stuff here using +=
|
||||
#
|
||||
|
||||
OPERATION_COUNT = @OPERATION_COUNT@
|
||||
AM_CPPFLAGS += -I$(top_srcdir)/include -DOPERATION_COUNT=$(OPERATION_COUNT)
|
||||
|
||||
${PGM}: $(OBJS) $(LINK_FILES)
|
||||
$(make-exe)
|
||||
|
||||
all-local: $(ARCH) $(TMPINSTALL_FILES)
|
||||
|
||||
EXTRA_DIST = $(C_FILES) $(DOCS)
|
||||
|
||||
include $(top_srcdir)/../automake/local.am
|
||||
@@ -1,41 +0,0 @@
|
||||
/* system.h
|
||||
*
|
||||
* This include file is used by all tests in the Time Suite.
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
|
||||
#include <coverhd.h>
|
||||
#include <tmacros.h>
|
||||
|
||||
/* functions */
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
#include <timesys.h>
|
||||
|
||||
/* configuration information */
|
||||
|
||||
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
|
||||
#define CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER
|
||||
|
||||
#define CONFIGURE_MAXIMUM_TASKS 111
|
||||
#define CONFIGURE_MAXIMUM_TIMERS 110
|
||||
#define CONFIGURE_MAXIMUM_SEMAPHORES 101
|
||||
#define CONFIGURE_TICKS_PER_TIMESLICE 0
|
||||
|
||||
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
|
||||
|
||||
#include <confdefs.h>
|
||||
|
||||
/* end of include file */
|
||||
@@ -1,161 +0,0 @@
|
||||
/*
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#define TEST_INIT
|
||||
#include "system.h"
|
||||
|
||||
rtems_id Task_id[ OPERATION_COUNT + 1 ];
|
||||
|
||||
rtems_unsigned32 Task_restarted;
|
||||
|
||||
rtems_task null_task(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task Task_1(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
void test_init( void );
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_status_code status;
|
||||
|
||||
Print_Warning();
|
||||
|
||||
puts( "\n\n*** TIME TEST 6 ***" );
|
||||
|
||||
test_init();
|
||||
|
||||
status = rtems_task_delete( RTEMS_SELF );
|
||||
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
|
||||
}
|
||||
|
||||
void test_init( void )
|
||||
{
|
||||
rtems_status_code status;
|
||||
rtems_id id;
|
||||
|
||||
Task_restarted = OPERATION_COUNT;
|
||||
|
||||
status = rtems_task_create(
|
||||
rtems_build_name( 'T', 'I', 'M', 'E' ),
|
||||
128,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&id
|
||||
);
|
||||
directive_failed( status, "rtems_task_create" );
|
||||
|
||||
status = rtems_task_start( id, Task_1, 0 );
|
||||
directive_failed( status, "rtems_task_start" );
|
||||
}
|
||||
|
||||
rtems_task Task_1(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_status_code status;
|
||||
rtems_unsigned32 index;
|
||||
|
||||
if ( Task_restarted == OPERATION_COUNT )
|
||||
Timer_initialize();
|
||||
|
||||
Task_restarted--;
|
||||
|
||||
if ( Task_restarted != 0 )
|
||||
(void) rtems_task_restart( RTEMS_SELF, 0 );
|
||||
|
||||
end_time = Read_timer();
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) Empty_function();
|
||||
overhead = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_task_restart: calling task",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
overhead,
|
||||
CALLING_OVERHEAD_TASK_RESTART
|
||||
);
|
||||
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ ) {
|
||||
status = rtems_task_create(
|
||||
rtems_build_name( 'T', 'I', 'M', 'E' ),
|
||||
254,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&Task_id[ index ]
|
||||
);
|
||||
directive_failed( status, "rtems_task_create loop" );
|
||||
|
||||
status = rtems_task_start( Task_id[ index ], null_task, 0 );
|
||||
directive_failed( status, "rtems_task_start loop" );
|
||||
}
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) rtems_task_suspend( Task_id[ index ] );
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_task_suspend: returns to caller",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
0,
|
||||
CALLING_OVERHEAD_TASK_SUSPEND
|
||||
);
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) rtems_task_resume( Task_id[ index ] );
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_task_resume: task readied -- returns to caller",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
0,
|
||||
CALLING_OVERHEAD_TASK_RESUME
|
||||
);
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) rtems_task_delete( Task_id[ index ] );
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_task_delete: ready task",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
0,
|
||||
CALLING_OVERHEAD_TASK_RESUME
|
||||
);
|
||||
|
||||
puts( "*** END OF TEST 6 ***" );
|
||||
rtems_test_exit( 0 );
|
||||
}
|
||||
|
||||
rtems_task null_task(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
while ( FOREVER )
|
||||
;
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
# COPYRIGHT (c) 1989-1999.
|
||||
# On-Line Applications Research Corporation (OAR).
|
||||
#
|
||||
# The license and distribution terms for this file may be
|
||||
# found in the file LICENSE in this distribution or at
|
||||
# http://www.rtems.com/license/LICENSE.
|
||||
#
|
||||
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,45 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
|
||||
TEST = tm07
|
||||
|
||||
MANAGERS = io
|
||||
|
||||
C_FILES = task1.c
|
||||
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
|
||||
|
||||
H_FILES = system.h
|
||||
noinst_HEADERS = $(H_FILES)
|
||||
|
||||
DOCTYPES = doc
|
||||
DOCS = $(DOCTYPES:%=$(TEST).%)
|
||||
|
||||
SRCS = $(DOCS) $(C_FILES) $(H_FILES)
|
||||
OBJS = $(C_O_FILES)
|
||||
|
||||
PRINT_SRCS = $(DOCS)
|
||||
|
||||
PGM = ${ARCH}/$(TEST).exe
|
||||
|
||||
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
|
||||
include $(top_srcdir)/../automake/compile.am
|
||||
include $(top_srcdir)/../automake/leaf.am
|
||||
include $(top_srcdir)/tmtests.am
|
||||
|
||||
#
|
||||
# (OPTIONAL) Add local stuff here using +=
|
||||
#
|
||||
|
||||
OPERATION_COUNT = @OPERATION_COUNT@
|
||||
AM_CPPFLAGS += -I$(top_srcdir)/include -DOPERATION_COUNT=$(OPERATION_COUNT)
|
||||
|
||||
${PGM}: $(OBJS) $(LINK_FILES)
|
||||
$(make-exe)
|
||||
|
||||
all-local: $(ARCH) $(TMPINSTALL_FILES)
|
||||
|
||||
EXTRA_DIST = $(C_FILES) $(DOCS)
|
||||
|
||||
include $(top_srcdir)/../automake/local.am
|
||||
@@ -1,41 +0,0 @@
|
||||
/* system.h
|
||||
*
|
||||
* This include file is used by all tests in the Time Suite.
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
|
||||
#include <coverhd.h>
|
||||
#include <tmacros.h>
|
||||
|
||||
/* functions */
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
#include <timesys.h>
|
||||
|
||||
/* configuration information */
|
||||
|
||||
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
|
||||
#define CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER
|
||||
|
||||
#define CONFIGURE_MAXIMUM_TASKS 111
|
||||
#define CONFIGURE_MAXIMUM_TIMERS 110
|
||||
#define CONFIGURE_MAXIMUM_SEMAPHORES 101
|
||||
#define CONFIGURE_TICKS_PER_TIMESLICE 0
|
||||
|
||||
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
|
||||
|
||||
#include <confdefs.h>
|
||||
|
||||
/* end of include file */
|
||||
@@ -1,119 +0,0 @@
|
||||
/*
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#define TEST_INIT
|
||||
#include "system.h"
|
||||
|
||||
rtems_id Task_id[ OPERATION_COUNT+1 ], task_index;
|
||||
|
||||
rtems_task High_task(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task Middle_tasks(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task Low_task(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
void test_init();
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_status_code status;
|
||||
|
||||
Print_Warning();
|
||||
|
||||
puts( "\n\n*** TIME TEST 7 ***" );
|
||||
|
||||
test_init();
|
||||
|
||||
status = rtems_task_delete( RTEMS_SELF );
|
||||
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
|
||||
}
|
||||
|
||||
void test_init()
|
||||
{
|
||||
rtems_status_code status;
|
||||
rtems_task_priority priority;
|
||||
rtems_task_entry task_entry;
|
||||
rtems_unsigned32 index;
|
||||
|
||||
priority = 250;
|
||||
|
||||
for( index=0 ; index <= OPERATION_COUNT ; index++ ) {
|
||||
status = rtems_task_create(
|
||||
rtems_build_name( 'T', 'I', 'M', 'E' ),
|
||||
priority,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&Task_id[index]
|
||||
);
|
||||
directive_failed( status, "rtems_task_create" );
|
||||
priority--;
|
||||
|
||||
if ( index == 0 ) task_entry = Low_task;
|
||||
else if ( index == OPERATION_COUNT ) task_entry = High_task;
|
||||
else task_entry = Middle_tasks;
|
||||
|
||||
status = rtems_task_start( Task_id[index], task_entry, 0 );
|
||||
directive_failed( status, "rtems_task_start" );
|
||||
}
|
||||
}
|
||||
|
||||
rtems_task High_task(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
if ( argument != 0 ) {
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_task_restart: suspended task -- preempts caller",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
0,
|
||||
CALLING_OVERHEAD_TASK_RESTART
|
||||
);
|
||||
} else
|
||||
(void) rtems_task_suspend( RTEMS_SELF );
|
||||
|
||||
puts( "*** END OF TEST 7 ***" );
|
||||
rtems_test_exit( 0 );
|
||||
}
|
||||
|
||||
rtems_task Middle_tasks(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
task_index++;
|
||||
|
||||
if ( argument != 0 )
|
||||
(void) rtems_task_restart( Task_id[ task_index ], 0xffffffff );
|
||||
else
|
||||
(void) rtems_task_suspend( RTEMS_SELF );
|
||||
}
|
||||
|
||||
rtems_task Low_task(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
task_index = 1;
|
||||
|
||||
Timer_initialize();
|
||||
(void) rtems_task_restart( Task_id[ task_index ], 0xffffffff );
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
# COPYRIGHT (c) 1989-1999.
|
||||
# On-Line Applications Research Corporation (OAR).
|
||||
#
|
||||
# The license and distribution terms for this file may be
|
||||
# found in the file LICENSE in this distribution or at
|
||||
# http://www.rtems.com/license/LICENSE.
|
||||
#
|
||||
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,45 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
|
||||
TEST = tm08
|
||||
|
||||
MANAGERS = io
|
||||
|
||||
C_FILES = task1.c
|
||||
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
|
||||
|
||||
H_FILES = system.h
|
||||
noinst_HEADERS = $(H_FILES)
|
||||
|
||||
DOCTYPES = doc
|
||||
DOCS = $(DOCTYPES:%=$(TEST).%)
|
||||
|
||||
SRCS = $(DOCS) $(C_FILES) $(H_FILES)
|
||||
OBJS = $(C_O_FILES)
|
||||
|
||||
PRINT_SRCS = $(DOCS)
|
||||
|
||||
PGM = ${ARCH}/$(TEST).exe
|
||||
|
||||
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
|
||||
include $(top_srcdir)/../automake/compile.am
|
||||
include $(top_srcdir)/../automake/leaf.am
|
||||
include $(top_srcdir)/tmtests.am
|
||||
|
||||
#
|
||||
# (OPTIONAL) Add local stuff here using +=
|
||||
#
|
||||
|
||||
OPERATION_COUNT = @OPERATION_COUNT@
|
||||
AM_CPPFLAGS += -I$(top_srcdir)/include -DOPERATION_COUNT=$(OPERATION_COUNT)
|
||||
|
||||
${PGM}: $(OBJS) $(LINK_FILES)
|
||||
$(make-exe)
|
||||
|
||||
all-local: $(ARCH) $(TMPINSTALL_FILES)
|
||||
|
||||
EXTRA_DIST = $(C_FILES) $(DOCS)
|
||||
|
||||
include $(top_srcdir)/../automake/local.am
|
||||
@@ -1,41 +0,0 @@
|
||||
/* system.h
|
||||
*
|
||||
* This include file is used by all tests in the Time Suite.
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
|
||||
#include <coverhd.h>
|
||||
#include <tmacros.h>
|
||||
|
||||
/* functions */
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
#include <timesys.h>
|
||||
|
||||
/* configuration information */
|
||||
|
||||
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
|
||||
#define CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER
|
||||
|
||||
#define CONFIGURE_MAXIMUM_TASKS 111
|
||||
#define CONFIGURE_MAXIMUM_TIMERS 110
|
||||
#define CONFIGURE_MAXIMUM_SEMAPHORES 101
|
||||
#define CONFIGURE_TICKS_PER_TIMESLICE 0
|
||||
|
||||
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
|
||||
|
||||
#include <confdefs.h>
|
||||
|
||||
/* end of include file */
|
||||
@@ -1,254 +0,0 @@
|
||||
/*
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#define TEST_INIT
|
||||
#include "system.h"
|
||||
|
||||
rtems_id Test_task_id;
|
||||
|
||||
rtems_task test_task(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
rtems_task test_task1(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
void test_init();
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_status_code status;
|
||||
|
||||
Print_Warning();
|
||||
|
||||
puts( "\n\n*** TIME TEST 8 ***" );
|
||||
|
||||
test_init();
|
||||
|
||||
status = rtems_task_delete( RTEMS_SELF );
|
||||
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
|
||||
}
|
||||
|
||||
void test_init()
|
||||
{
|
||||
rtems_status_code status;
|
||||
|
||||
status = rtems_task_create(
|
||||
1,
|
||||
128,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&Test_task_id
|
||||
);
|
||||
directive_failed( status, "rtems_task_create" );
|
||||
|
||||
status = rtems_task_start( Test_task_id, test_task, 0 );
|
||||
directive_failed( status, "rtems_task_start" );
|
||||
|
||||
status = rtems_task_create(
|
||||
1,
|
||||
254,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&Test_task_id
|
||||
);
|
||||
directive_failed( status, "rtems_task_create" );
|
||||
|
||||
status = rtems_task_start( Test_task_id, test_task1, 0 );
|
||||
directive_failed( status, "rtems_task_start" );
|
||||
}
|
||||
|
||||
rtems_task test_task(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_status_code status;
|
||||
rtems_unsigned32 index;
|
||||
rtems_task_priority old_priority;
|
||||
rtems_time_of_day time;
|
||||
rtems_unsigned32 old_note;
|
||||
rtems_unsigned32 old_mode;
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) Empty_function();
|
||||
overhead = Read_timer();
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) rtems_task_set_priority(
|
||||
Test_task_id,
|
||||
RTEMS_CURRENT_PRIORITY,
|
||||
&old_priority
|
||||
);
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_task_set_priority: obtain current priority",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
overhead,
|
||||
CALLING_OVERHEAD_TASK_SET_PRIORITY
|
||||
);
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) rtems_task_set_priority( Test_task_id, 253, &old_priority );
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_task_set_priority: returns to caller",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
overhead,
|
||||
CALLING_OVERHEAD_TASK_SET_PRIORITY
|
||||
);
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) rtems_task_mode(
|
||||
RTEMS_CURRENT_MODE,
|
||||
RTEMS_CURRENT_MODE,
|
||||
&old_mode
|
||||
);
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_task_mode: obtain current mode",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
overhead,
|
||||
CALLING_OVERHEAD_TASK_MODE
|
||||
);
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ ) {
|
||||
(void) rtems_task_mode(
|
||||
RTEMS_INTERRUPT_LEVEL(1),
|
||||
RTEMS_INTERRUPT_MASK,
|
||||
&old_mode
|
||||
);
|
||||
(void) rtems_task_mode(
|
||||
RTEMS_INTERRUPT_LEVEL(0),
|
||||
RTEMS_INTERRUPT_MASK,
|
||||
&old_mode
|
||||
);
|
||||
}
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_task_mode: no reschedule",
|
||||
end_time,
|
||||
OPERATION_COUNT * 2,
|
||||
overhead,
|
||||
CALLING_OVERHEAD_TASK_MODE
|
||||
);
|
||||
|
||||
Timer_initialize(); /* must be one host */
|
||||
(void) rtems_task_mode( RTEMS_NO_ASR, RTEMS_ASR_MASK, &old_mode );
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_task_mode: reschedule -- returns to caller",
|
||||
end_time,
|
||||
1,
|
||||
0,
|
||||
CALLING_OVERHEAD_TASK_MODE
|
||||
);
|
||||
|
||||
status = rtems_task_mode( RTEMS_NO_PREEMPT, RTEMS_PREEMPT_MASK, &old_mode );
|
||||
directive_failed( status, "rtems_task_mode" );
|
||||
|
||||
status = rtems_task_set_priority( Test_task_id, 1, &old_priority );
|
||||
directive_failed( status, "rtems_task_set_priority" );
|
||||
|
||||
/* preempted by test_task1 */
|
||||
Timer_initialize();
|
||||
(void) rtems_task_mode( RTEMS_PREEMPT, RTEMS_PREEMPT_MASK, &old_mode );
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) rtems_task_set_note( Test_task_id, 8, 10 );
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_task_set_note",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
overhead,
|
||||
CALLING_OVERHEAD_TASK_SET_NOTE
|
||||
);
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) rtems_task_get_note( Test_task_id, 8, &old_note );
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_task_get_note",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
overhead,
|
||||
CALLING_OVERHEAD_TASK_GET_NOTE
|
||||
);
|
||||
|
||||
build_time( &time, 1, 1, 1988, 0, 0, 0, 0 );
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) rtems_clock_set( &time );
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_clock_set",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
overhead,
|
||||
CALLING_OVERHEAD_CLOCK_SET
|
||||
);
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) rtems_clock_get( RTEMS_CLOCK_GET_TOD, &time );
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_clock_get",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
overhead,
|
||||
CALLING_OVERHEAD_CLOCK_GET
|
||||
);
|
||||
|
||||
puts( "*** END OF TEST 8 ***" );
|
||||
rtems_test_exit( 0 );
|
||||
}
|
||||
|
||||
rtems_task test_task1(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_task_mode: reschedule -- preempts caller",
|
||||
end_time,
|
||||
1,
|
||||
0,
|
||||
CALLING_OVERHEAD_TASK_MODE
|
||||
);
|
||||
|
||||
(void) rtems_task_suspend( RTEMS_SELF );
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
# COPYRIGHT (c) 1989-1999.
|
||||
# On-Line Applications Research Corporation (OAR).
|
||||
#
|
||||
# The license and distribution terms for this file may be
|
||||
# found in the file LICENSE in this distribution or at
|
||||
# http://www.rtems.com/license/LICENSE.
|
||||
#
|
||||
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,45 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
|
||||
TEST = tm09
|
||||
|
||||
MANAGERS = io message
|
||||
|
||||
C_FILES = task1.c
|
||||
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
|
||||
|
||||
H_FILES = system.h
|
||||
noinst_HEADERS = $(H_FILES)
|
||||
|
||||
DOCTYPES = doc
|
||||
DOCS = $(DOCTYPES:%=$(TEST).%)
|
||||
|
||||
SRCS = $(DOCS) $(C_FILES) $(H_FILES)
|
||||
OBJS = $(C_O_FILES)
|
||||
|
||||
PRINT_SRCS = $(DOCS)
|
||||
|
||||
PGM = ${ARCH}/$(TEST).exe
|
||||
|
||||
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
|
||||
include $(top_srcdir)/../automake/compile.am
|
||||
include $(top_srcdir)/../automake/leaf.am
|
||||
include $(top_srcdir)/tmtests.am
|
||||
|
||||
#
|
||||
# (OPTIONAL) Add local stuff here using +=
|
||||
#
|
||||
|
||||
OPERATION_COUNT = @OPERATION_COUNT@
|
||||
AM_CPPFLAGS += -I$(top_srcdir)/include -DOPERATION_COUNT=$(OPERATION_COUNT)
|
||||
|
||||
${PGM}: $(OBJS) $(LINK_FILES)
|
||||
$(make-exe)
|
||||
|
||||
all-local: $(ARCH) $(TMPINSTALL_FILES)
|
||||
|
||||
EXTRA_DIST = $(C_FILES) $(DOCS)
|
||||
|
||||
include $(top_srcdir)/../automake/local.am
|
||||
@@ -1,42 +0,0 @@
|
||||
/* system.h
|
||||
*
|
||||
* This include file is used by all tests in the Time Suite.
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
|
||||
#include <coverhd.h>
|
||||
#include <tmacros.h>
|
||||
|
||||
/* functions */
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
#include <timesys.h>
|
||||
|
||||
/* configuration information */
|
||||
|
||||
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
|
||||
#define CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER
|
||||
|
||||
#define CONFIGURE_MAXIMUM_TASKS 2
|
||||
#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 1
|
||||
#define CONFIGURE_TICKS_PER_TIMESLICE 0
|
||||
|
||||
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
|
||||
|
||||
#define CONFIGURE_EXTRA_TASK_STACKS (1 * RTEMS_MINIMUM_STACK_SIZE)
|
||||
|
||||
#include <confdefs.h>
|
||||
|
||||
/* end of include file */
|
||||
@@ -1,227 +0,0 @@
|
||||
/*
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#define TEST_INIT
|
||||
#include "system.h"
|
||||
|
||||
rtems_id Queue_id;
|
||||
|
||||
rtems_task Test_task(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
void queue_test();
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_status_code status;
|
||||
|
||||
Print_Warning();
|
||||
|
||||
puts( "\n\n*** TIME TEST 9 ***" );
|
||||
|
||||
status = rtems_task_create(
|
||||
1,
|
||||
128,
|
||||
RTEMS_MINIMUM_STACK_SIZE * 2,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&Task_id[ 1 ]
|
||||
);
|
||||
directive_failed( status, "rtems_task_create" );
|
||||
|
||||
status = rtems_task_start( Task_id[ 1 ], Test_task, 0 );
|
||||
directive_failed( status, "rtems_task_start" );
|
||||
|
||||
status = rtems_task_delete( RTEMS_SELF );
|
||||
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
|
||||
}
|
||||
|
||||
#define MESSAGE_SIZE (sizeof(long) * 4)
|
||||
|
||||
rtems_task Test_task (
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
Timer_initialize();
|
||||
rtems_message_queue_create(
|
||||
1,
|
||||
OPERATION_COUNT,
|
||||
MESSAGE_SIZE,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&Queue_id
|
||||
);
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_message_queue_create",
|
||||
end_time,
|
||||
1,
|
||||
0,
|
||||
CALLING_OVERHEAD_MESSAGE_QUEUE_CREATE
|
||||
);
|
||||
|
||||
queue_test();
|
||||
|
||||
Timer_initialize();
|
||||
rtems_message_queue_delete( Queue_id );
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_message_queue_delete",
|
||||
end_time,
|
||||
1,
|
||||
0,
|
||||
CALLING_OVERHEAD_MESSAGE_QUEUE_DELETE
|
||||
);
|
||||
|
||||
puts( "*** END OF TEST 9 ***" );
|
||||
rtems_test_exit( 0 );
|
||||
}
|
||||
|
||||
void queue_test()
|
||||
{
|
||||
rtems_unsigned32 send_loop_time;
|
||||
rtems_unsigned32 urgent_loop_time;
|
||||
rtems_unsigned32 receive_loop_time;
|
||||
rtems_unsigned32 send_time;
|
||||
rtems_unsigned32 urgent_time;
|
||||
rtems_unsigned32 receive_time;
|
||||
rtems_unsigned32 empty_flush_time;
|
||||
rtems_unsigned32 flush_time;
|
||||
rtems_unsigned32 empty_flush_count;
|
||||
rtems_unsigned32 flush_count;
|
||||
rtems_unsigned32 index;
|
||||
rtems_unsigned32 iterations;
|
||||
long buffer[4];
|
||||
rtems_status_code status;
|
||||
rtems_unsigned32 size;
|
||||
|
||||
send_loop_time = 0;
|
||||
urgent_loop_time = 0;
|
||||
receive_loop_time = 0;
|
||||
send_time = 0;
|
||||
urgent_time = 0;
|
||||
receive_time = 0;
|
||||
empty_flush_time = 0;
|
||||
flush_time = 0;
|
||||
flush_count = 0;
|
||||
empty_flush_count = 0;
|
||||
|
||||
for ( iterations = 1 ; iterations <= OPERATION_COUNT ; iterations++ ) {
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) Empty_function();
|
||||
send_loop_time += Read_timer();
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) Empty_function();
|
||||
urgent_loop_time += Read_timer();
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) Empty_function();
|
||||
receive_loop_time += Read_timer();
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) rtems_message_queue_send( Queue_id, buffer, MESSAGE_SIZE );
|
||||
send_time += Read_timer();
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) rtems_message_queue_receive(
|
||||
Queue_id,
|
||||
(long (*)[4])buffer,
|
||||
&size,
|
||||
RTEMS_DEFAULT_OPTIONS,
|
||||
RTEMS_NO_TIMEOUT
|
||||
);
|
||||
receive_time += Read_timer();
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) rtems_message_queue_urgent( Queue_id, buffer, MESSAGE_SIZE );
|
||||
urgent_time += Read_timer();
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) rtems_message_queue_receive(
|
||||
Queue_id,
|
||||
(long (*)[4])buffer,
|
||||
&size,
|
||||
RTEMS_DEFAULT_OPTIONS,
|
||||
RTEMS_NO_TIMEOUT
|
||||
);
|
||||
receive_time += Read_timer();
|
||||
|
||||
Timer_initialize();
|
||||
rtems_message_queue_flush( Queue_id, &empty_flush_count );
|
||||
empty_flush_time += Read_timer();
|
||||
|
||||
/* send one message to flush */
|
||||
status = rtems_message_queue_send(
|
||||
Queue_id,
|
||||
(long (*)[4])buffer,
|
||||
MESSAGE_SIZE
|
||||
);
|
||||
directive_failed( status, "rtems_message_queue_send" );
|
||||
|
||||
Timer_initialize();
|
||||
rtems_message_queue_flush( Queue_id, &flush_count );
|
||||
flush_time += Read_timer();
|
||||
}
|
||||
|
||||
put_time(
|
||||
"rtems_message_queue_send: no waiting tasks",
|
||||
send_time,
|
||||
OPERATION_COUNT * OPERATION_COUNT,
|
||||
send_loop_time,
|
||||
CALLING_OVERHEAD_MESSAGE_QUEUE_SEND
|
||||
);
|
||||
|
||||
put_time(
|
||||
"rtems_message_queue_urgent: no waiting tasks",
|
||||
urgent_time,
|
||||
OPERATION_COUNT * OPERATION_COUNT,
|
||||
urgent_loop_time,
|
||||
CALLING_OVERHEAD_MESSAGE_QUEUE_URGENT
|
||||
);
|
||||
|
||||
put_time(
|
||||
"rtems_message_queue_receive: available",
|
||||
receive_time,
|
||||
OPERATION_COUNT * OPERATION_COUNT * 2,
|
||||
receive_loop_time * 2,
|
||||
CALLING_OVERHEAD_MESSAGE_QUEUE_RECEIVE
|
||||
);
|
||||
|
||||
put_time(
|
||||
"rtems_message_queue_flush: no messages flushed",
|
||||
empty_flush_time,
|
||||
OPERATION_COUNT,
|
||||
0,
|
||||
CALLING_OVERHEAD_MESSAGE_QUEUE_FLUSH
|
||||
);
|
||||
|
||||
put_time(
|
||||
"rtems_message_queue_flush: messages flushed",
|
||||
flush_time,
|
||||
OPERATION_COUNT,
|
||||
0,
|
||||
CALLING_OVERHEAD_MESSAGE_QUEUE_FLUSH
|
||||
);
|
||||
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
# COPYRIGHT (c) 1989-1999.
|
||||
# On-Line Applications Research Corporation (OAR).
|
||||
#
|
||||
# The license and distribution terms for this file may be
|
||||
# found in the file LICENSE in this distribution or at
|
||||
# http://www.rtems.com/license/LICENSE.
|
||||
#
|
||||
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,45 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
|
||||
TEST = tm10
|
||||
|
||||
MANAGERS = io message
|
||||
|
||||
C_FILES = task1.c
|
||||
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
|
||||
|
||||
H_FILES = system.h
|
||||
noinst_HEADERS = $(H_FILES)
|
||||
|
||||
DOCTYPES = doc
|
||||
DOCS = $(DOCTYPES:%=$(TEST).%)
|
||||
|
||||
SRCS = $(DOCS) $(C_FILES) $(H_FILES)
|
||||
OBJS = $(C_O_FILES)
|
||||
|
||||
PRINT_SRCS = $(DOCS)
|
||||
|
||||
PGM = ${ARCH}/$(TEST).exe
|
||||
|
||||
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
|
||||
include $(top_srcdir)/../automake/compile.am
|
||||
include $(top_srcdir)/../automake/leaf.am
|
||||
include $(top_srcdir)/tmtests.am
|
||||
|
||||
#
|
||||
# (OPTIONAL) Add local stuff here using +=
|
||||
#
|
||||
|
||||
OPERATION_COUNT = @OPERATION_COUNT@
|
||||
AM_CPPFLAGS += -I$(top_srcdir)/include -DOPERATION_COUNT=$(OPERATION_COUNT)
|
||||
|
||||
${PGM}: $(OBJS) $(LINK_FILES)
|
||||
$(make-exe)
|
||||
|
||||
all-local: $(ARCH) $(TMPINSTALL_FILES)
|
||||
|
||||
EXTRA_DIST = $(C_FILES) $(DOCS)
|
||||
|
||||
include $(top_srcdir)/../automake/local.am
|
||||
@@ -1,40 +0,0 @@
|
||||
/* system.h
|
||||
*
|
||||
* This include file is used by all tests in the Time Suite.
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
|
||||
#include <coverhd.h>
|
||||
#include <tmacros.h>
|
||||
|
||||
/* functions */
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
#include <timesys.h>
|
||||
|
||||
/* configuration information */
|
||||
|
||||
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
|
||||
#define CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER
|
||||
|
||||
#define CONFIGURE_MAXIMUM_TASKS 110
|
||||
#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 1
|
||||
#define CONFIGURE_TICKS_PER_TIMESLICE 0
|
||||
|
||||
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
|
||||
|
||||
#include <confdefs.h>
|
||||
|
||||
/* end of include file */
|
||||
@@ -1,164 +0,0 @@
|
||||
/*
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#define TEST_INIT
|
||||
#include "system.h"
|
||||
|
||||
rtems_id Queue_id;
|
||||
long Buffer[4];
|
||||
|
||||
rtems_task High_task(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task Middle_tasks(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task Low_task(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
void test_init();
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_status_code status;
|
||||
|
||||
Print_Warning();
|
||||
|
||||
puts( "\n\n*** TIME TEST 10 ***" );
|
||||
|
||||
test_init();
|
||||
|
||||
status = rtems_task_delete( RTEMS_SELF );
|
||||
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
|
||||
}
|
||||
|
||||
void test_init()
|
||||
{
|
||||
rtems_unsigned32 index;
|
||||
rtems_unsigned32 size;
|
||||
rtems_task_entry task_entry;
|
||||
rtems_status_code status;
|
||||
rtems_task_priority priority;
|
||||
rtems_id task_id;
|
||||
|
||||
priority = 5;
|
||||
|
||||
for( index = 0; index <= OPERATION_COUNT ; index++ ) {
|
||||
status = rtems_task_create(
|
||||
rtems_build_name( 'T', 'I', 'M', 'E' ),
|
||||
priority,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&task_id
|
||||
);
|
||||
directive_failed( status, "rtems_task_create LOOP" );
|
||||
|
||||
priority++;
|
||||
|
||||
if ( index==0 ) task_entry = High_task;
|
||||
else if ( index==OPERATION_COUNT ) task_entry = Low_task;
|
||||
else task_entry = Middle_tasks;
|
||||
|
||||
status = rtems_task_start( task_id, task_entry, 0 );
|
||||
directive_failed( status, "rtems_task_start LOOP" );
|
||||
}
|
||||
|
||||
status = rtems_message_queue_create(
|
||||
1,
|
||||
OPERATION_COUNT,
|
||||
16,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&Queue_id
|
||||
);
|
||||
directive_failed( status, "rtems_message_queue_create" );
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) Empty_function();
|
||||
overhead = Read_timer();
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) rtems_message_queue_receive(
|
||||
Queue_id,
|
||||
(long (*)[4]) Buffer,
|
||||
&size,
|
||||
RTEMS_NO_WAIT,
|
||||
RTEMS_NO_TIMEOUT
|
||||
);
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_message_queue_receive: not available -- NO_WAIT",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
overhead,
|
||||
CALLING_OVERHEAD_MESSAGE_QUEUE_RECEIVE
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
rtems_task High_task(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_unsigned32 size;
|
||||
|
||||
Timer_initialize();
|
||||
(void) rtems_message_queue_receive(
|
||||
Queue_id,
|
||||
(long (*)[4]) Buffer,
|
||||
&size,
|
||||
RTEMS_DEFAULT_OPTIONS,
|
||||
RTEMS_NO_TIMEOUT
|
||||
);
|
||||
}
|
||||
|
||||
rtems_task Middle_tasks(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_unsigned32 size;
|
||||
|
||||
(void) rtems_message_queue_receive(
|
||||
Queue_id,
|
||||
(long (*)[4]) Buffer,
|
||||
&size,
|
||||
RTEMS_DEFAULT_OPTIONS,
|
||||
RTEMS_NO_TIMEOUT
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
rtems_task Low_task(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_message_queue_receive: not available -- caller blocks",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
0,
|
||||
CALLING_OVERHEAD_MESSAGE_QUEUE_RECEIVE
|
||||
);
|
||||
|
||||
puts( "*** END OF TEST 10 ***" );
|
||||
rtems_test_exit( 0 );
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
# COPYRIGHT (c) 1989-1999.
|
||||
# On-Line Applications Research Corporation (OAR).
|
||||
#
|
||||
# The license and distribution terms for this file may be
|
||||
# found in the file LICENSE in this distribution or at
|
||||
# http://www.rtems.com/license/LICENSE.
|
||||
#
|
||||
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,45 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
|
||||
TEST = tm11
|
||||
|
||||
MANAGERS = io message
|
||||
|
||||
C_FILES = task1.c
|
||||
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
|
||||
|
||||
H_FILES = system.h
|
||||
noinst_HEADERS = $(H_FILES)
|
||||
|
||||
DOCTYPES = doc
|
||||
DOCS = $(DOCTYPES:%=$(TEST).%)
|
||||
|
||||
SRCS = $(DOCS) $(C_FILES) $(H_FILES)
|
||||
OBJS = $(C_O_FILES)
|
||||
|
||||
PRINT_SRCS = $(DOCS)
|
||||
|
||||
PGM = ${ARCH}/$(TEST).exe
|
||||
|
||||
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
|
||||
include $(top_srcdir)/../automake/compile.am
|
||||
include $(top_srcdir)/../automake/leaf.am
|
||||
include $(top_srcdir)/tmtests.am
|
||||
|
||||
#
|
||||
# (OPTIONAL) Add local stuff here using +=
|
||||
#
|
||||
|
||||
OPERATION_COUNT = @OPERATION_COUNT@
|
||||
AM_CPPFLAGS += -I$(top_srcdir)/include -DOPERATION_COUNT=$(OPERATION_COUNT)
|
||||
|
||||
${PGM}: $(OBJS) $(LINK_FILES)
|
||||
$(make-exe)
|
||||
|
||||
all-local: $(ARCH) $(TMPINSTALL_FILES)
|
||||
|
||||
EXTRA_DIST = $(C_FILES) $(DOCS)
|
||||
|
||||
include $(top_srcdir)/../automake/local.am
|
||||
@@ -1,40 +0,0 @@
|
||||
/* system.h
|
||||
*
|
||||
* This include file is used by all tests in the Time Suite.
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
|
||||
#include <coverhd.h>
|
||||
#include <tmacros.h>
|
||||
|
||||
/* functions */
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
#include <timesys.h>
|
||||
|
||||
/* configuration information */
|
||||
|
||||
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
|
||||
#define CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER
|
||||
|
||||
#define CONFIGURE_MAXIMUM_TASKS 111
|
||||
#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 1
|
||||
#define CONFIGURE_TICKS_PER_TIMESLICE 0
|
||||
|
||||
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
|
||||
|
||||
#include <confdefs.h>
|
||||
|
||||
/* end of include file */
|
||||
@@ -1,156 +0,0 @@
|
||||
/*
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#define TEST_INIT
|
||||
#include "system.h"
|
||||
|
||||
rtems_id Queue_id;
|
||||
|
||||
long Buffer[4];
|
||||
|
||||
rtems_task test_init(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task Middle_tasks(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task High_task(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
|
||||
void Init(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_status_code status;
|
||||
rtems_id id;
|
||||
|
||||
Print_Warning();
|
||||
|
||||
puts( "\n\n*** TIME TEST 11 ***" );
|
||||
|
||||
status = rtems_task_create(
|
||||
1,
|
||||
251,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&id
|
||||
);
|
||||
directive_failed( status, "rtems_task_create" );
|
||||
|
||||
status = rtems_task_start( id, test_init, 0 );
|
||||
directive_failed( status, "rtems_task_start" );
|
||||
|
||||
status = rtems_task_delete( RTEMS_SELF );
|
||||
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
|
||||
}
|
||||
|
||||
#define MESSAGE_SIZE (sizeof(long) * 4)
|
||||
|
||||
rtems_task test_init(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_unsigned32 index;
|
||||
rtems_task_entry task_entry;
|
||||
rtems_task_priority priority;
|
||||
rtems_id task_id;
|
||||
rtems_status_code status;
|
||||
|
||||
/* As each task is started, it preempts this task and
|
||||
* performs a blocking rtems_message_queue_receive. Upon completion of
|
||||
* this loop all created tasks are blocked.
|
||||
*/
|
||||
|
||||
status = rtems_message_queue_create(
|
||||
rtems_build_name( 'M', 'Q', '1', ' ' ),
|
||||
OPERATION_COUNT,
|
||||
MESSAGE_SIZE,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&Queue_id
|
||||
);
|
||||
directive_failed( status, "rtems_message_queue_create" );
|
||||
|
||||
priority = 250;
|
||||
|
||||
for( index = 0; index < OPERATION_COUNT ; index++ ) {
|
||||
status = rtems_task_create(
|
||||
rtems_build_name( 'T', 'I', 'M', 'E' ),
|
||||
priority,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&task_id
|
||||
);
|
||||
directive_failed( status, "rtems_task_create LOOP" );
|
||||
|
||||
priority--;
|
||||
|
||||
if ( index==OPERATION_COUNT-1 ) task_entry = High_task;
|
||||
else task_entry = Middle_tasks;
|
||||
|
||||
status = rtems_task_start( task_id, task_entry, 0 );
|
||||
directive_failed( status, "rtems_task_start LOOP" );
|
||||
}
|
||||
|
||||
Timer_initialize();
|
||||
(void) rtems_message_queue_send( Queue_id, Buffer, MESSAGE_SIZE );
|
||||
}
|
||||
|
||||
rtems_task Middle_tasks(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_unsigned32 size;
|
||||
|
||||
(void) rtems_message_queue_receive(
|
||||
Queue_id,
|
||||
(long (*)[4]) Buffer,
|
||||
&size,
|
||||
RTEMS_DEFAULT_OPTIONS,
|
||||
RTEMS_NO_TIMEOUT
|
||||
);
|
||||
|
||||
(void) rtems_message_queue_send( Queue_id, (long (*)[4]) Buffer, size );
|
||||
}
|
||||
|
||||
rtems_task High_task(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_unsigned32 size;
|
||||
|
||||
(void) rtems_message_queue_receive(
|
||||
Queue_id,
|
||||
(long (*)[4]) Buffer,
|
||||
&size,
|
||||
RTEMS_DEFAULT_OPTIONS,
|
||||
RTEMS_NO_TIMEOUT
|
||||
);
|
||||
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_message_queue_send: task readied -- preempts caller",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
0,
|
||||
CALLING_OVERHEAD_MESSAGE_QUEUE_SEND
|
||||
);
|
||||
|
||||
puts( "*** END OF TEST 11 ***" );
|
||||
rtems_test_exit( 0 );
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
# COPYRIGHT (c) 1989-1999.
|
||||
# On-Line Applications Research Corporation (OAR).
|
||||
#
|
||||
# The license and distribution terms for this file may be
|
||||
# found in the file LICENSE in this distribution or at
|
||||
# http://www.rtems.com/license/LICENSE.
|
||||
#
|
||||
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,45 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
|
||||
TEST = tm12
|
||||
|
||||
MANAGERS = io message
|
||||
|
||||
C_FILES = task1.c
|
||||
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
|
||||
|
||||
H_FILES = system.h
|
||||
noinst_HEADERS = $(H_FILES)
|
||||
|
||||
DOCTYPES = doc
|
||||
DOCS = $(DOCTYPES:%=$(TEST).%)
|
||||
|
||||
SRCS = $(DOCS) $(C_FILES) $(H_FILES)
|
||||
OBJS = $(C_O_FILES)
|
||||
|
||||
PRINT_SRCS = $(DOCS)
|
||||
|
||||
PGM = ${ARCH}/$(TEST).exe
|
||||
|
||||
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
|
||||
include $(top_srcdir)/../automake/compile.am
|
||||
include $(top_srcdir)/../automake/leaf.am
|
||||
include $(top_srcdir)/tmtests.am
|
||||
|
||||
#
|
||||
# (OPTIONAL) Add local stuff here using +=
|
||||
#
|
||||
|
||||
OPERATION_COUNT = @OPERATION_COUNT@
|
||||
AM_CPPFLAGS += -I$(top_srcdir)/include -DOPERATION_COUNT=$(OPERATION_COUNT)
|
||||
|
||||
${PGM}: $(OBJS) $(LINK_FILES)
|
||||
$(make-exe)
|
||||
|
||||
all-local: $(ARCH) $(TMPINSTALL_FILES)
|
||||
|
||||
EXTRA_DIST = $(C_FILES) $(DOCS)
|
||||
|
||||
include $(top_srcdir)/../automake/local.am
|
||||
@@ -1,40 +0,0 @@
|
||||
/* system.h
|
||||
*
|
||||
* This include file is used by all tests in the Time Suite.
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
|
||||
#include <coverhd.h>
|
||||
#include <tmacros.h>
|
||||
|
||||
/* functions */
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
#include <timesys.h>
|
||||
|
||||
/* configuration information */
|
||||
|
||||
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
|
||||
#define CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER
|
||||
|
||||
#define CONFIGURE_MAXIMUM_TASKS 111
|
||||
#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 1
|
||||
#define CONFIGURE_TICKS_PER_TIMESLICE 0
|
||||
|
||||
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
|
||||
|
||||
#include <confdefs.h>
|
||||
|
||||
/* end of include file */
|
||||
@@ -1,146 +0,0 @@
|
||||
/*
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#define TEST_INIT
|
||||
#include "system.h"
|
||||
|
||||
rtems_id Queue_id;
|
||||
|
||||
long Buffer[4];
|
||||
|
||||
rtems_task test_init(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task High_task(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task Low_tasks(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
#define MESSAGE_SIZE (sizeof(long) * 4)
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_id task_id;
|
||||
rtems_status_code status;
|
||||
|
||||
Print_Warning();
|
||||
|
||||
puts( "\n\n*** TIME TEST 12 ***" );
|
||||
|
||||
status = rtems_task_create(
|
||||
1,
|
||||
251,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&task_id
|
||||
);
|
||||
directive_failed( status, "rtems_task_create" );
|
||||
|
||||
status = rtems_task_start( task_id, test_init, 0 );
|
||||
directive_failed( status, "rtems_task_start" );
|
||||
|
||||
status = rtems_task_delete( RTEMS_SELF );
|
||||
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
|
||||
}
|
||||
|
||||
rtems_task test_init(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_unsigned32 index;
|
||||
rtems_task_entry task_entry;
|
||||
rtems_task_priority priority;
|
||||
rtems_id task_id;
|
||||
rtems_status_code status;
|
||||
|
||||
|
||||
status = rtems_message_queue_create(
|
||||
rtems_build_name( 'M', 'Q', '1', ' ' ),
|
||||
OPERATION_COUNT,
|
||||
MESSAGE_SIZE,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&Queue_id
|
||||
);
|
||||
directive_failed( status, "rtems_message_queue_create" );
|
||||
|
||||
priority = 250;
|
||||
|
||||
for( index = 0; index <= OPERATION_COUNT ; index++ ) {
|
||||
status = rtems_task_create(
|
||||
rtems_build_name( 'T', 'I', 'M', 'E' ),
|
||||
priority,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&task_id
|
||||
);
|
||||
directive_failed( status, "rtems_task_create LOOP" );
|
||||
|
||||
priority--;
|
||||
|
||||
if ( index==OPERATION_COUNT ) task_entry = High_task;
|
||||
else task_entry = Low_tasks;
|
||||
|
||||
status = rtems_task_start( task_id, task_entry, 0 );
|
||||
directive_failed( status, "rtems_task_start LOOP" );
|
||||
}
|
||||
}
|
||||
|
||||
rtems_task High_task(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_unsigned32 index;
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) Empty_function();
|
||||
overhead = Read_timer();
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) rtems_message_queue_send( Queue_id, Buffer, MESSAGE_SIZE );
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_message_queue_send: task readied -- returns to caller",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
overhead,
|
||||
CALLING_OVERHEAD_MESSAGE_QUEUE_SEND
|
||||
);
|
||||
|
||||
puts( "*** END OF TEST 12 ***" );
|
||||
rtems_test_exit( 0 );
|
||||
}
|
||||
|
||||
rtems_task Low_tasks(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_unsigned32 size;
|
||||
|
||||
(void) rtems_message_queue_receive(
|
||||
Queue_id,
|
||||
(long (*)[4]) Buffer,
|
||||
&size,
|
||||
RTEMS_DEFAULT_OPTIONS,
|
||||
RTEMS_NO_TIMEOUT
|
||||
);
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
# COPYRIGHT (c) 1989-1999.
|
||||
# On-Line Applications Research Corporation (OAR).
|
||||
#
|
||||
# The license and distribution terms for this file may be
|
||||
# found in the file LICENSE in this distribution or at
|
||||
# http://www.rtems.com/license/LICENSE.
|
||||
#
|
||||
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,45 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
|
||||
TEST = tm13
|
||||
|
||||
MANAGERS = io message
|
||||
|
||||
C_FILES = task1.c
|
||||
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
|
||||
|
||||
H_FILES = system.h
|
||||
noinst_HEADERS = $(H_FILES)
|
||||
|
||||
DOCTYPES = doc
|
||||
DOCS = $(DOCTYPES:%=$(TEST).%)
|
||||
|
||||
SRCS = $(DOCS) $(C_FILES) $(H_FILES)
|
||||
OBJS = $(C_O_FILES)
|
||||
|
||||
PRINT_SRCS = $(DOCS)
|
||||
|
||||
PGM = ${ARCH}/$(TEST).exe
|
||||
|
||||
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
|
||||
include $(top_srcdir)/../automake/compile.am
|
||||
include $(top_srcdir)/../automake/leaf.am
|
||||
include $(top_srcdir)/tmtests.am
|
||||
|
||||
#
|
||||
# (OPTIONAL) Add local stuff here using +=
|
||||
#
|
||||
|
||||
OPERATION_COUNT = @OPERATION_COUNT@
|
||||
AM_CPPFLAGS += -I$(top_srcdir)/include -DOPERATION_COUNT=$(OPERATION_COUNT)
|
||||
|
||||
${PGM}: $(OBJS) $(LINK_FILES)
|
||||
$(make-exe)
|
||||
|
||||
all-local: $(ARCH) $(TMPINSTALL_FILES)
|
||||
|
||||
EXTRA_DIST = $(C_FILES) $(DOCS)
|
||||
|
||||
include $(top_srcdir)/../automake/local.am
|
||||
@@ -1,40 +0,0 @@
|
||||
/* system.h
|
||||
*
|
||||
* This include file is used by all tests in the Time Suite.
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
|
||||
#include <coverhd.h>
|
||||
#include <tmacros.h>
|
||||
|
||||
/* functions */
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
#include <timesys.h>
|
||||
|
||||
/* configuration information */
|
||||
|
||||
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
|
||||
#define CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER
|
||||
|
||||
#define CONFIGURE_MAXIMUM_TASKS 111
|
||||
#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 1
|
||||
#define CONFIGURE_TICKS_PER_TIMESLICE 0
|
||||
|
||||
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
|
||||
|
||||
#include <confdefs.h>
|
||||
|
||||
/* end of include file */
|
||||
@@ -1,155 +0,0 @@
|
||||
/*
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#define TEST_INIT
|
||||
#include "system.h"
|
||||
|
||||
rtems_id Queue_id;
|
||||
|
||||
long Buffer[4];
|
||||
|
||||
rtems_task test_init(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task Middle_tasks(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task High_task(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
#define MESSAGE_SIZE (sizeof(long) * 4)
|
||||
|
||||
void Init(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_status_code status;
|
||||
rtems_id id;
|
||||
|
||||
Print_Warning();
|
||||
|
||||
puts( "\n\n*** TIME TEST 13 ***" );
|
||||
|
||||
status = rtems_task_create(
|
||||
1,
|
||||
251,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&id
|
||||
);
|
||||
directive_failed( status, "rtems_task_create" );
|
||||
|
||||
status = rtems_task_start( id, test_init, 0 );
|
||||
directive_failed( status, "rtems_task_start" );
|
||||
|
||||
status = rtems_task_delete( RTEMS_SELF );
|
||||
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
|
||||
}
|
||||
|
||||
rtems_task test_init(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_unsigned32 index;
|
||||
rtems_task_entry task_entry;
|
||||
rtems_task_priority priority;
|
||||
rtems_id task_id;
|
||||
rtems_status_code status;
|
||||
|
||||
/* As each task is started, it preempts this task and
|
||||
* performs a blocking rtems_message_queue_receive. Upon completion of
|
||||
* this loop all created tasks are blocked.
|
||||
*/
|
||||
|
||||
status = rtems_message_queue_create(
|
||||
rtems_build_name( 'M', 'Q', '1', ' ' ),
|
||||
OPERATION_COUNT,
|
||||
MESSAGE_SIZE,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&Queue_id
|
||||
);
|
||||
directive_failed( status, "rtems_message_queue_create" );
|
||||
|
||||
priority = 250;
|
||||
|
||||
for( index = 0; index < OPERATION_COUNT ; index++ ) {
|
||||
status = rtems_task_create(
|
||||
rtems_build_name( 'T', 'I', 'M', 'E' ),
|
||||
priority,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&task_id
|
||||
);
|
||||
directive_failed( status, "rtems_task_create LOOP" );
|
||||
|
||||
priority--;
|
||||
|
||||
if ( index==OPERATION_COUNT-1 ) task_entry = High_task;
|
||||
else task_entry = Middle_tasks;
|
||||
|
||||
status = rtems_task_start( task_id, task_entry, 0 );
|
||||
directive_failed( status, "rtems_task_start LOOP" );
|
||||
}
|
||||
|
||||
Timer_initialize();
|
||||
(void) rtems_message_queue_urgent( Queue_id, Buffer, MESSAGE_SIZE );
|
||||
}
|
||||
|
||||
rtems_task Middle_tasks(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_unsigned32 size;
|
||||
|
||||
(void) rtems_message_queue_receive(
|
||||
Queue_id,
|
||||
(long (*)[4]) Buffer,
|
||||
&size,
|
||||
RTEMS_DEFAULT_OPTIONS,
|
||||
RTEMS_NO_TIMEOUT
|
||||
);
|
||||
|
||||
(void) rtems_message_queue_urgent( Queue_id, (long (*)[4]) Buffer, size );
|
||||
}
|
||||
|
||||
rtems_task High_task(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_unsigned32 size;
|
||||
|
||||
(void) rtems_message_queue_receive(
|
||||
Queue_id,
|
||||
(long (*)[4]) Buffer,
|
||||
&size,
|
||||
RTEMS_DEFAULT_OPTIONS,
|
||||
RTEMS_NO_TIMEOUT
|
||||
);
|
||||
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_message_queue_urgent: task readied -- preempts caller",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
0,
|
||||
CALLING_OVERHEAD_MESSAGE_QUEUE_URGENT
|
||||
);
|
||||
|
||||
puts( "*** END OF TEST 13 ***" );
|
||||
rtems_test_exit( 0 );
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
# COPYRIGHT (c) 1989-1999.
|
||||
# On-Line Applications Research Corporation (OAR).
|
||||
#
|
||||
# The license and distribution terms for this file may be
|
||||
# found in the file LICENSE in this distribution or at
|
||||
# http://www.rtems.com/license/LICENSE.
|
||||
#
|
||||
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,45 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
|
||||
TEST = tm14
|
||||
|
||||
MANAGERS = io message
|
||||
|
||||
C_FILES = task1.c
|
||||
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
|
||||
|
||||
H_FILES = system.h
|
||||
noinst_HEADERS = $(H_FILES)
|
||||
|
||||
DOCTYPES = doc
|
||||
DOCS = $(DOCTYPES:%=$(TEST).%)
|
||||
|
||||
SRCS = $(DOCS) $(C_FILES) $(H_FILES)
|
||||
OBJS = $(C_O_FILES)
|
||||
|
||||
PRINT_SRCS = $(DOCS)
|
||||
|
||||
PGM = ${ARCH}/$(TEST).exe
|
||||
|
||||
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
|
||||
include $(top_srcdir)/../automake/compile.am
|
||||
include $(top_srcdir)/../automake/leaf.am
|
||||
include $(top_srcdir)/tmtests.am
|
||||
|
||||
#
|
||||
# (OPTIONAL) Add local stuff here using +=
|
||||
#
|
||||
|
||||
OPERATION_COUNT = @OPERATION_COUNT@
|
||||
AM_CPPFLAGS += -I$(top_srcdir)/include -DOPERATION_COUNT=$(OPERATION_COUNT)
|
||||
|
||||
${PGM}: $(OBJS) $(LINK_FILES)
|
||||
$(make-exe)
|
||||
|
||||
all-local: $(ARCH) $(TMPINSTALL_FILES)
|
||||
|
||||
EXTRA_DIST = $(C_FILES) $(DOCS)
|
||||
|
||||
include $(top_srcdir)/../automake/local.am
|
||||
@@ -1,40 +0,0 @@
|
||||
/* system.h
|
||||
*
|
||||
* This include file is used by all tests in the Time Suite.
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
|
||||
#include <coverhd.h>
|
||||
#include <tmacros.h>
|
||||
|
||||
/* functions */
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
#include <timesys.h>
|
||||
|
||||
/* configuration information */
|
||||
|
||||
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
|
||||
#define CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER
|
||||
|
||||
#define CONFIGURE_MAXIMUM_TASKS 111
|
||||
#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 1
|
||||
#define CONFIGURE_TICKS_PER_TIMESLICE 0
|
||||
|
||||
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
|
||||
|
||||
#include <confdefs.h>
|
||||
|
||||
/* end of include file */
|
||||
@@ -1,146 +0,0 @@
|
||||
/*
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#define TEST_INIT
|
||||
#include "system.h"
|
||||
|
||||
rtems_id Queue_id;
|
||||
|
||||
long Buffer[4];
|
||||
|
||||
rtems_task test_init(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task High_task(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task Low_tasks(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
#define MESSAGE_SIZE (sizeof(long) * 4)
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_id task_id;
|
||||
rtems_status_code status;
|
||||
|
||||
Print_Warning();
|
||||
|
||||
puts( "\n\n*** TIME TEST 14 ***" );
|
||||
|
||||
status = rtems_task_create(
|
||||
1,
|
||||
251,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&task_id
|
||||
);
|
||||
directive_failed( status, "rtems_task_create" );
|
||||
|
||||
status = rtems_task_start( task_id, test_init, 0 );
|
||||
directive_failed( status, "rtems_task_start" );
|
||||
|
||||
status = rtems_task_delete( RTEMS_SELF );
|
||||
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
|
||||
}
|
||||
|
||||
rtems_task test_init(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_unsigned32 index;
|
||||
rtems_task_entry task_entry;
|
||||
rtems_task_priority priority;
|
||||
rtems_id task_id;
|
||||
rtems_status_code status;
|
||||
|
||||
|
||||
status = rtems_message_queue_create(
|
||||
rtems_build_name( 'M', 'Q', '1', ' ' ),
|
||||
OPERATION_COUNT,
|
||||
MESSAGE_SIZE,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&Queue_id
|
||||
);
|
||||
directive_failed( status, "rtems_message_queue_create" );
|
||||
|
||||
priority = 250;
|
||||
|
||||
for( index = 0; index <= OPERATION_COUNT ; index++ ) {
|
||||
status = rtems_task_create(
|
||||
rtems_build_name( 'T', 'I', 'M', 'E' ),
|
||||
priority,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&task_id
|
||||
);
|
||||
directive_failed( status, "rtems_task_create LOOP" );
|
||||
|
||||
priority--;
|
||||
|
||||
if ( index==OPERATION_COUNT ) task_entry = High_task;
|
||||
else task_entry = Low_tasks;
|
||||
|
||||
status = rtems_task_start( task_id, task_entry, 0 );
|
||||
directive_failed( status, "rtems_task_start LOOP" );
|
||||
}
|
||||
}
|
||||
|
||||
rtems_task High_task(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_unsigned32 index;
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) Empty_function();
|
||||
overhead = Read_timer();
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) rtems_message_queue_urgent( Queue_id, Buffer, MESSAGE_SIZE );
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_message_queue_urgent: task readied -- returns to caller",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
overhead,
|
||||
CALLING_OVERHEAD_MESSAGE_QUEUE_URGENT
|
||||
);
|
||||
|
||||
puts( "*** END OF TEST 14 ***" );
|
||||
rtems_test_exit( 0 );
|
||||
}
|
||||
|
||||
rtems_task Low_tasks(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_unsigned32 size;
|
||||
|
||||
(void) rtems_message_queue_receive(
|
||||
Queue_id,
|
||||
(long (*)[4]) Buffer,
|
||||
&size,
|
||||
RTEMS_DEFAULT_OPTIONS,
|
||||
RTEMS_NO_TIMEOUT
|
||||
);
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
# COPYRIGHT (c) 1989-1999.
|
||||
# On-Line Applications Research Corporation (OAR).
|
||||
#
|
||||
# The license and distribution terms for this file may be
|
||||
# found in the file LICENSE in this distribution or at
|
||||
# http://www.rtems.com/license/LICENSE.
|
||||
#
|
||||
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,45 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
|
||||
TEST = tm15
|
||||
|
||||
MANAGERS = io event
|
||||
|
||||
C_FILES = task1.c
|
||||
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
|
||||
|
||||
H_FILES = system.h
|
||||
noinst_HEADERS = $(H_FILES)
|
||||
|
||||
DOCTYPES = doc
|
||||
DOCS = $(DOCTYPES:%=$(TEST).%)
|
||||
|
||||
SRCS = $(DOCS) $(C_FILES) $(H_FILES)
|
||||
OBJS = $(C_O_FILES)
|
||||
|
||||
PRINT_SRCS = $(DOCS)
|
||||
|
||||
PGM = ${ARCH}/$(TEST).exe
|
||||
|
||||
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
|
||||
include $(top_srcdir)/../automake/compile.am
|
||||
include $(top_srcdir)/../automake/leaf.am
|
||||
include $(top_srcdir)/tmtests.am
|
||||
|
||||
#
|
||||
# (OPTIONAL) Add local stuff here using +=
|
||||
#
|
||||
|
||||
OPERATION_COUNT = @OPERATION_COUNT@
|
||||
AM_CPPFLAGS += -I$(top_srcdir)/include -DOPERATION_COUNT=$(OPERATION_COUNT)
|
||||
|
||||
${PGM}: $(OBJS) $(LINK_FILES)
|
||||
$(make-exe)
|
||||
|
||||
all-local: $(ARCH) $(TMPINSTALL_FILES)
|
||||
|
||||
EXTRA_DIST = $(C_FILES) $(DOCS)
|
||||
|
||||
include $(top_srcdir)/../automake/local.am
|
||||
@@ -1,40 +0,0 @@
|
||||
/* system.h
|
||||
*
|
||||
* This include file is used by all tests in the Time Suite.
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
|
||||
#include <coverhd.h>
|
||||
#include <tmacros.h>
|
||||
|
||||
/* functions */
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
#include <timesys.h>
|
||||
|
||||
/* configuration information */
|
||||
|
||||
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
|
||||
#define CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER
|
||||
|
||||
#define CONFIGURE_MAXIMUM_TASKS 111
|
||||
#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 1
|
||||
#define CONFIGURE_TICKS_PER_TIMESLICE 0
|
||||
|
||||
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
|
||||
|
||||
#include <confdefs.h>
|
||||
|
||||
/* end of include file */
|
||||
@@ -1,221 +0,0 @@
|
||||
/*
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#define TEST_INIT
|
||||
#include "system.h"
|
||||
|
||||
rtems_unsigned32 time_set, eventout;
|
||||
|
||||
rtems_task High_tasks(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task Low_task(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
void test_init();
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_status_code status;
|
||||
|
||||
Print_Warning();
|
||||
|
||||
puts( "\n\n*** TIME TEST 15 ***" );
|
||||
|
||||
test_init();
|
||||
|
||||
status = rtems_task_delete( RTEMS_SELF );
|
||||
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
|
||||
}
|
||||
|
||||
void test_init()
|
||||
{
|
||||
rtems_id id;
|
||||
rtems_unsigned32 index;
|
||||
rtems_event_set event_out;
|
||||
rtems_status_code status;
|
||||
|
||||
time_set = FALSE;
|
||||
|
||||
status = rtems_task_create(
|
||||
rtems_build_name( 'L', 'O', 'W', ' ' ),
|
||||
10,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_NO_PREEMPT,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&id
|
||||
);
|
||||
directive_failed( status, "rtems_task_create LOW" );
|
||||
|
||||
status = rtems_task_start( id, Low_task, 0 );
|
||||
directive_failed( status, "rtems_task_start LOW" );
|
||||
|
||||
for ( index = 1 ; index <= OPERATION_COUNT ; index++ ) {
|
||||
status = rtems_task_create(
|
||||
rtems_build_name( 'H', 'I', 'G', 'H' ),
|
||||
5,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&Task_id[ index ]
|
||||
);
|
||||
directive_failed( status, "rtems_task_create LOOP" );
|
||||
|
||||
status = rtems_task_start( Task_id[ index ], High_tasks, 0 );
|
||||
directive_failed( status, "rtems_task_start LOOP" );
|
||||
}
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) Empty_function();
|
||||
overhead = Read_timer();
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
{
|
||||
(void) rtems_event_receive(
|
||||
RTEMS_PENDING_EVENTS,
|
||||
RTEMS_DEFAULT_OPTIONS,
|
||||
RTEMS_NO_TIMEOUT,
|
||||
&event_out
|
||||
);
|
||||
}
|
||||
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_event_receive: obtain current events",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
overhead,
|
||||
CALLING_OVERHEAD_EVENT_RECEIVE
|
||||
);
|
||||
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
{
|
||||
(void) rtems_event_receive(
|
||||
RTEMS_ALL_EVENTS,
|
||||
RTEMS_NO_WAIT,
|
||||
RTEMS_NO_TIMEOUT,
|
||||
&event_out
|
||||
);
|
||||
}
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_event_receive: not available -- NO_WAIT",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
overhead,
|
||||
CALLING_OVERHEAD_EVENT_RECEIVE
|
||||
);
|
||||
}
|
||||
|
||||
rtems_task Low_task(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_unsigned32 index;
|
||||
rtems_event_set event_out;
|
||||
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_event_receive: not available -- caller blocks",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
0,
|
||||
CALLING_OVERHEAD_EVENT_RECEIVE
|
||||
);
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) Empty_function();
|
||||
overhead = Read_timer();
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) rtems_event_send( RTEMS_SELF, RTEMS_EVENT_16 );
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_event_send: no task readied",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
overhead,
|
||||
CALLING_OVERHEAD_EVENT_SEND
|
||||
);
|
||||
|
||||
Timer_initialize();
|
||||
(void) rtems_event_receive(
|
||||
RTEMS_EVENT_16,
|
||||
RTEMS_DEFAULT_OPTIONS,
|
||||
RTEMS_NO_TIMEOUT,
|
||||
&event_out
|
||||
);
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_event_receive: available",
|
||||
end_time,
|
||||
1,
|
||||
0,
|
||||
CALLING_OVERHEAD_EVENT_RECEIVE
|
||||
);
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) rtems_event_send( Task_id[ index ], RTEMS_EVENT_16 );
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_event_send: task readied -- returns to caller",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
overhead,
|
||||
CALLING_OVERHEAD_EVENT_SEND
|
||||
);
|
||||
|
||||
puts( "*** END OF TEST 15 ***" );
|
||||
rtems_test_exit( 0 );
|
||||
}
|
||||
|
||||
rtems_task High_tasks(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_status_code status;
|
||||
|
||||
if ( time_set )
|
||||
status = rtems_event_receive(
|
||||
RTEMS_EVENT_16,
|
||||
RTEMS_DEFAULT_OPTIONS,
|
||||
RTEMS_NO_TIMEOUT,
|
||||
&eventout
|
||||
);
|
||||
else {
|
||||
time_set = 1;
|
||||
Timer_initialize(); /* start blocking rtems_event_receive time */
|
||||
status = rtems_event_receive(
|
||||
RTEMS_EVENT_16,
|
||||
RTEMS_DEFAULT_OPTIONS,
|
||||
RTEMS_NO_TIMEOUT,
|
||||
&eventout
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
# COPYRIGHT (c) 1989-1999.
|
||||
# On-Line Applications Research Corporation (OAR).
|
||||
#
|
||||
# The license and distribution terms for this file may be
|
||||
# found in the file LICENSE in this distribution or at
|
||||
# http://www.rtems.com/license/LICENSE.
|
||||
#
|
||||
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,45 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
|
||||
TEST = tm16
|
||||
|
||||
MANAGERS = io event
|
||||
|
||||
C_FILES = task1.c
|
||||
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
|
||||
|
||||
H_FILES = system.h
|
||||
noinst_HEADERS = $(H_FILES)
|
||||
|
||||
DOCTYPES = doc
|
||||
DOCS = $(DOCTYPES:%=$(TEST).%)
|
||||
|
||||
SRCS = $(DOCS) $(C_FILES) $(H_FILES)
|
||||
OBJS = $(C_O_FILES)
|
||||
|
||||
PRINT_SRCS = $(DOCS)
|
||||
|
||||
PGM = ${ARCH}/$(TEST).exe
|
||||
|
||||
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
|
||||
include $(top_srcdir)/../automake/compile.am
|
||||
include $(top_srcdir)/../automake/leaf.am
|
||||
include $(top_srcdir)/tmtests.am
|
||||
|
||||
#
|
||||
# (OPTIONAL) Add local stuff here using +=
|
||||
#
|
||||
|
||||
OPERATION_COUNT = @OPERATION_COUNT@
|
||||
AM_CPPFLAGS += -I$(top_srcdir)/include -DOPERATION_COUNT=$(OPERATION_COUNT)
|
||||
|
||||
${PGM}: $(OBJS) $(LINK_FILES)
|
||||
$(make-exe)
|
||||
|
||||
all-local: $(ARCH) $(TMPINSTALL_FILES)
|
||||
|
||||
EXTRA_DIST = $(C_FILES) $(DOCS)
|
||||
|
||||
include $(top_srcdir)/../automake/local.am
|
||||
@@ -1,40 +0,0 @@
|
||||
/* system.h
|
||||
*
|
||||
* This include file is used by all tests in the Time Suite.
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
|
||||
#include <coverhd.h>
|
||||
#include <tmacros.h>
|
||||
|
||||
/* functions */
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
#include <timesys.h>
|
||||
|
||||
/* configuration information */
|
||||
|
||||
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
|
||||
#define CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER
|
||||
|
||||
#define CONFIGURE_MAXIMUM_TASKS 111
|
||||
#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 1
|
||||
#define CONFIGURE_TICKS_PER_TIMESLICE 0
|
||||
|
||||
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
|
||||
|
||||
#include <confdefs.h>
|
||||
|
||||
/* end of include file */
|
||||
@@ -1,147 +0,0 @@
|
||||
/*
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#define TEST_INIT
|
||||
#include "system.h"
|
||||
|
||||
rtems_unsigned32 Task_count;
|
||||
|
||||
rtems_task test_init(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task Middle_tasks(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task High_task(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_id id;
|
||||
rtems_status_code status;
|
||||
|
||||
Print_Warning();
|
||||
|
||||
puts( "\n\n*** TIME TEST 16 ***" );
|
||||
|
||||
status = rtems_task_create(
|
||||
rtems_build_name( 'T', 'E', 'S', 'T' ),
|
||||
251,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&id
|
||||
);
|
||||
directive_failed( status, "rtems_task_create of test_init" );
|
||||
|
||||
status = rtems_task_start( id, test_init, 0 );
|
||||
directive_failed( status, "rtems_task_start of test_init" );
|
||||
|
||||
status = rtems_task_delete( RTEMS_SELF );
|
||||
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
|
||||
}
|
||||
|
||||
rtems_task test_init(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_task_priority priority;
|
||||
rtems_status_code status;
|
||||
rtems_unsigned32 index;
|
||||
rtems_task_entry task_entry;
|
||||
|
||||
/* As each task is started, it preempts this task and
|
||||
* performs a blocking rtems_event_receive. Upon completion of
|
||||
* this loop all created tasks are blocked.
|
||||
*/
|
||||
|
||||
priority = 250;
|
||||
|
||||
for( index = 0 ; index <= OPERATION_COUNT ; index++ ) {
|
||||
status = rtems_task_create(
|
||||
rtems_build_name( 'M', 'I', 'D', ' ' ),
|
||||
priority,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&Task_id[ index ]
|
||||
);
|
||||
directive_failed( status, "rtems_task_create LOOP" );
|
||||
|
||||
if ( index == OPERATION_COUNT ) task_entry = High_task;
|
||||
else task_entry = Middle_tasks;
|
||||
|
||||
status = rtems_task_start( Task_id[ index ], task_entry, 0 );
|
||||
directive_failed( status, "rtems_task_start LOOP" );
|
||||
|
||||
priority--;
|
||||
}
|
||||
|
||||
Task_count = 0;
|
||||
|
||||
Timer_initialize();
|
||||
(void) rtems_event_send( Task_id[ Task_count ], RTEMS_EVENT_16 );
|
||||
/* preempts task */
|
||||
}
|
||||
|
||||
rtems_task Middle_tasks(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_event_set event_out;
|
||||
|
||||
(void) rtems_event_receive( /* task blocks */
|
||||
RTEMS_EVENT_16,
|
||||
RTEMS_DEFAULT_OPTIONS,
|
||||
RTEMS_NO_TIMEOUT,
|
||||
&event_out
|
||||
);
|
||||
|
||||
Task_count++;
|
||||
|
||||
(void) rtems_event_send( /* preempts task */
|
||||
Task_id[ Task_count ],
|
||||
RTEMS_EVENT_16
|
||||
);
|
||||
}
|
||||
|
||||
rtems_task High_task(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_event_set event_out;
|
||||
|
||||
(void) rtems_event_receive( /* task blocks */
|
||||
RTEMS_EVENT_16,
|
||||
RTEMS_DEFAULT_OPTIONS,
|
||||
RTEMS_NO_TIMEOUT,
|
||||
&event_out
|
||||
);
|
||||
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_event_send: task readied -- preempts caller",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
0,
|
||||
CALLING_OVERHEAD_EVENT_SEND
|
||||
);
|
||||
|
||||
puts( "*** END OF TEST 16 ***" );
|
||||
rtems_test_exit( 0 );
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
# COPYRIGHT (c) 1989-1999.
|
||||
# On-Line Applications Research Corporation (OAR).
|
||||
#
|
||||
# The license and distribution terms for this file may be
|
||||
# found in the file LICENSE in this distribution or at
|
||||
# http://www.rtems.com/license/LICENSE.
|
||||
#
|
||||
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,45 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
|
||||
TEST = tm17
|
||||
|
||||
MANAGERS = io
|
||||
|
||||
C_FILES = task1.c
|
||||
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
|
||||
|
||||
H_FILES = system.h
|
||||
noinst_HEADERS = $(H_FILES)
|
||||
|
||||
DOCTYPES = doc
|
||||
DOCS = $(DOCTYPES:%=$(TEST).%)
|
||||
|
||||
SRCS = $(DOCS) $(C_FILES) $(H_FILES)
|
||||
OBJS = $(C_O_FILES)
|
||||
|
||||
PRINT_SRCS = $(DOCS)
|
||||
|
||||
PGM = ${ARCH}/$(TEST).exe
|
||||
|
||||
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
|
||||
include $(top_srcdir)/../automake/compile.am
|
||||
include $(top_srcdir)/../automake/leaf.am
|
||||
include $(top_srcdir)/tmtests.am
|
||||
|
||||
#
|
||||
# (OPTIONAL) Add local stuff here using +=
|
||||
#
|
||||
|
||||
OPERATION_COUNT = @OPERATION_COUNT@
|
||||
AM_CPPFLAGS += -I$(top_srcdir)/include -DOPERATION_COUNT=$(OPERATION_COUNT)
|
||||
|
||||
${PGM}: $(OBJS) $(LINK_FILES)
|
||||
$(make-exe)
|
||||
|
||||
all-local: $(ARCH) $(TMPINSTALL_FILES)
|
||||
|
||||
EXTRA_DIST = $(C_FILES) $(DOCS)
|
||||
|
||||
include $(top_srcdir)/../automake/local.am
|
||||
@@ -1,40 +0,0 @@
|
||||
/* system.h
|
||||
*
|
||||
* This include file is used by all tests in the Time Suite.
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
|
||||
#include <coverhd.h>
|
||||
#include <tmacros.h>
|
||||
|
||||
/* functions */
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
#include <timesys.h>
|
||||
|
||||
/* configuration information */
|
||||
|
||||
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
|
||||
#define CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER
|
||||
|
||||
#define CONFIGURE_MAXIMUM_TASKS 111
|
||||
#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 1
|
||||
#define CONFIGURE_TICKS_PER_TIMESLICE 0
|
||||
|
||||
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
|
||||
|
||||
#include <confdefs.h>
|
||||
|
||||
/* end of include file */
|
||||
@@ -1,126 +0,0 @@
|
||||
/*
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#define TEST_INIT
|
||||
#include "system.h"
|
||||
|
||||
rtems_unsigned32 Task_count;
|
||||
rtems_task_priority Task_priority;
|
||||
|
||||
rtems_task First_task(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task Middle_tasks(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task Last_task(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_task_entry task_entry;
|
||||
rtems_unsigned32 index;
|
||||
rtems_status_code status;
|
||||
|
||||
Print_Warning();
|
||||
|
||||
puts( "\n\n*** TIME TEST 17 ***" );
|
||||
|
||||
Task_priority = 254;
|
||||
|
||||
for( index = 0; index <= OPERATION_COUNT ; index++ ) {
|
||||
status = rtems_task_create(
|
||||
rtems_build_name( 'T', 'I', 'M', 'E' ),
|
||||
Task_priority,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&Task_id[ index ]
|
||||
);
|
||||
directive_failed( status, "rtems_task_create loop" );
|
||||
|
||||
if ( index == OPERATION_COUNT ) task_entry = Last_task;
|
||||
else if ( index == 0 ) task_entry = First_task;
|
||||
else task_entry = Middle_tasks;
|
||||
|
||||
status = rtems_task_start( Task_id[ index ], task_entry, 0 );
|
||||
directive_failed( status, "rtems_task_start loop" );
|
||||
}
|
||||
|
||||
Task_count = 1;
|
||||
status = rtems_task_delete( RTEMS_SELF );
|
||||
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
|
||||
}
|
||||
|
||||
rtems_task First_task(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_task_priority previous_priority;
|
||||
|
||||
Timer_initialize();
|
||||
|
||||
Task_priority--;
|
||||
Task_count++;
|
||||
|
||||
(void) rtems_task_set_priority(
|
||||
Task_id[ Task_count ],
|
||||
Task_priority,
|
||||
&previous_priority
|
||||
);
|
||||
}
|
||||
|
||||
rtems_task Middle_tasks(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_task_priority previous_priority;
|
||||
|
||||
Task_priority--;
|
||||
Task_count++;
|
||||
|
||||
(void) rtems_task_set_priority(
|
||||
Task_id[ Task_count ],
|
||||
Task_priority,
|
||||
&previous_priority
|
||||
);
|
||||
}
|
||||
|
||||
rtems_task Last_task(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_unsigned32 index;
|
||||
|
||||
end_time = Read_timer();
|
||||
|
||||
Timer_initialize();
|
||||
for ( index=1 ; index <= OPERATION_COUNT ; index++ )
|
||||
(void) Empty_function();
|
||||
overhead = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_task_set_priority: preempts caller",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
overhead,
|
||||
CALLING_OVERHEAD_TASK_SET_PRIORITY
|
||||
);
|
||||
|
||||
puts( "*** END OF TEST 17 ***" );
|
||||
rtems_test_exit( 0 );
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
# COPYRIGHT (c) 1989-1999.
|
||||
# On-Line Applications Research Corporation (OAR).
|
||||
#
|
||||
# The license and distribution terms for this file may be
|
||||
# found in the file LICENSE in this distribution or at
|
||||
# http://www.rtems.com/license/LICENSE.
|
||||
#
|
||||
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,45 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
|
||||
TEST = tm18
|
||||
|
||||
MANAGERS = io
|
||||
|
||||
C_FILES = task1.c
|
||||
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
|
||||
|
||||
H_FILES = system.h
|
||||
noinst_HEADERS = $(H_FILES)
|
||||
|
||||
DOCTYPES = doc
|
||||
DOCS = $(DOCTYPES:%=$(TEST).%)
|
||||
|
||||
SRCS = $(DOCS) $(C_FILES) $(H_FILES)
|
||||
OBJS = $(C_O_FILES)
|
||||
|
||||
PRINT_SRCS = $(DOCS)
|
||||
|
||||
PGM = ${ARCH}/$(TEST).exe
|
||||
|
||||
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
|
||||
include $(top_srcdir)/../automake/compile.am
|
||||
include $(top_srcdir)/../automake/leaf.am
|
||||
include $(top_srcdir)/tmtests.am
|
||||
|
||||
#
|
||||
# (OPTIONAL) Add local stuff here using +=
|
||||
#
|
||||
|
||||
OPERATION_COUNT = @OPERATION_COUNT@
|
||||
AM_CPPFLAGS += -I$(top_srcdir)/include -DOPERATION_COUNT=$(OPERATION_COUNT)
|
||||
|
||||
${PGM}: $(OBJS) $(LINK_FILES)
|
||||
$(make-exe)
|
||||
|
||||
all-local: $(ARCH) $(TMPINSTALL_FILES)
|
||||
|
||||
EXTRA_DIST = $(C_FILES) $(DOCS)
|
||||
|
||||
include $(top_srcdir)/../automake/local.am
|
||||
@@ -1,40 +0,0 @@
|
||||
/* system.h
|
||||
*
|
||||
* This include file is used by all tests in the Time Suite.
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
|
||||
#include <coverhd.h>
|
||||
#include <tmacros.h>
|
||||
|
||||
/* functions */
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
#include <timesys.h>
|
||||
|
||||
/* configuration information */
|
||||
|
||||
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
|
||||
#define CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER
|
||||
|
||||
#define CONFIGURE_MAXIMUM_TASKS 111
|
||||
#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 1
|
||||
#define CONFIGURE_TICKS_PER_TIMESLICE 0
|
||||
|
||||
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
|
||||
|
||||
#include <confdefs.h>
|
||||
|
||||
/* end of include file */
|
||||
@@ -1,111 +0,0 @@
|
||||
/*
|
||||
*
|
||||
* COPYRIGHT (c) 1989-1999.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#define TEST_INIT
|
||||
#include "system.h"
|
||||
|
||||
rtems_unsigned32 taskcount;
|
||||
rtems_task_priority taskpri;
|
||||
|
||||
rtems_task First_task(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task Middle_tasks(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
rtems_task Last_task(
|
||||
rtems_task_argument argument
|
||||
);
|
||||
|
||||
|
||||
void test_init();
|
||||
|
||||
rtems_task Init(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
rtems_status_code status;
|
||||
|
||||
Print_Warning();
|
||||
|
||||
puts( "\n\n*** TIME TEST 18 ***" );
|
||||
|
||||
test_init();
|
||||
|
||||
status = rtems_task_delete( RTEMS_SELF );
|
||||
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
|
||||
}
|
||||
|
||||
void test_init()
|
||||
{
|
||||
rtems_id id;
|
||||
rtems_task_entry task_entry;
|
||||
rtems_unsigned32 index;
|
||||
rtems_status_code status;
|
||||
|
||||
for ( index = 0 ; index <= OPERATION_COUNT ; index++ ) {
|
||||
status = rtems_task_create(
|
||||
rtems_build_name( 'T', 'I', 'M', 'E' ),
|
||||
128,
|
||||
RTEMS_MINIMUM_STACK_SIZE,
|
||||
RTEMS_DEFAULT_MODES,
|
||||
RTEMS_DEFAULT_ATTRIBUTES,
|
||||
&id
|
||||
);
|
||||
directive_failed( status, "rtems_task_create loop" );
|
||||
|
||||
if ( index == OPERATION_COUNT ) task_entry = Last_task;
|
||||
else if ( index == 0 ) task_entry = First_task;
|
||||
else task_entry = Middle_tasks;
|
||||
|
||||
|
||||
status = rtems_task_start( id, task_entry, 0 );
|
||||
directive_failed( status, "rtems_task_start loop" );
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
rtems_task First_task(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
Timer_initialize();
|
||||
|
||||
(void) rtems_task_delete( RTEMS_SELF );
|
||||
}
|
||||
|
||||
rtems_task Middle_tasks(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
(void) rtems_task_delete( RTEMS_SELF );
|
||||
}
|
||||
|
||||
rtems_task Last_task(
|
||||
rtems_task_argument argument
|
||||
)
|
||||
{
|
||||
end_time = Read_timer();
|
||||
|
||||
put_time(
|
||||
"rtems_task_delete: calling task",
|
||||
end_time,
|
||||
OPERATION_COUNT,
|
||||
0,
|
||||
CALLING_OVERHEAD_TASK_DELETE
|
||||
);
|
||||
|
||||
puts( "*** END OF TEST 18 ***" );
|
||||
rtems_test_exit( 0 );
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
# COPYRIGHT (c) 1989-1999.
|
||||
# On-Line Applications Research Corporation (OAR).
|
||||
#
|
||||
# The license and distribution terms for this file may be
|
||||
# found in the file LICENSE in this distribution or at
|
||||
# http://www.rtems.com/license/LICENSE.
|
||||
#
|
||||
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,45 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
|
||||
TEST = tm19
|
||||
|
||||
MANAGERS = io signal
|
||||
|
||||
C_FILES = task1.c
|
||||
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
|
||||
|
||||
H_FILES = system.h
|
||||
noinst_HEADERS = $(H_FILES)
|
||||
|
||||
DOCTYPES = doc
|
||||
DOCS = $(DOCTYPES:%=$(TEST).%)
|
||||
|
||||
SRCS = $(DOCS) $(C_FILES) $(H_FILES)
|
||||
OBJS = $(C_O_FILES)
|
||||
|
||||
PRINT_SRCS = $(DOCS)
|
||||
|
||||
PGM = ${ARCH}/$(TEST).exe
|
||||
|
||||
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
|
||||
include $(top_srcdir)/../automake/compile.am
|
||||
include $(top_srcdir)/../automake/leaf.am
|
||||
include $(top_srcdir)/tmtests.am
|
||||
|
||||
#
|
||||
# (OPTIONAL) Add local stuff here using +=
|
||||
#
|
||||
|
||||
OPERATION_COUNT = @OPERATION_COUNT@
|
||||
AM_CPPFLAGS += -I$(top_srcdir)/include -DOPERATION_COUNT=$(OPERATION_COUNT)
|
||||
|
||||
${PGM}: $(OBJS) $(LINK_FILES)
|
||||
$(make-exe)
|
||||
|
||||
all-local: $(ARCH) $(TMPINSTALL_FILES)
|
||||
|
||||
EXTRA_DIST = $(C_FILES) $(DOCS)
|
||||
|
||||
include $(top_srcdir)/../automake/local.am
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user