diff options
Diffstat (limited to 'testsuites/psxtests/psx02')
-rw-r--r-- | testsuites/psxtests/psx02/init.c | 146 | ||||
-rw-r--r-- | testsuites/psxtests/psx02/psx02.scn | 26 | ||||
-rw-r--r-- | testsuites/psxtests/psx02/system.h | 52 | ||||
-rw-r--r-- | testsuites/psxtests/psx02/task.c | 45 |
4 files changed, 0 insertions, 269 deletions
diff --git a/testsuites/psxtests/psx02/init.c b/testsuites/psxtests/psx02/init.c deleted file mode 100644 index 72592b58c7..0000000000 --- a/testsuites/psxtests/psx02/init.c +++ /dev/null @@ -1,146 +0,0 @@ -/* - * COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994. - * On-Line Applications Research Corporation (OAR). - * All rights assigned to U.S. Government, 1994. - * - * This material may be reproduced by or for the U.S. Government pursuant - * to the copyright license under the clause at DFARS 252.227-7013. This - * notice must appear in all copies of this file and its derivatives. - * - * $Id$ - */ - -#define CONFIGURE_INIT -#include "system.h" -#include <signal.h> - -volatile int Signal_occurred; -volatile int Signal_count; - -void Signal_handler( - int signo -) -{ - Signal_count++; - printf( - "Signal: %d caught by 0x%x (%d)\n", - signo, - pthread_self(), - Signal_count - ); - Signal_occurred = 1; -} - -void *POSIX_Init( - void *argument -) -{ - int status; - struct timespec tv; - struct timespec tr; - struct sigaction act; - sigset_t mask; - sigset_t pending_set; - - puts( "\n\n*** POSIX TEST 2 ***" ); - - /* set the time of day, and print our buffer in multiple ways */ - - set_time( TM_FRIDAY, TM_MAY, 24, 96, 11, 5, 0 ); - - /* get id of this thread */ - - Init_id = pthread_self(); - printf( "Init's ID is 0x%08x\n", Init_id ); - - /* install a signal handler */ - - status = sigemptyset( &act.sa_mask ); - assert( !status ); - - act.sa_handler = Signal_handler; - act.sa_flags = 0; - - sigaction( SIGUSR1, &act, NULL ); - - /* simple signal to self */ - - Signal_count = 0; - Signal_occurred = 0; - - status = pthread_kill( Init_id, SIGUSR1 ); - assert( !status ); - - Signal_occurred = 0; - - /* now block the signal, send it, see if it is pending, and unblock it */ - - status = sigemptyset( &mask ); - assert( !status ); - - status = sigaddset( &mask, SIGUSR1 ); - assert( !status ); - - printf( "Init: Block SIGUSR1\n" ); - status = sigprocmask( SIG_BLOCK, &mask, NULL ); - assert( !status ); - - status = sigpending( &pending_set ); - assert( !status ); - printf( "Init: Signals pending 0x%08x\n", pending_set ); - - - printf( "Init: send SIGUSR1 to self\n" ); - status = pthread_kill( Init_id, SIGUSR1 ); - assert( !status ); - - status = sigpending( &pending_set ); - assert( !status ); - printf( "Init: Signals pending 0x%08x\n", pending_set ); - - printf( "Init: Unblock SIGUSR1\n" ); - status = sigprocmask( SIG_UNBLOCK, &mask, NULL ); - assert( !status ); - - /* create a thread */ - - status = pthread_create( &Task_id, NULL, Task_1_through_3, NULL ); - assert( !status ); - - /* - * Loop for 5 seconds seeing how many signals we catch - */ - - tr.tv_sec = 5; - tr.tv_nsec = 0; - - do { - tv = tr; - - Signal_occurred = 0; - - status = nanosleep ( &tv, &tr ); - - if ( status == -1 ) { - assert( errno == EINTR ); - assert( tr.tv_nsec || tr.tv_sec ); - } else if ( !status ) { - assert( !tr.tv_nsec && !tr.tv_sec ); - } - - printf( - "Init: signal was %sprocessed with %d:%d time remaining\n", - (Signal_occurred) ? "" : "not ", - (int) tr.tv_sec, - (int) tr.tv_nsec - ); - - } while ( tr.tv_sec || tr.tv_nsec ); - - /* exit this thread */ - - puts( "*** END OF POSIX TEST 2 ***" ); - exit( 0 ); - - return NULL; /* just so the compiler thinks we returned something */ -} diff --git a/testsuites/psxtests/psx02/psx02.scn b/testsuites/psxtests/psx02/psx02.scn deleted file mode 100644 index 3b0d373b16..0000000000 --- a/testsuites/psxtests/psx02/psx02.scn +++ /dev/null @@ -1,26 +0,0 @@ -*** POSIX TEST 2 *** -Init's ID is 0x0c010001 -Signal: 16 caught by 0xc010001 (1) -Init: Block SIGUSR1 -Init: Signals pending 0x00000000 -Init: send SIGUSR1 to self -Init: Signals pending 0x00008000 -Init: Unblock SIGUSR1 -Signal: 16 caught by 0xc010001 (2) -Task1: Fri May 24 11:05:00 1996 -Signal: 16 caught by 0xc010001 (3) -Init: signal was processed with 5:0 time remaining -Task1: Fri May 24 11:05:01 1996 -Signal: 16 caught by 0xc010001 (4) -Init: signal was processed with 3:990000000 time remaining -Task1: Fri May 24 11:05:02 1996 -Signal: 16 caught by 0xc010001 (5) -Init: signal was processed with 2:980000000 time remaining -Task1: Fri May 24 11:05:03 1996 -Signal: 16 caught by 0xc010001 (6) -Init: signal was processed with 1:970000000 time remaining -Task1: Fri May 24 11:05:04 1996 -Signal: 16 caught by 0xc010001 (7) -Init: signal was processed with 0:960000000 time remaining -Init: signal was not processed with 0:0 time remaining -*** END OF POSIX TEST 2 *** diff --git a/testsuites/psxtests/psx02/system.h b/testsuites/psxtests/psx02/system.h deleted file mode 100644 index 765abc2766..0000000000 --- a/testsuites/psxtests/psx02/system.h +++ /dev/null @@ -1,52 +0,0 @@ -/* system.h - * - * This include file contains information that is included in every - * function in the test set. - * - * COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994. - * On-Line Applications Research Corporation (OAR). - * All rights assigned to U.S. Government, 1994. - * - * This material may be reproduced by or for the U.S. Government pursuant - * to the copyright license under the clause at DFARS 252.227-7013. This - * notice must appear in all copies of this file and its derivatives. - * - * $Id$ - */ - -/* functions */ - -#include <pmacros.h> -#include <errno.h> - -void *POSIX_Init( - void *argument -); - -void *Task_1_through_3( - void *argument -); - -/* configuration information */ - -#define CONFIGURE_SPTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_CLOCK_DRIVER - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#include <confdefs.h> - -/* global variables */ - -#ifdef CONFIGURE_INIT -#define TEST_EXTERN -#else -#define TEST_EXTERN extern -#endif - -TEST_EXTERN pthread_t Init_id; -TEST_EXTERN pthread_t Task_id; - -/* end of include file */ diff --git a/testsuites/psxtests/psx02/task.c b/testsuites/psxtests/psx02/task.c deleted file mode 100644 index 410ee32346..0000000000 --- a/testsuites/psxtests/psx02/task.c +++ /dev/null @@ -1,45 +0,0 @@ -/* Task_1_through_3 - * - * This routine serves as a test task. It verifies the basic task - * switching capabilities of the executive. - * - * Input parameters: - * argument - task argument - * - * Output parameters: NONE - * - * COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994. - * On-Line Applications Research Corporation (OAR). - * All rights assigned to U.S. Government, 1994. - * - * This material may be reproduced by or for the U.S. Government pursuant - * to the copyright license under the clause at DFARS 252.227-7013. This - * notice must appear in all copies of this file and its derivatives. - * - * $Id$ - */ - -#include "system.h" -#include <signal.h> - -void *Task_1_through_3( - void *argument -) -{ - int seconds; - int i; - int status; - - for ( i=0 ; i<5 ; i++ ) { - print_current_time( "Task1: ", "" ); - status = pthread_kill( Init_id, SIGUSR1 ); - assert( !status ); - - seconds = sleep( 1 ); - assert( !seconds ); - } - puts( "*** END OF POSIX TEST 2 ***" ); - exit( 0 ); - - return NULL; /* just so the compiler thinks we returned something */ -} |