Suggested FreeRTOS code change

kpettit1 wrote on Tuesday, May 22, 2012:

Hi Richard,

While debugging the TI CCS4 Cortex-LM4F port, I noticed 2 things:

1.  There is no string, identifier or function call for the FreeRTOS version.  Seems like this would be a useful thing to have.
2.  The vTaskList routine doesn’t accommodate task names of varying lengths.  I fixed this in my local version of task.c by modifying the ‘prvListTaskWithinSingleList’ function as below.  Would be nice if this were in the released version of FreeRTOS.  NOTE:  Similar change in the function ‘prvGenerateRunTimeStatsForTasksInList’.

	/* Copy task name to the output string */
	sprintf( pcStatusString, ( char *) "%%-%us", configMAX_TASK_NAME_LEN);
	sprintf( &pcStatusString[10], pcStatusString, pxNextTCB->pcTaskName);
	strcat( (char *) pcWriteBuffer, (char *) &pcStatusString[10]);
			
	/* Copy remaining items to output string */
	sprintf( pcStatusString, ( char * ) "\t\t%c\t%u\t%u\t%u\r\n", cStatus, ( unsigned int ) pxNextTCB->uxPriority, usStackRemaining, ( unsigned int ) pxNextTCB->uxTCBNumber );
	strcat( ( char * ) pcWriteBuffer, ( char * ) pcStatusString );

richard_damon wrote on Wednesday, May 23, 2012:

In tasks.h is the define:

#define tskKERNEL_VERSION_NUMBER “V7.1.0”