[comp.unix.questions] reading /dev/mem - questions

shark@asylum.SF.CA.US (Dylan Rhodes) (11/20/90)

	Okay, so now that I have root access and everything, I thought
I'd write my own version of 'w' - that is, a program that tells me
who's on, and what they're doing.

	From what I can gather, w and ps get this information from
reading memory, from /dev/mem and/or /dev/kmem.

Questions:

	- Am I on the right track?

	- What *is* the difference between /dev/mem and /dev/kmem?

	- Does anybody have the source code to a 'w' or 'ps' program
	  that I can peruse?


-- 
-= Dylan Rhodes.  decwrl!asylum!herctec!shark or shark@herctec.com =-
-= I really should be doing something a bit more useful right now. =-

hotte@sunrise.in-berlin.de (Horst Laumer) (11/29/90)

shark@asylum.SF.CA.US (Dylan Rhodes) writes:
>	Okay, so now that I have root access and everything, I thought
>I'd write my own version of 'w' - that is, a program that tells me
>who's on, and what they're doing.
>	From what I can gather, w and ps get this information from
>reading memory, from /dev/mem and/or /dev/kmem.
>Questions:
>	- Am I on the right track?
>	- What *is* the difference between /dev/mem and /dev/kmem?
>	- Does anybody have the source code to a 'w' or 'ps' program
>	  that I can peruse?

You haven't whodo ? This would solve your problem (I found that binary
in /etc), since it gives system name, login-name, -time and -tty of
every active user and what commands he/she is running (even background
jobs and where their tty is). Try to get the sources, if someone's got
them (/etc/whodo came with the OS to me).

I got a pretty well working PD-system-monitor 'u386mon', who's author is
'wht@n4hgf' as the binary tells me. Sorry, but the sources are unavail
in the moment, perhaps someone else got it (I'm looking for the latest
release, too, got 2.00 but lost source by disk-error).

To solve your problem, I'll give you some hints according to AT&T's
Programmers Ref.:
utmp(4), getut(3c), <utmp.h>, /etc/utmp, /etc/wtmp

These deal with user- and accounting-information, as does who.

With ps, that's quite another highway. See ps(1) in the Files Section,
there is also a little handy definition about the difference between
/dev/mem and /dev/kmem.

Good luck
hl

-- 
============================================================================
Horst Laumer, Kantstrasse 107, D-1000 Berlin 12 ! Bang-Adress: 
Domain: hotte@sunrise.in-berlin.de              ! Junk-Food for Autorouters
Bang:   ...unido!fub!geminix!sunrise!hotte      ! -- me --