# File lib/facter/util/memory.rb, line 8
  def self.meminfo_number(tag)
    memsize = ""
    Thread::exclusive do
      size, scale = [0, ""]
      File.readlines("/proc/meminfo").each do |l|
        size, scale = [$1.to_f, $2] if l =~ /^#{tag}:\s+(\d+)\s+(\S+)/
        # MemoryFree == memfree + cached + buffers
        #  (assume scales are all the same as memfree)
        if tag == "MemFree" &&
          l =~ /^(?:Buffers|Cached):\s+(\d+)\s+(?:\S+)/
          size += $1.to_f
        end
      end
      memsize = scale_number(size, scale)
    end

    memsize
  end