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