* Parsing Structures postmortem from memory dump
@ 2008-05-06 19:04 Adrian Sud
2008-05-06 22:37 ` Dan Noé
0 siblings, 1 reply; 2+ messages in thread
From: Adrian Sud @ 2008-05-06 19:04 UTC (permalink / raw)
To: Linux Kernel Mailing List
Hi,
I am working on a project attempting to extend the volatility toolkit
(www.volatilesystems.com) to read Linux memory; for now I am attempting
to support Kernel 2.6.22-14 using i686 arch.
What I mean to do is have it first identify that the image is from a
linux environment, and then parse out the processes that were running
when the image was taken.
I've looked at /include/linux/sched.h and tried to understand the
task_struct structure, but it appears to be variable-length, determined
at compile time, and I can't tell exactly how these are stored
throughout memory--In a list? a tree?
If anyone can point me to more information toward finding out how to
trace this, I would appreciate it.
Thank you,
Adrian Sud
UMass Amherst
Dept. of Computer Science
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: Parsing Structures postmortem from memory dump
2008-05-06 19:04 Parsing Structures postmortem from memory dump Adrian Sud
@ 2008-05-06 22:37 ` Dan Noé
0 siblings, 0 replies; 2+ messages in thread
From: Dan Noé @ 2008-05-06 22:37 UTC (permalink / raw)
To: Adrian Sud; +Cc: Linux Kernel Mailing List
Adrian Sud wrote:
> I've looked at /include/linux/sched.h and tried to understand the
> task_struct structure, but it appears to be variable-length, determined
> at compile time, and I can't tell exactly how these are stored
> throughout memory--In a list? a tree?
The task_struct structures are stored on one or more lists. Note the
list_head types within the structure - each of this is a list that the
structure is (potentially) a member of.
This is a good explanation of how the kernel's lists work:
http://kernelnewbies.org/FAQ/LinkedLists
I don't know if a generalized printer/parser exists for the kernel
linked list, but this might be a good way to start exploring your
project. There are macros to traverse the lists easily, so it shouldn't
be too difficult.
Hope that helps.
Cheers,
Dan
--
/--------------- - - - - - -
| Dan Noé
| http://isomerica.net/~dpn/
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2008-05-06 22:37 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-05-06 19:04 Parsing Structures postmortem from memory dump Adrian Sud
2008-05-06 22:37 ` Dan Noé
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox