ucpuinfo reads various bits of information about the current execution environment and displays it. It only supports IA-32 and thus fetches information visible to user processes regarding:
- segments
- segment descriptors
- machine status word
- descriptor tables
ucpuinfo has a Makefile that works with cygwin, MacOS, Linux, FreeBSD, and OpenBSD. Assuming you have a C compiler and "make" installed:
# make
The doesn't have any command line arguments, it just spits information out.
There are a few things left on the old TODO list:
- CPUID subleaves for Intel
- CPUID caveats for AMD and others?
- initial state of floating point
- initial state of SSE/SSE2/etc