I have a mixed bag of hardware running different versions of SunOS. The
key is the kernel. I complied on a sun4m (SS10 running 4.1.4) and copied
the binaries to another sun4m (SS5 running 4.1.4), and everything works. I
compiled it on a sun4c (SS2 running 4.1.3) and copied the binaries to a
sun4c (IPX running 4.1.4) and it worked.
I solved the problem of having the wrong top on a machine by adding the
kernel type to the name of each, different, top binary. EG: I have a sun4m
machine, so after the compile, I rename top to top.sun4m and copy it to the
/usr/local/bin. Then I make a ln -s /usr/local/bin/top.sun4m
/usr/local/bin/top. Now I can run "top" on any of the machines. If I update
later, I have to remember to rename the file to top.sun4m before coping it
to /usr/local/bin, and everything keeps working.
Other suggestions, that had no effect, were:
Check ownership and permissions. The owner and groups should be root.kmem
was the most often recommended. Also check that /dev/kmem was set to
crw-r--r--. In one case, a /dev/kmem was set to crw-r-----, changing it had
no effect. The default user and group that top wants to be is root.kmem,
and I didn't change that.
Another dealt with the way a filesystem was mounted.
Thanks to:
rackow@mcs.anl.gov
mpless@ljswc.ucsd.edu
phil@cgrg.ohio-state.edu
jayl@latticesemi.com
Ian_MacPhedran@mackenzie.usask.ca
ric@rtd.com
Dave.