processor

package
v0.0.0-...-f6c2e69 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 30, 2023 License: MIT Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Cache

type Cache struct {
	smbios.Header
	SocketDesignation   string                   `json:"socket_designation,omitempty"`
	Configuration       CacheConfiguration       `json:"configuration,omitempty"`
	MaximumCacheSize    CacheSize                `json:"maximum_cache_size,omitempty"`
	InstalledSize       CacheSize                `json:"installed_size,omitempty"`
	SupportedSRAMType   CacheSRAMType            `json:"supported_sram_type,omitempty"`
	CurrentSRAMType     CacheSRAMType            `json:"current_sram_type,omitempty"`
	CacheSpeed          CacheSpeed               `json:"cache_speed,omitempty"`
	ErrorCorrectionType CacheErrorCorrectionType `json:"error_correction_type,omitempty"`
	SystemCacheType     CacheSystemCacheType     `json:"system_cache_type,omitempty"`
	Associativity       CacheAssociativity       `json:"associativity,omitempty"`
}

func ParseCache

func ParseCache(s *smbios.Structure) (info *Cache, err error)

ParseCache 缓存信息

func (Cache) String

func (c Cache) String() string

type CacheAssociativity

type CacheAssociativity byte
const (
	CacheAssociativityOther CacheAssociativity = 1 + iota
	CacheAssociativityUnknown
	CacheAssociativityDirectMapped
	CacheAssociativity2waySetAssociative
	CacheAssociativity4waySetAssociative
	CacheAssociativityFullyAssociative
	CacheAssociativity8waySetAssociative
	CacheAssociativity16waySetAssociative
	CacheAssociativity12waySetAssociative
	CacheAssociativity24waySetAssociative
	CacheAssociativity32waySetAssociative
	CacheAssociativity48waySetAssociative
	CacheAssociativity64waySetAssociative
	CacheAssociativity20waySetAssociative
)

func (CacheAssociativity) String

func (c CacheAssociativity) String() string

type CacheConfiguration

type CacheConfiguration struct {
	Mode     CacheOperationalMode
	Enabled  bool
	Location CacheLocation
	Socketed bool
	Level    CacheLevel
}

func NewCacheConfiguration

func NewCacheConfiguration(u uint16) CacheConfiguration

func (CacheConfiguration) String

func (c CacheConfiguration) String() string

type CacheErrorCorrectionType

type CacheErrorCorrectionType byte
const (
	CacheErrorCorrectionTypeOther CacheErrorCorrectionType = 1 + iota
	CacheErrorCorrectionTypeUnknown
	CacheErrorCorrectionTypeNone
	CacheErrorCorrectionTypeParity
	CacheErrorCorrectionTypeSinglebitECC
	CacheErrorCorrectionTypeMultibitECC
)

func (CacheErrorCorrectionType) String

func (c CacheErrorCorrectionType) String() string

type CacheGranularity

type CacheGranularity byte
const (
	CacheGranularity1K CacheGranularity = iota
	CacheGranularity64K
)

func (CacheGranularity) String

func (c CacheGranularity) String() string

type CacheLevel

type CacheLevel byte
const (
	CacheLevel1 CacheLevel = iota
	CacheLevel2
	CacheLevel3
)

func (CacheLevel) String

func (c CacheLevel) String() string

type CacheLocation

type CacheLocation byte
const (
	CacheLocationInternal CacheLocation = iota
	CacheLocationExternal
	CacheLocationReserved
	CacheLocationUnknown
)

func (CacheLocation) String

func (c CacheLocation) String() string

type CacheOperationalMode

type CacheOperationalMode byte
const (
	CacheOperationalModeWriteThrough CacheOperationalMode = iota
	CacheOperationalModeWriteBack
	CacheOperationalModeVariesWithMemoryAddress
	CacheOperationalModeUnknown
)

func (CacheOperationalMode) String

func (c CacheOperationalMode) String() string

type CacheSRAMType

type CacheSRAMType uint16
const (
	CacheSRAMTypeOther CacheSRAMType = 1 << iota
	CacheSRAMTypeUnknown
	CacheSRAMTypeNonBurst
	CacheSRAMTypeBurst
	CacheSRAMTypePipelineBurst
	CacheSRAMTypeSynchronous
	CacheSRAMTypeAsynchronous
	CacheSRAMTypeReserved
)

func (CacheSRAMType) String

func (c CacheSRAMType) String() string

type CacheSize

type CacheSize struct {
	Granularity CacheGranularity
	Size        uint16
}

func NewCacheSize

func NewCacheSize(u uint16) CacheSize

func (CacheSize) String

func (c CacheSize) String() string

type CacheSpeed

type CacheSpeed byte

type CacheSystemCacheType

type CacheSystemCacheType byte
const (
	CacheSystemCacheTypeOther CacheSystemCacheType = 1 + iota
	CacheSystemCacheTypeUnknown
	CacheSystemCacheTypeInstruction
	CacheSystemCacheTypeData
	CacheSystemCacheTypeUnified
)

func (CacheSystemCacheType) String

func (c CacheSystemCacheType) String() string

type Processor

type Processor struct {
	smbios.Header
	SocketDesignation string                   `json:"socket_designation,omitempty"`
	ProcessorType     ProcessorType            `json:"processor_type,omitempty"`
	Family            ProcessorFamily          `json:"family,omitempty"`
	Manufacturer      string                   `json:"manufacturer,omitempty"`
	ID                ProcessorID              `json:"id,omitempty"`
	Version           string                   `json:"version,omitempty"`
	Voltage           ProcessorVoltage         `json:"voltage,omitempty"`
	ExternalClock     uint16                   `json:"external_clock,omitempty"`
	MaxSpeed          uint16                   `json:"max_speed,omitempty"`
	CurrentSpeed      uint16                   `json:"current_speed,omitempty"`
	Status            ProcessorStatus          `json:"status,omitempty"`
	Upgrade           ProcessorUpgrade         `json:"upgrade,omitempty"`
	L1CacheHandle     uint16                   `json:"l_1_cache_handle,omitempty"`
	L2CacheHandle     uint16                   `json:"l_2_cache_handle,omitempty"`
	L3CacheHandle     uint16                   `json:"l_3_cache_handle,omitempty"`
	SerialNumber      string                   `json:"serial_number,omitempty"`
	AssetTag          string                   `json:"asset_tag,omitempty"`
	PartNumber        string                   `json:"part_number,omitempty"`
	CoreCount         byte                     `json:"core_count,omitempty"`
	CoreEnabled       byte                     `json:"core_enabled,omitempty"`
	ThreadCount       byte                     `json:"thread_count,omitempty"`
	Characteristics   ProcessorCharacteristics `json:"characteristics,omitempty"`
	Family2           ProcessorFamily          `json:"family_2,omitempty"`
}

Processor CPU信息

func ParseProcessor

func ParseProcessor(s *smbios.Structure) (info *Processor, err error)

ParseProcessor 处理器 7.5.3 Processor ID field format

The Processor ID field contains processor-specific information that describes the processor’s features.

7.5.3.1 x86-class CPUs

For x86 class CPUs, the field’s format depends on the processor’s support of the CPUID instruction. If the
instruction is supported, the Processor ID field contains two DWORD-formatted values. The first (offsets
08h-0Bh) is the EAX value returned by a CPUID instruction with input EAX set to 1; the second (offsets
0Ch-0Fh) is the EDX value returned by that instruction.
Otherwise, only the first two bytes of the Processor ID field are significant (all others are set to 0) and
contain (in WORD-format) the contents of the DX register at CPU reset.

7.5.3.2 ARM32-class CPUs

For ARM32-class CPUs, the Processor ID field contains two DWORD-formatted values. The first (offsets
08h-0Bh) is the contents of the Main ID Register (MIDR); the second (offsets 0Ch-0Fh) is zero.

7.5.3.3 ARM64-class CPUs

For ARM64-class CPUs, the Processor ID field contains two DWORD-formatted values. Th

func (Processor) String

func (p Processor) String() string

type ProcessorCharacteristics

type ProcessorCharacteristics uint16
const (
	ProcessorCharacteristicsReserved ProcessorCharacteristics = 1
	ProcessorCharacteristicsUnknown
	ProcessorCharacteristics64_bitCapable
	ProcessorCharacteristicsMulti_Core
	ProcessorCharacteristicsHardwareThread
	ProcessorCharacteristicsExecuteProtection
	ProcessorCharacteristicsEnhancedVirtualization
	ProcessorCharacteristicsPowerPerformanceControl
)

func (ProcessorCharacteristics) String

func (p ProcessorCharacteristics) String() string

type ProcessorFamily

type ProcessorFamily uint16
const (
	ProcessorOther ProcessorFamily = 1 + iota
	ProcessorUnknown
	ProcessorProcessorFamily8086
	ProcessorProcessorFamily80286
	ProcessorIntel386TMprocessor
	ProcessorIntel486TMprocessor
	ProcessorProcessorFamily8087
	ProcessorProcessorFamily80287
	ProcessorProcessorFamily80387
	ProcessorProcessorFamily80487
	ProcessorIntelPentiumprocessor
	ProcessorPentiumProprocessor
	ProcessorPentiumIIprocessor
	ProcessorPentiumprocessorwithMMXTMtechnology
	ProcessorIntelCeleronprocessor
	ProcessorPentiumIIXeonTMprocessor
	ProcessorPentiumIIIprocessor
	ProcessorM1Family
	ProcessorM2Family
	ProcessorIntelCeleronMprocessor
	ProcessorIntelPentium4HTprocessor

	ProcessorAMDDuronTMProcessorFamily
	ProcessorK5Family
	ProcessorK6Family
	ProcessorK6_2
	ProcessorK6_3
	ProcessorAMDAthlonTMProcessorFamily
	ProcessorAMD29000Family
	ProcessorK6_2Plus
	ProcessorPowerPCFamily
	ProcessorPowerPC601
	ProcessorPowerPC603
	ProcessorPowerPC603Plus
	ProcessorPowerPC604
	ProcessorPowerPC620
	ProcessorPowerPCx704
	ProcessorPowerPC750
	ProcessorIntelCoreTMDuoprocessor
	ProcessorIntelCoreTMDuomobileprocessor
	ProcessorIntelCoreTMSolomobileprocessor
	ProcessorIntelAtomTMprocessor

	ProcessorAlphaFamily
	ProcessorAlpha21064
	ProcessorAlpha21066
	ProcessorAlpha21164
	ProcessorAlpha21164PC
	ProcessorAlpha21164a
	ProcessorAlpha21264
	ProcessorAlpha21364
	ProcessorAMDTurionTMIIUltraDual_CoreMobileMProcessorFamily
	ProcessorAMDTurionTMIIDual_CoreMobileMProcessorFamily
	ProcessorAMDAthlonTMIIDual_CoreMProcessorFamily
	ProcessorAMDOpteronTM6100SeriesProcessor
	ProcessorAMDOpteronTM4100SeriesProcessor
	ProcessorAMDOpteronTM6200SeriesProcessor
	ProcessorAMDOpteronTM4200SeriesProcessor
	ProcessorAMDFXTMSeriesProcessor
	ProcessorMIPSFamily
	ProcessorMIPSR4000
	ProcessorMIPSR4200
	ProcessorMIPSR4400
	ProcessorMIPSR4600
	ProcessorMIPSR10000
	ProcessorAMDC_SeriesProcessor
	ProcessorAMDE_SeriesProcessor
	ProcessorAMDA_SeriesProcessor
	ProcessorAMDG_SeriesProcessor
	ProcessorAMDZ_SeriesProcessor
	ProcessorAMDR_SeriesProcessor
	ProcessorAMDOpteronTM4300SeriesProcessor
	ProcessorAMDOpteronTM6300SeriesProcessor
	ProcessorAMDOpteronTM3300SeriesProcessor
	ProcessorAMDFireProTMSeriesProcessor
	ProcessorSPARCFamily
	ProcessorSuperSPARC
	ProcessormicroSPARCII
	ProcessormicroSPARCIIep
	ProcessorUltraSPARC
	ProcessorUltraSPARCII
	ProcessorUltraSPARCIii
	ProcessorUltraSPARCIII
	ProcessorUltraSPARCIIIi

	Processor68040Family
	Processor68xxx
	ProcessorProcessorFamily68000
	ProcessorProcessorFamily68010
	ProcessorProcessorFamily68020
	ProcessorProcessorFamily68030

	ProcessorHobbitFamily

	ProcessorCrusoeTMTM5000Family
	ProcessorCrusoeTMTM3000Family
	ProcessorEfficeonTMTM8000Family

	ProcessorWeitek

	ProcessorItaniumTMprocessor
	ProcessorAMDAthlonTM64ProcessorFamily
	ProcessorAMDOpteronTMProcessorFamily
	ProcessorAMDSempronTMProcessorFamily
	ProcessorAMDTurionTM64MobileTechnology
	ProcessorDual_CoreAMDOpteronTMProcessorFamily
	ProcessorAMDAthlonTM64X2Dual_CoreProcessorFamily
	ProcessorAMDTurionTM64X2MobileTechnology
	ProcessorQuad_CoreAMDOpteronTMProcessorFamily
	ProcessorThird_GenerationAMDOpteronTMProcessorFamily
	ProcessorAMDPhenomTMFXQuad_CoreProcessorFamily
	ProcessorAMDPhenomTMX4Quad_CoreProcessorFamily
	ProcessorAMDPhenomTMX2Dual_CoreProcessorFamily
	ProcessorAMDAthlonTMX2Dual_CoreProcessorFamily
	ProcessorPA_RISCFamily
	ProcessorPA_RISC8500
	ProcessorPA_RISC8000
	ProcessorPA_RISC7300LC
	ProcessorPA_RISC7200
	ProcessorPA_RISC7100LC
	ProcessorPA_RISC7100

	ProcessorV30Family
	ProcessorQuad_CoreIntelXeonprocessor3200Series
	ProcessorDual_CoreIntelXeonprocessor3000Series
	ProcessorQuad_CoreIntelXeonprocessor5300Series
	ProcessorDual_CoreIntelXeonprocessor5100Series
	ProcessorDual_CoreIntelXeonprocessor5000Series
	ProcessorDual_CoreIntelXeonprocessorLV
	ProcessorDual_CoreIntelXeonprocessorULV
	ProcessorDual_CoreIntelXeonprocessor7100Series
	ProcessorQuad_CoreIntelXeonprocessor5400Series
	ProcessorQuad_CoreIntelXeonprocessor
	ProcessorDual_CoreIntelXeonprocessor5200Series
	ProcessorDual_CoreIntelXeonprocessor7200Series
	ProcessorQuad_CoreIntelXeonprocessor7300Series
	ProcessorQuad_CoreIntelXeonprocessor7400Series
	ProcessorMulti_CoreIntelXeonprocessor7400Series
	ProcessorPentiumIIIXeonTMprocessor
	ProcessorPentiumIIIProcessorwithIntelSpeedStepTMTechnology
	ProcessorPentium4Processor
	ProcessorIntelXeonprocessor
	ProcessorAS400Family
	ProcessorIntelXeonTMprocessorMP
	ProcessorAMDAthlonTMXPProcessorFamily
	ProcessorAMDAthlonTMMPProcessorFamily
	ProcessorIntelItanium2processor
	ProcessorIntelPentiumMprocessor
	ProcessorIntelCeleronDprocessor
	ProcessorIntelPentiumDprocessor
	ProcessorIntelPentiumProcessorExtremeEdition
	ProcessorIntelCoreTMSoloProcessor
	ProcessorReserved
	ProcessorIntelCoreTM2DuoProcessor
	ProcessorIntelCoreTM2Soloprocessor
	ProcessorIntelCoreTM2Extremeprocessor
	ProcessorIntelCoreTM2Quadprocessor
	ProcessorIntelCoreTM2Extrememobileprocessor
	ProcessorIntelCoreTM2Duomobileprocessor
	ProcessorIntelCoreTM2Solomobileprocessor
	ProcessorIntelCoreTMi7processor
	ProcessorDual_CoreIntelCeleronprocessor
	ProcessorIBM390Family
	ProcessorG4
	ProcessorG5
	ProcessorESA390G6
	ProcessorzArchitecturebase
	ProcessorIntelCoreTMi5processor
	ProcessorIntelCoreTMi3processor

	ProcessorVIAC7TM_MProcessorFamily
	ProcessorVIAC7TM_DProcessorFamily
	ProcessorVIAC7TMProcessorFamily
	ProcessorVIAEdenTMProcessorFamily
	ProcessorMulti_CoreIntelXeonprocessor
	ProcessorDual_CoreIntelXeonprocessor3xxxSeries
	ProcessorQuad_CoreIntelXeonprocessor3xxxSeries
	ProcessorVIANanoTMProcessorFamily
	ProcessorDual_CoreIntelXeonprocessor5xxxSeries
	ProcessorQuad_CoreIntelXeonprocessor5xxxSeries

	ProcessorDual_CoreIntelXeonprocessor7xxxSeries
	ProcessorQuad_CoreIntelXeonprocessor7xxxSeries
	ProcessorMulti_CoreIntelXeonprocessor7xxxSeries
	ProcessorMulti_CoreIntelXeonprocessor3400Series

	ProcessorAMDOpteronTM3000SeriesProcessor
	ProcessorAMDSempronTMIIProcessor
	ProcessorEmbeddedAMDOpteronTMQuad_CoreProcessorFamily
	ProcessorAMDPhenomTMTriple_CoreProcessorFamily
	ProcessorAMDTurionTMUltraDual_CoreMobileProcessorFamily
	ProcessorAMDTurionTMDual_CoreMobileProcessorFamily
	ProcessorAMDAthlonTMDual_CoreProcessorFamily
	ProcessorAMDSempronTMSIProcessorFamily
	ProcessorAMDPhenomTMIIProcessorFamily
	ProcessorAMDAthlonTMIIProcessorFamily
	ProcessorSix_CoreAMDOpteronTMProcessorFamily
	ProcessorAMDSempronTMMProcessorFamily

	Processori860
	Processori960

	ProcessorIndicatortoobtaintheprocessorfamilyfromtheProcessorFamily2field

	ProcessorSH_3
	ProcessorSH_4
	ProcessorARM
	ProcessorStrongARM
	Processor6x86
	ProcessorMediaGX
	ProcessorMII
	ProcessorWinChip
	ProcessorDSP
	ProcessorVideoProcessor
)

func (ProcessorFamily) String

func (p ProcessorFamily) String() string

type ProcessorID

type ProcessorID []byte

func (ProcessorID) String

func (p ProcessorID) String() string

type ProcessorStatus

type ProcessorStatus byte
const (
	ProcessorStatusUnknown ProcessorStatus = iota
	ProcessorStatusEnabled
	ProcessorStatusDisabledByUser
	ProcessorStatusDisabledByBIOS
	ProcessorStatusIdle

	ProcessorStatusOther
)

func (ProcessorStatus) String

func (p ProcessorStatus) String() string

type ProcessorType

type ProcessorType byte
const (
	ProcessorTypeOther ProcessorType = 1 + iota
	ProcessorTypeUnknown
	ProcessorTypeCentralProcessor
	ProcessorTypeMathProcessor
	ProcessorTypeDSPProcessor
	ProcessorTypeVideoProcessor
)

func (ProcessorType) String

func (p ProcessorType) String() string

type ProcessorUpgrade

type ProcessorUpgrade byte
const (
	ProcessorUpgradeOther ProcessorUpgrade
	ProcessorUpgradeUnknown
	ProcessorUpgradeDaughterBoard
	ProcessorUpgradeZIFSocket
	ProcessorUpgradeReplaceablePiggyBack
	ProcessorUpgradeNone
	ProcessorUpgradeLIFSocket
	ProcessorUpgradeSlot1
	ProcessorUpgradeSlot2
	ProcessorUpgrade370_pinsocket
	ProcessorUpgradeSlotA
	ProcessorUpgradeSlotM
	ProcessorUpgradeSocket423
	ProcessorUpgradeSocketASocket462
	ProcessorUpgradeSocket478
	ProcessorUpgradeSocket754
	ProcessorUpgradeSocket940
	ProcessorUpgradeSocket939
	ProcessorUpgradeSocketmPGA604
	ProcessorUpgradeSocketLGA771
	ProcessorUpgradeSocketLGA775
	ProcessorUpgradeSocketS1
	ProcessorUpgradeSocketAM2
	ProcessorUpgradeSocketF1207
	ProcessorUpgradeSocketLGA1366
	ProcessorUpgradeSocketG34
	ProcessorUpgradeSocketAM3
	ProcessorUpgradeSocketC32
	ProcessorUpgradeSocketLGA1156
	ProcessorUpgradeSocketLGA1567
	ProcessorUpgradeSocketPGA988A
	ProcessorUpgradeSocketBGA1288
	ProcessorUpgradeSocketrPGA988B
	ProcessorUpgradeSocketBGA1023
	ProcessorUpgradeSocketBGA1224
	ProcessorUpgradeSocketLGA1155
	ProcessorUpgradeSocketLGA1356
	ProcessorUpgradeSocketLGA2011
	ProcessorUpgradeSocketFS1
	ProcessorUpgradeSocketFS2
	ProcessorUpgradeSocketFM1
	ProcessorUpgradeSocketFM2
	ProcessorUpgradeSocketLGA2011_3
	ProcessorUpgradeSocketLGA1356_3
)

func (ProcessorUpgrade) String

func (p ProcessorUpgrade) String() string

type ProcessorVoltage

type ProcessorVoltage byte
const (
	ProcessorVoltage5V ProcessorVoltage = 1 << iota
	ProcessorVoltage3dot3V
	ProcessorVoltage2dot9V
	ProcessorVoltageReserved

	ProcessorVoltageLegacy
)

func (ProcessorVoltage) String

func (p ProcessorVoltage) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL