A1: It's showing you the thread name that you would see from ps -t
on the device, which is set by the process. Unnamed Dalvik threads are named "Thread-N", where N is a serial number tracked by the Thread class (the same way the Binder thread pool created "Binder_1"). So the "117" in "Thread-117" has no relationship to the system pid or tid; it's just what the thread is called. It's not guaranteed to be unique -- you could have multiple instances in one process, or in separate processes.
A2: The states are the same as you'd see in ps
output. See the Linux man page's "PROCESS STATE CODES" section:
D uninterruptible sleep (usually IO)
R running or runnable (on run queue)
S interruptible sleep (waiting for an event to complete)
...
A3: Yes, LIFO, for a single thread. This is matched by the public android.os.Trace API. (There is a different (non-public) API for "asynchronous" traces where you supply the same tag and "cookie" for start and end, but it's not used as widely.)