4 echo "EXAMPLE (whole tree) : $0 | neato -T png > ps.png && open ps.png"
5 echo "EXAMPLE (user clusters): $0 | sdp -T png > ps.png && open ps.png"
10 awk -v kernel
="$(uname -v)" -v whoami
="$(whoami)" \
13 p2cmd[0] = "swapper/sched"
16 color_hi = sprintf("grey%d", (color_base + (color_incr * 0)))
17 color_mid = sprintf("grey%d", (color_base + (color_incr * 1)))
18 color_low = sprintf("grey%d", (color_base + (color_incr * 2)))
30 print "strict digraph G {";
33 print "colorscheme=brewer;";
35 print "fontname=Helvetica;";
36 print "label=\"" kernel "\";";
40 , fontname=Helvetica \
47 print "node [ fontsize=8 \
48 , fontname=Helvetica \
53 ##### Vertices (clustered by user)
54 for (user in user_names) {
55 printf "subgraph \"cluster_%s\" {\n", user
56 printf "label=\"%s\"\n", user
58 if (p2user_name[p] == user) {
59 color = p2user_name[p] == whoami ? color_hi : color_low
60 fontcolor = p2user_name[p] == whoami ? color_hi : color_mid
64 , fontname=Helvetica \
81 ##### Vertices (without a user)
83 if (!p2user_name[p]) {
87 , fontname=Helvetica \
102 ##### Edges (across clusters)
104 printf "\"%d\" -> \"%d\";\n", p2pp[p], p, p
114 if [ "$(uname)" = 'Linux' ]; then
115 ps
-eo pid
,ppid
,euid
,euser
,comm
117 ps
-eco pid
,ppid
,euid
,euser
,comm
126 *) procs |
grep "$1" | compile
This page took 0.094435 seconds and 4 git commands to generate.