class Facter::Processors::Windows

Public Class Methods

new() click to toggle source
# File lib/facter/processors/os.rb, line 106
def initialize
  require 'facter/util/wmi'
end

Public Instance Methods

get_physical_processor_count() click to toggle source
# File lib/facter/processors/os.rb, line 128
def get_physical_processor_count
   Facter::Util::WMI.execquery("select Name from Win32_Processor").Count
end
get_processor_list() click to toggle source
# File lib/facter/processors/os.rb, line 110
def get_processor_list
  processor_list = []
  # get each physical processor
  Facter::Util::WMI.execquery("select * from Win32_Processor").each do |proc|
    # not supported before 2008
    if proc.ole_respond_to?(:NumberOfLogicalProcessors)
      processor_num = proc.NumberOfLogicalProcessors
    else
      processor_num = 1
    end

    processor_num.times do |i|
      processor_list << proc.Name.squeeze(" ")
    end
  end
  processor_list
end