diff -purN busybox.ori/include/libbb.h busybox/include/libbb.h
--- busybox.ori/include/libbb.h	2004-03-21 14:39:35.000000000 +0100
+++ busybox-1.0/include/libbb.h	2004-03-21 14:45:35.000000000 +0100
@@ -447,6 +447,7 @@ typedef struct {
 	int ppid;
 #ifdef FEATURE_CPU_USAGE_PERCENTAGE
 	unsigned pcpu;
+	unsigned pscpu;
 	unsigned long stime, utime;
 #endif
 	char *cmd;
diff -purN busybox.ori/procps/top.c busybox/procps/top.c
--- busybox.ori/procps/top.c	2004-03-21 14:40:09.000000000 +0100
+++ busybox-1.0/procps/top.c	2004-03-21 17:27:52.961951448 +0100
@@ -289,6 +289,15 @@ static void do_stats(void)
 	    i = 999;
 	cur->pcpu = i;
 
+	/*
+	 * Calculate percent of system time from cpu time
+	 */
+	if (systime != 0) {
+    	    cur->pscpu = 100 * total_time / systime;
+	} else {
+	    cur->pscpu = 0;
+	}
+
     }
 
     /*
@@ -393,7 +402,7 @@ static void display_status(int count, in
 	
 #ifdef FEATURE_CPU_USAGE_PERCENTAGE
 	/* what info of the processes is shown */
-	printf("\n\e[7m  PID USER     STATUS   RSS  PPID %%CPU %%MEM COMMAND\e[0m\n");
+	printf("\n\e[7m  PID USER     STATUS   RSS  PPID %%CPU %%SCPU %%MEM COMMAND\e[0m\n");
 #else
 	printf("\n\e[7m  PID USER     STATUS   RSS  PPID %%MEM COMMAND\e[0m\n");
 #endif
@@ -410,9 +419,9 @@ static void display_status(int count, in
 		else
 			sprintf(rss_str_buf, "%7ld", s->rss);
 #ifdef FEATURE_CPU_USAGE_PERCENTAGE
-		printf("%5d %-8s %s  %s %5d %2d.%d %2u.%u ",
+		printf("%5d %-8s %s  %s %5d %2d.%d %2d.%d %2u.%u ",
 			s->pid, s->user, s->state, rss_str_buf, s->ppid,
-			s->pcpu/10, s->pcpu%10, pmem/10, pmem%10);
+			s->pcpu/10, s->pcpu%10,s->pscpu/10, s->pscpu%10, pmem/10, pmem%10);
 #else
 		printf("%5d %-8s %s  %s %5d %2u.%u ",
 			s->pid, s->user, s->state, rss_str_buf, s->ppid,
