Hello All,
           I was given a project in my college and the description of
the project is as follow.

[b]Goal:[/b]
    The idea of this whole thing is to find memory leaks in specially
in the applications user land. Since configd constitutes big chunk of
user land and it is a daemon where impact of memory leak is quite huge
(unlike commands where whatever unfreed memory will be freed when
program exits). So, to begin with cover configd and pay attention to
commands.

[b]Approach:[/b]
1.      Get familiarity on libumem.so on Solaris.
2.      Machine : On Solaris machine, preferrably Solaris 10 which has
minimum 15 disks.
3.      Write a wrapper for configd in /sbin/, this wrapper configd
essentially sets LD_LIBRARY_PATH and run /usr/sbin/configd from the
wrapper. This way we don?t have to change any tcs.
4.      Whenever there is memory leak detected, configd core dump, so make
sure to use ?coreadm? to save the core file in unique file name.
5.      Before running the nightly tcs, you need to have a script which
runs every 10 secs or so see if configd is down, if yes, is there a
core dump and then restart the configd.
6.      Run nightly tcs and collect all core dumps.
7.      Analyse the core dumps and come up with fixes for these.

FYI, configd is a binary in the application which will keep track of
the configuration of the whole application.

[b]My Doubts:
Point 3.[/b]

                * Why should we write the wrapper in /sbin? Why not in
other place?
                * So does it mean we should create a /sbin/configd
file with content

                                                                export
LD_LIBRARY_PATH= "/usr/lib/libumem.so.1"
                                                                /usr/
sbin/configd $1 $2 $3 ...

                * How does test cases play a role here?

[b]Point 4.[/b]
                * How to find memory leak? (is it with ::findleaks
dcmds in mdb)
                * How is the core dump formed? (Manually by gcore or
automatically)

[b]Point 5.[/b]
                * How is this done? (separate thread of program?)

Can you please elaborate about the whole project.
Thanks in advance,
Viswanath Vellaiappan.
-- 
This message posted from opensolaris.org

Reply via email to