1 # Copyright (C) 2008 Dag Odenhall <dag.odenhall@gmail.com>
2 # Licensed under the Academic Free License version 3.0
4 require 'amazing/widget'
5 require 'amazing/proc_file'
10 description "Various memory related data"
11 field :total, "Total kilobytes of memory", 0
12 field :free, "Free kilobytes of memory", 0
13 field :buffers, nil, 0 # TODO: description
14 field :cached, nil, 0 # TODO: description
15 field :usage, "Percentage of used memory", 0
19 meminfo = ProcFile.new("meminfo")[0]
20 @total = meminfo["MemTotal"].to_i
21 @free = meminfo["MemFree"].to_i
22 @buffers = meminfo["Buffers"].to_i
23 @cached = meminfo["Cached"].to_i
24 @usage = ((@total - @free - @cached - @buffers) * 100) / @total.to_f