bits-837 released with these changes:
Update to ACPICA version 20130517
Update Python to 2.7.5
Update pyconfig.h, handle new definitions for 32-bit and 64-bit sized integer types, and define EINTR (which Python will never receive but nonetheless expects a definition of).
Python readline: write out full lines at a time rather than character-by-character
Add a new Python "bitfields" module for bitfield manipulation
Most Intel documentation references bitfields defined as
[msb:lsb]
, or as[bit]
; this module allows creating and extracting such fields without having to translate them to shifts and masks.Add processor socket/core/thread topology decode and display. Contributed by Cathy Ji.
Provide a more user-friendly exception when asking for a CPUID on a non-existent CPU
Now raises a RuntimeError with a clear error message, rather than a TypeError complaining about the inability to *-splat out a None.
bits.cpus(): Cache the list of CPUs
bits.cpus() recomputed the list of CPUs every time, even though it never changed. Cache it instead. Particularly relevant for bits.bsp_apicid(), which calls bits.cpus() to produce the entire list only to return the zeroth element.