I can think of two possible solutions:
1. Write a program that retrieves the information and call it via extproc.
2. If you can get the information from Java, you can write a Java Stored procedure inside the database.
I hadn't thought of Java - that would seem the most suitable option, but having had a look around it seems that Java's platform independence gets in the way of obtaining any hardware information. My java is very limited as well so I'll probably save that option for another day when I have some time to explore.
I went with the DLL and extproc in the end, its working well - it's just to control some licencing.