Uses mostly the same methods to get the information as the old code. On FreeBSD the method to get the swap values is much simpler with just one function call.