/* * Copyright (c) 2012 Deng Hengyi. * * This test case is to test atomic load operation. * * 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. * */ #ifdef HAVE_CONFIG_H #include "config.h" #endif #define CONFIGURE_INIT #include "system.h" rtems_task Init( rtems_task_argument argument ) { int i; char ch; rtems_id id; rtems_status_code status; /* Put start of test message */ puts( "\n\n*** spatomic01 TEST ***\n" ); /* Create and start tasks to test */ for ( i=0; i< TASK_NUMS ; i++ ) { ch = '0' + i; status = rtems_task_create( rtems_build_name( 'T', 'A', ch, ' ' ), 1, RTEMS_MINIMUM_STACK_SIZE, RTEMS_DEFAULT_MODES, RTEMS_DEFAULT_ATTRIBUTES, &id ); directive_failed( status, "task create" ); status = rtems_task_start( id, Test_task, i ); directive_failed( status, "task start" ); } status = rtems_task_create( rtems_build_name( 'A', 'T', '0', ' ' ), 1, RTEMS_MINIMUM_STACK_SIZE, RTEMS_DEFAULT_MODES, RTEMS_DEFAULT_ATTRIBUTES, &id ); directive_failed( status, "task create" ); status = rtems_task_start( id, Wait_task, 0 ); directive_failed( status, "task start" ); status = rtems_task_delete( RTEMS_SELF ); directive_failed( status, "delete" ); }