Download raw body.
human readable CPU frequencies in systat
Hi,
The crude patch below makes CPU frequencies human readable with -h in
`systat sensors`
I don't know if there is a better / cleaner way.
Index: Makefile
===================================================================
RCS file: /local/cvs/src/usr.bin/systat/Makefile,v
diff -u -p -u -r1.28 Makefile
--- Makefile 30 May 2018 13:43:50 -0000 1.28
+++ Makefile 4 Nov 2024 18:07:52 -0000
@@ -12,6 +12,6 @@ SRCS= dkstats.c engine.c if.c inetname.c
pool.c malloc.c cpu.c uvm.c
DPADD= ${LIBCURSES} ${LIBM} ${LIBKVM}
-LDADD= -lcurses -lm -lkvm
+LDADD= -lcurses -lm -lkvm -lutil
.include <bsd.prog.mk>
Index: sensors.c
===================================================================
RCS file: /local/cvs/src/usr.bin/systat/sensors.c,v
diff -u -p -u -r1.32 sensors.c
--- sensors.c 15 Jul 2020 07:13:56 -0000 1.32
+++ sensors.c 4 Nov 2024 18:07:52 -0000
@@ -29,6 +29,7 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
+#include <util.h>
#include "systat.h"
struct sensor sensor;
@@ -274,7 +275,12 @@ showsensor(struct sensinfo *s)
tbprintf("%3.2f%%", s->sn_value / 1000.0);
break;
case SENSOR_FREQ:
- tbprintf("%11.2f Hz", s->sn_value / 1000000.0);
+ if (humanreadable) {
+ char buf[FMT_SCALED_STRSIZE];
+ fmt_scaled(s->sn_value / 1000000.0, buf);
+ tbprintf("%sHz", buf);
+ } else
+ tbprintf("%11.2f Hz", s->sn_value / 1000000.0);
break;
case SENSOR_ANGLE:
tbprintf("%3.4f degrees", s->sn_value / 1000000.0);
--
Matthieu Herrb
human readable CPU frequencies in systat