summaryrefslogtreecommitdiffstats
path: root/c/src/libmisc/cpuuse
diff options
context:
space:
mode:
Diffstat (limited to 'c/src/libmisc/cpuuse')
-rw-r--r--c/src/libmisc/cpuuse/.cvsignore2
-rw-r--r--c/src/libmisc/cpuuse/Makefile.am42
-rw-r--r--c/src/libmisc/cpuuse/README41
-rw-r--r--c/src/libmisc/cpuuse/cpuuse.c154
-rw-r--r--c/src/libmisc/cpuuse/cpuuse.h40
5 files changed, 0 insertions, 279 deletions
diff --git a/c/src/libmisc/cpuuse/.cvsignore b/c/src/libmisc/cpuuse/.cvsignore
deleted file mode 100644
index 282522db03..0000000000
--- a/c/src/libmisc/cpuuse/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-Makefile
-Makefile.in
diff --git a/c/src/libmisc/cpuuse/Makefile.am b/c/src/libmisc/cpuuse/Makefile.am
deleted file mode 100644
index 5a1646ac01..0000000000
--- a/c/src/libmisc/cpuuse/Makefile.am
+++ /dev/null
@@ -1,42 +0,0 @@
-##
-## $Id$
-##
-
-
-include_rtemsdir = $(includedir)/rtems
-
-LIBNAME = libcpuuse-tmp
-LIB = $(ARCH)/$(LIBNAME).a
-
-C_FILES = cpuuse.c
-C_O_FILES = $(C_FILES:%.c=$(ARCH)/%.$(OBJEXT))
-
-include_rtems_HEADERS = cpuuse.h
-
-OBJS = $(C_O_FILES)
-
-include $(top_srcdir)/../../../automake/compile.am
-include $(top_srcdir)/../../../automake/lib.am
-
-$(PROJECT_INCLUDE)/rtems:
- @$(mkinstalldirs) $@
-$(PROJECT_INCLUDE)/rtems/%.h: %.h
- $(INSTALL_DATA) $< $@
-
-#
-# (OPTIONAL) Add local stuff here using +=
-#
-
-$(LIB): $(OBJS)
- $(make-library)
-
-PREINSTALL_FILES = $(PROJECT_INCLUDE)/rtems \
- $(include_rtems_HEADERS:%=$(PROJECT_INCLUDE)/rtems/%)
-
-all-local: $(ARCH) $(PREINSTALL_FILES) $(OBJS) $(LIB)
-
-.PRECIOUS: $(LIB)
-
-EXTRA_DIST = README cpuuse.c
-
-include $(top_srcdir)/../../../automake/local.am
diff --git a/c/src/libmisc/cpuuse/README b/c/src/libmisc/cpuuse/README
deleted file mode 100644
index 20e76f07bc..0000000000
--- a/c/src/libmisc/cpuuse/README
+++ /dev/null
@@ -1,41 +0,0 @@
-#
-# $Id$
-#
-
-This directory contains a stack bounds checker. It provides two
-primary features:
-
- + check for stack overflow at each context switch
- + provides an educated guess at each task's stack usage
-
-The stack overflow check at context switch works by looking for
-a 16 byte pattern at the logical end of the stack to be corrupted.
-The "guesser" assumes that the entire stack was prefilled with a known
-pattern and assumes that the pattern is still in place if the memory
-has not been used as a stack.
-
-Both of these can be fooled by pushing large holes onto the stack
-and not writing to them... or (much more unlikely) writing the
-magic patterns into memory.
-
-This code has not been extensively tested. It is provided as a tool
-for RTEMS users to catch the most common mistake in multitasking
-systems ... too little stack space. Suggestions and comments are appreciated.
-
-NOTES:
-
-1. Stack usage information is questionable on CPUs which push
- large holes on stack.
-
-2. The stack checker has a tendency to generate a fault when
- trying to print the helpful diagnostic message. If it comes
- out, congratulations. If not, then the variable Stack_check_Blown_task
- contains a pointer to the TCB of the offending task. This
- is usually enough to go on.
-
-FUTURE:
-
-1. Determine how/if gcc will generate stack probe calls and support that.
-
-2. Get accurate stack usage numbers on i960.. it pushes very large
- holes on the stack.
diff --git a/c/src/libmisc/cpuuse/cpuuse.c b/c/src/libmisc/cpuuse/cpuuse.c
deleted file mode 100644
index c984b39751..0000000000
--- a/c/src/libmisc/cpuuse/cpuuse.c
+++ /dev/null
@@ -1,154 +0,0 @@
-/*
- * CPU Usage Reporter
- *
- * COPYRIGHT (c) 1989-1999. 1996.
- * 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.OARcorp.com/rtems/license.html.
- *
- * $Id$
- *
- */
-
-#include <rtems.h>
-
-#include <assert.h>
-#include <stdio.h>
-#include <string.h>
-#include <stdlib.h>
-#include <ctype.h>
-
-#include <rtems/cpuuse.h>
-
-unsigned32 CPU_usage_Ticks_at_last_reset;
-
-/*PAGE
- *
- * CPU_usage_Dump
- */
-
-void CPU_usage_Dump( void )
-{
- unsigned32 i;
- unsigned32 api_index;
- Thread_Control *the_thread;
- Objects_Information *information;
- unsigned32 u32_name;
- char name[5];
- unsigned32 total_units = 0;
-
- for ( api_index = 1 ;
- api_index <= OBJECTS_APIS_LAST ;
- api_index++ ) {
- if ( !_Objects_Information_table[ api_index ] )
- continue;
- information = _Objects_Information_table[ api_index ][ 1 ];
- if ( information ) {
- for ( i=1 ; i <= information->maximum ; i++ ) {
- the_thread = (Thread_Control *)information->local_table[ i ];
-
- if ( the_thread )
- total_units += the_thread->ticks_executed;
- }
- }
- }
-
- printf("CPU Usage by thread\n");
-#if defined(unix) || ( CPU_HARDWARE_FP == TRUE )
- printf( " ID NAME TICKS PERCENT\n" );
-#else
- printf( " ID NAME TICKS\n" );
-#endif
-
- for ( api_index = 1 ;
- api_index <= OBJECTS_APIS_LAST ;
- api_index++ ) {
- if ( !_Objects_Information_table[ api_index ] )
- continue;
- information = _Objects_Information_table[ api_index ][ 1 ];
- if ( information ) {
- for ( i=1 ; i <= information->maximum ; i++ ) {
- the_thread = (Thread_Control *)information->local_table[ i ];
-
- if ( !the_thread )
- continue;
-
- if ( information->is_string )
- u32_name = *(unsigned32 *)the_thread->Object.name;
- else
- u32_name = (unsigned32)the_thread->Object.name;
-
- name[ 0 ] = (u32_name >> 24) & 0xff;
- name[ 1 ] = (u32_name >> 16) & 0xff;
- name[ 2 ] = (u32_name >> 8) & 0xff;
- name[ 3 ] = (u32_name >> 0) & 0xff;
- name[ 4 ] = '\0';
-
- if ( !isprint(name[0]) ) name[0] = '*';
- if ( !isprint(name[1]) ) name[1] = '*';
- if ( !isprint(name[2]) ) name[2] = '*';
- if ( !isprint(name[3]) ) name[3] = '*';
-
-#if defined(unix) || ( CPU_HARDWARE_FP == TRUE )
- printf( "0x%08x %4s %8d %5.3f\n",
- the_thread->Object.id,
- name,
- the_thread->ticks_executed,
- (total_units) ?
- (double)the_thread->ticks_executed / (double)total_units :
- (double)total_units
- );
-#else
- printf( "0x%08x %4s %8d\n",
- the_thread->Object.id,
- name,
- the_thread->ticks_executed
- );
-#endif
- }
- }
- }
-
- printf(
- "\nTicks since last reset = %d\n",
- _Watchdog_Ticks_since_boot - CPU_usage_Ticks_at_last_reset
- );
- printf( "\nTotal Units = %d\n", total_units );
-}
-
-/*PAGE
- *
- * CPU_usage_Reset
- */
-
-void CPU_usage_Reset( void )
-{
- unsigned32 i;
- unsigned32 api_index;
- Thread_Control *the_thread;
- Objects_Information *information;
-
- CPU_usage_Ticks_at_last_reset = _Watchdog_Ticks_since_boot;
-
- for ( api_index = 1 ;
- api_index <= OBJECTS_APIS_LAST ;
- api_index++ ) {
- if ( !_Objects_Information_table[ api_index ] )
- continue;
- information = _Objects_Information_table[ api_index ][ 1 ];
- if ( information ) {
- for ( i=1 ; i <= information->maximum ; i++ ) {
- the_thread = (Thread_Control *)information->local_table[ i ];
-
- if ( !the_thread )
- continue;
-
- the_thread->ticks_executed = 0;
- }
- }
- }
-
-}
-
diff --git a/c/src/libmisc/cpuuse/cpuuse.h b/c/src/libmisc/cpuuse/cpuuse.h
deleted file mode 100644
index 34e2b3ade5..0000000000
--- a/c/src/libmisc/cpuuse/cpuuse.h
+++ /dev/null
@@ -1,40 +0,0 @@
-/* cpuuse.h
- *
- * This include file contains information necessary to utilize
- * and install the cpu usage reporting mechanism.
- *
- * COPYRIGHT (c) 1989-1999. 1996.
- * 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.OARcorp.com/rtems/license.html.
- *
- * $Id$
- */
-
-#ifndef __CPU_USE_h
-#define __CPU_USE_h
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/*
- * CPU_usage_Dump
- */
-
-void CPU_usage_Dump( void );
-
-/*
- * CPU_usage_Reset
- */
-
-void CPU_usage_Reset( void );
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
-/* end of include file */