I have a laptop(thinkpad) with 2 cpus. Currently I can read the cpu temperatures from the files below with cat(1):
cat /sys/class/thermal/thermal_zone0/temp
cat /sys/class/thermal/thermal_zone1/temp
cat /sys/devices/platform/coretemp.0/hwmon/hwmon1/temp2_input
cat /sys/devices/platform/coretemp.0/hwmon/hwmon1/temp3_input
cat /sys/devices/LNXSYSTM:00/LNXCPU:00/thermal_cooling/subsystem/thermal_zone1/temp
cat /sys/devices/LNXSYSTM:00/LNXCPU:01/thermal_cooling/subsystem/thermal_zone0/temp
My question is why the kernel stores this information on so many different places and which one is the "standard" file to read a cpu's temperature?
Is this happening due to systemd(I'm using Arch Linux) or non-systemd Linux distros like Slackware have a different approach?