karthikselva
#SoftwareEngineer #SalesforceDeveloper #RubyonRails #Music

Read CPU Core Temperature

Well this is a tricky part where I have struggled for a function returning cpu temp in java and failed . Then I chose lm-sensor for this purpose .

step1

Installation :

install the package lm sensors for your linux distro

sudo apt-get install lm-sensors

step 2:

run sensors in terminal

if you have installed for first time probe it to kernel first

_step 3: _restart the system and try sensors now

I have a core2quad processor and i get temperature of four processors as

karthik@Karthik:~/Programs$ sensors coretemp-isa-0000 Adapter: ISA adapter Core 0:      +47.0°C  (high = +74.0°C, crit = +100.0°C)

coretemp-isa-0001 Adapter: ISA adapter Core 1:      +37.0°C  (high = +74.0°C, crit = +100.0°C)

coretemp-isa-0002 Adapter: ISA adapter Core 2:      +39.0°C  (high = +74.0°C, crit = +100.0°C)

coretemp-isa-0003 Adapter: ISA adapter Core 3:      +46.0°C  (high = +74.0°C, crit = +100.0°C)

_step 3: _

call the **process **class of java and get back the string returned

import java.io.*; class cpu { public static void main(String []args) throws Exception { Runtime r=Runtime.getRuntime(); String f,temp,res=””; int i=0,j=0; f=”sensors”; Process p=r.exec(f); BufferedReader pin=new BufferedReader(new InputStreamReader(p.getInputStream())); while((temp=pin.readLine())!=null) { System.out.println(temp); } } }

Then make it flexible for your own purpose  by proper string parsing ….

Thank you !** **

_ _