This week's giveaway is in the EJB and other Java EE Technologies forum. We're giving away four copies of EJB 3 in Action and have Debu Panda, Reza Rahman, Ryan Cuprak, and Michael Remijan on-line! See this thread for details.
You could write a non-Java application that gets the required information (you will need a version of the program for each platform you intend to run your Java program on) and then use Runtime.exec() or ProcessBuilder to call the correct program for the OS you are running on (use System.getProperty("os.name") to find this). As long as all the programs return the information in the same format, you can use common code to parse the result.