author | Jussi Ryoma <ext-jussi.s.ryoma@nokia.com> |
Tue, 20 Apr 2010 14:41:43 +0300 | |
changeset 4 | 615035072f7e |
parent 0 | 5ad7ad99af01 |
permissions | -rw-r--r-- |
0
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
1 |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
2 |
<html> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
3 |
<head> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
4 |
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1"> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
5 |
<title>Code segments</title> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
6 |
<link href="../../book.css" type="text/css" rel="stylesheet"> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
7 |
</head> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
8 |
<body> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
9 |
|
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
10 |
<h2>Code segments</h2> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
11 |
<p>The code segment list contains a list of binaries (dlls/plugins/exe) that were loaded at the time of the crash.</p> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
12 |
<img src="images\code_segments1.png"> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
13 |
<p></p> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
14 |
<p>The kernel creates a code segment for a binary:</p> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
15 |
<ul> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
16 |
<li>Whenever the binary is explicitly loaded (RLibrary::Load() or ECOM is used)</li> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
17 |
<li>When the binary contains global data</li> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
18 |
<li>When a process is explicitly created (RProcess::Create())</li> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
19 |
<li>When the binary in question is loaded into RAM (for example ROFS/ROFX/User Data Area code)</li> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
20 |
</ul> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
21 |
<p>This means that in some situations the list may not contain all the dependencies of the code that was executing at the time of the exception/panic. For example, any code that is statically linked to another binary and that resides in an Execute In Place (XIP) location, such as the phone ‘ROM’, may not actually appear in the list.</p> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
22 |
<p>If you expect a specific binary to be present within the list, and upon inspection you find that it is missing it may indicate that the binary has been unloaded unexpectedly. This in itself can cause an exception – for example, if a plugin is unloaded before all objects that utlize code from that plugin have been destroyed, then it may lead to an exception were the object code invoked.</p> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
23 |
<p>Finally, the list is also color-coded to indicate warnings or errors. For example, items may be highlighted in pink if symbols are unavailable or if the code segment for the binary in question does not align with the code segment information provided by the kernel at the time of the crash. This may indicate that the wrong symbolics have been used to decode the crash file, resulting in incorrect data.</p> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
24 |
<p>For reference information, see:</p> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
25 |
<ul> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
26 |
<li>Symbian OS Internals: <a href="http://www.amazon.com/Symbian-OS-Internals-Real-time-Programming/dp/0470025247">http://www.amazon.com/Symbian-OS-Internals-Real-time-Programming/dp/0470025247</a></li> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
27 |
</ul> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
28 |
|
4
615035072f7e
Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
29 |
<div id="footer">Copyright © 2010 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. |
0
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
30 |
License: <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.</div> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
31 |
</body> |
5ad7ad99af01
Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
32 |
</html> |