Released LibGTop 0.25 stable.
1998-08-21 Martin Baulig <martin@home-of-linux.org> * ANNOUNCE-0.25: Released LibGTop 0.25 stable.
This commit is contained in:
committed by
Martin Baulig
parent
86abb41ef6
commit
6db51362bf
241
ANNOUNCE-0.25
Normal file
241
ANNOUNCE-0.25
Normal file
@@ -0,0 +1,241 @@
|
||||
[Posted to the Gnome Mailing List on Fri Aug 21 1998]
|
||||
|
||||
About this release:
|
||||
------------------
|
||||
|
||||
LibGTop 0.25 is a stable release.
|
||||
|
||||
Of cause it has its bug like any software has, I'm planning
|
||||
to fix as many bugs as possible in _this_ release and then
|
||||
re-release it as libgtop-0.26 or even libgtop-0.30.
|
||||
|
||||
Especially portings to new operating systems should be made
|
||||
in this release.
|
||||
|
||||
This also means that we can safely use this version of LibGTop
|
||||
all over the GNOME project.
|
||||
|
||||
Currently LibGTop-Apps is still a little bit under development -
|
||||
especially the LibGTop-Apps GTop does not yet have the full
|
||||
functionallity of the real GTop.
|
||||
|
||||
We should test this extensively and then decide whether to continue
|
||||
with the `libgtop-apps' module or whether to merge all its code
|
||||
back into the modules it came from. I'd like to hear some comments
|
||||
about this from you !
|
||||
|
||||
Please look at the release notes below for more details about this
|
||||
release.
|
||||
|
||||
Where to get the sources
|
||||
------------------------
|
||||
|
||||
The sources can be found at:
|
||||
|
||||
ftp://ftp.home-of-linux.org/pub/
|
||||
|
||||
Tarballs:
|
||||
|
||||
libgtop-0.25.0.tar.gz
|
||||
libgtop-apps-0.25.0.tar.gz
|
||||
|
||||
Source RPM:
|
||||
|
||||
libgtop-0.25.0-REL.src.rpm
|
||||
libgtop-apps-0.25.0-REL.src.rpm
|
||||
|
||||
Binary RPMS:
|
||||
|
||||
libgtop-0.25.0-REL.i386.rpm
|
||||
libgtop-devel-0.25.0-REL.i386.rpm
|
||||
libgtop-examples-0.25.0-REL.i386.rpm
|
||||
libgtop-apps-0.25.0-REL.i386.rpm
|
||||
|
||||
There is some little problem with the binary RPMS of `libgtop-apps':
|
||||
|
||||
Most of its files will conflict with ones from `gnome-core' and `gnome-utils',
|
||||
so you'll need to use the `--force' parameter to install it.
|
||||
|
||||
Getting the sources from CVS:
|
||||
----------------------------
|
||||
|
||||
You can also fetch the sources from the GNOME CVS tree
|
||||
(see http://www.gnome.org/ for details).
|
||||
|
||||
To get the latest sources:
|
||||
|
||||
$ cvs checkout libgtop
|
||||
$ cvs checkout libgtop-apps
|
||||
|
||||
To get the sources of *this* release:
|
||||
|
||||
$ cvs checkout -r LIBGTOP_0_25 libgtop
|
||||
$ cvs checkout -r LIBGTOP_0_25 libgtop-apps
|
||||
|
||||
To get the sources of this release with all bug-fixes applied:
|
||||
|
||||
$ cvs checkout -r LIBGTOP_0_25_PATCHES libgtop
|
||||
$ cvs checkout -r LIBGTOP_0_25_PATCHES libgtop-apps
|
||||
|
||||
To get a patch to apply to the tarballs to get all bug-fixes:
|
||||
|
||||
$ cvs rdiff -r LIBGTOP_0_25 -r LIBGTOP_0_25_PATCHES libgtop
|
||||
$ cvs rdiff -r LIBGTOP_0_25 -r LIBGTOP_0_25_PATCHES libgtop-apps
|
||||
|
||||
[Note for people having write access to the GNOME CVS tree:
|
||||
|
||||
Please apply bug fixes to the `LIBGTOP_0_25_PATCHES' branch and
|
||||
merge them into the main trunk.
|
||||
|
||||
After merging, please re-tag the branch `libgtop_0_25_after_merge'.
|
||||
|
||||
This will help us to re-release this package when all bugs are
|
||||
fixed.
|
||||
]
|
||||
|
||||
RELEASE NOTES FOR LIBGTOP 0.25 STABLE
|
||||
=====================================
|
||||
|
||||
OVERVIEW
|
||||
--------
|
||||
|
||||
LibGTop is a library that read information about processes and the running
|
||||
systems. This information include:
|
||||
|
||||
General System Information
|
||||
|
||||
cpu - CPU Usage
|
||||
mem - Memory Usage
|
||||
swap - Swap Usage (including paging activity)
|
||||
loadavg - Load average (including nr_running, nr_tasks, last_pid)
|
||||
uptime - Uptime and Idle time, can be calculated from CPU usage
|
||||
|
||||
SYS V IPC Limits:
|
||||
|
||||
shm_limits - Shared Memory Limits
|
||||
msg_limits - Message Queue Limits
|
||||
sem_limits - Semaphore Set Limits
|
||||
|
||||
Process List:
|
||||
|
||||
proclist - List of processes
|
||||
|
||||
Process information:
|
||||
|
||||
proc_state - cmd, state, uid, gid
|
||||
proc_uid - uid,euid,gid,egid,pid,ppid,pgrp
|
||||
session,tty,tpgid,priority,nice
|
||||
proc_mem - size,vsize,resident,share,rss,rss_rlim
|
||||
proc_time - start_time,rtime,utime,stime,cutime,cstime
|
||||
timeout,it_real_value,frequency
|
||||
proc_signal - signal,blocked,sigignore,sigcatch
|
||||
proc_kernel - k_flags,min_flt,maj_flt,cmin_flt,cmaj_flt
|
||||
kstk_esp,kstk_eip,nwchan,wchan
|
||||
proc_segment - text_rss,shlib_rss,data_rss,stack_rss,dirty_size
|
||||
start_code,end_code,start_stack
|
||||
|
||||
Process maps:
|
||||
|
||||
proc_map - Process map (/proc/<pid>/maps under Linux)
|
||||
|
||||
File system usage:
|
||||
|
||||
mountlist - List of currently mounted filesystems
|
||||
fsusage - File system usage
|
||||
|
||||
PORTABILITY:
|
||||
-----------
|
||||
|
||||
LibGtop is designed to be as portable as possible. None of the functions
|
||||
and retrieved information should be specific to a specific operating
|
||||
system. So you only need to port the system dependent part of the library
|
||||
to a new system and all application programs can then use libgtop on this
|
||||
new system.
|
||||
|
||||
CLIENT/SERVER MODEL:
|
||||
-------------------
|
||||
|
||||
Some systems like DEC OSF/1 or BSD require special priviledges for the calling
|
||||
proces to fetch the required information (SUID root/SGID kmem). To solve this
|
||||
problem, I designed a client/server model which makes a call to a SUID/SGID
|
||||
server which fetches the required information whenever it is required. This
|
||||
server is only called for features that really require priviledges, otherwise
|
||||
the sysdeps code is called directory (every user can get the CPU usage on
|
||||
DEC OSF/1, but only root can get information about processes other than the
|
||||
current one).
|
||||
|
||||
There is also some kind of daemon which can be used to fetch information from
|
||||
remote systems (still experimental). This daemon normally runs as nobody and
|
||||
calls the SUID/SGID itself when needed.
|
||||
|
||||
GNOME APPLETS:
|
||||
--------------
|
||||
|
||||
There are some applets and applications which already use LibGTop. They can
|
||||
be found in the `libgtop-apps' module in the GNOME CVS tree:
|
||||
|
||||
* Applets: cpuload, cpumemusage - they need LibGTop to get their information
|
||||
on all systems other than Linux.
|
||||
|
||||
* Applets: diskusage - just uses the mountlist/fsusage features of LibGTop,
|
||||
the one in gnome-core also works on other systems.
|
||||
|
||||
* Applets: multiload - I enhanced the cpuload applet a little bit, it is
|
||||
now a multi applet and can display CPU, Memory and
|
||||
Swap usages.
|
||||
|
||||
GTOP:
|
||||
----
|
||||
|
||||
This cool GNOME app has been ported to use LibGTop. It can be found in
|
||||
`libgtop-apps/gtop' in the GNOME CVS tree.
|
||||
|
||||
You can now use nearly the full functionality of GTop on FreeBSD !
|
||||
|
||||
|
||||
PLATTFORM SPECIFIC NOTES FOR LINUX:
|
||||
==================================
|
||||
|
||||
Under Linux, LibGTop should work without problems and read everything
|
||||
from /proc.
|
||||
|
||||
There is also an experimental kernel interface to read this information
|
||||
directly from the kernel with a system call - but this is still experimental
|
||||
and not well tested while I made this release.
|
||||
|
||||
PLATTFORM SPECIFIC NOTES FOR FREEBSD:
|
||||
====================================
|
||||
|
||||
LibGTop should now work under FreeBSD and give you the full functionality
|
||||
of GTop.
|
||||
|
||||
There are a few caveats:
|
||||
|
||||
* You need to manually make the `$(prefix)/bin/libgtop_server' SGID to kmem
|
||||
after installation and mount the /proc filesystem of FreeBSD
|
||||
(/proc/<pid>/mem is used withing kvm_uread ()).
|
||||
|
||||
* To get the filenames of the process maps displayed in GTop, you need to
|
||||
configure with the `--with-libgtop-inodedb' option (you need GDBM for this
|
||||
to work).
|
||||
|
||||
* You have then to create an inode database which is used to look up to
|
||||
filenames. This is done using the `mkinodedb' program which comes along
|
||||
with libgtop.
|
||||
|
||||
See the file src/inodedb/README for details:
|
||||
|
||||
The `mkinodedb' program which is build in this directory takes two
|
||||
command line arguments: the full pathname of the database to be created
|
||||
and the name of a configuration file consisting of directory and file names
|
||||
each on a line by itself - see `/etc/ld.so.conf' for an example.
|
||||
|
||||
Putting a directory name in this file means all regular files found in this
|
||||
directory are included in the database, but it will not recursively descend
|
||||
into subdirectories (for instance, we want everythink in `/usr/lib' but not
|
||||
every single file in `/usr/lib/sgml'). You can also use filenames to include
|
||||
a single file.
|
||||
|
||||
Have fun,
|
||||
|
||||
Martin <martin@home-of-linux.org>
|
Reference in New Issue
Block a user