debuggercdi/com.nokia.carbide.cpp.debug.crashdebugger/html/DebuggingInformation/CrashDebuggerInfoAboutKernel.guide02.html
author tzelaw
Tue, 14 Apr 2009 15:03:19 -0500
changeset 94 d74b720418db
parent 2 d760517a8095
child 990 5d016a880824
child 1024 48b401835d0a
permissions -rw-r--r--
Test framework support: Ask debugger to remember DebugTarget so test framework can use it to setup test framework related utility. With this we can use the DebugUI way of launching while keeping test framework functionality
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2
cawthron
parents:
diff changeset
     1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
cawthron
parents:
diff changeset
     2
	"http://www.w3.org/TR/html4/loose.dtd">
cawthron
parents:
diff changeset
     3
	<html><head>
cawthron
parents:
diff changeset
     4
	<title>Scheduler State</title>
cawthron
parents:
diff changeset
     5
	<link href="sysdoc-eclipse.css" type="text/css" rel="stylesheet" media="screen">
cawthron
parents:
diff changeset
     6
	<link href="sysdoc-eclipse.css" type="text/css" rel="stylesheet" media="print">
cawthron
parents:
diff changeset
     7
	<link href="../../book.css" type="text/css" rel="stylesheet" >
cawthron
parents:
diff changeset
     8
<div class="Head1">
cawthron
parents:
diff changeset
     9
cawthron
parents:
diff changeset
    10
<h2>Scheduler State</h2>
cawthron
parents:
diff changeset
    11
</div>
cawthron
parents:
diff changeset
    12
<div>
cawthron
parents:
diff changeset
    13
<p>The first three lines and the fifth line of the output show the
cawthron
parents:
diff changeset
    14
state of the kernel scheduler. This information is mainly of interest to kernel
cawthron
parents:
diff changeset
    15
engineers, although the state of the kernel and the system locks can be useful
cawthron
parents:
diff changeset
    16
when debugging device driver crashes.</p>
cawthron
parents:
diff changeset
    17
<p class="listing">SCHEDULER @64000348: CurrentThread 640396b0<br>
cawthron
parents:
diff changeset
    18
  RescheduleNeeded=00 DfcPending=00 KernCSLocked=00000001<br>DFCS: next 64000458 prev 64000458<br>...<br>SYSLOCK: HoldingThread 00000000 iWaiting 00000000</p>
cawthron
parents:
diff changeset
    19
<p>The values are interpreted as follows:</p><table cellpadding="1" border="0" cellspacing="0"><tr><td
cawthron
parents:
diff changeset
    20
class="TableWrap"><table cellpadding="5" cellspacing="1"
cawthron
parents:
diff changeset
    21
border="0"><tr valign="top"><td class="Cell">
cawthron
parents:
diff changeset
    22
<p>SCHEDULER @</p></td><td class="Cell">
cawthron
parents:
diff changeset
    23
<p>This is the address of the kernel&#8217;s scheduler instance; this
cawthron
parents:
diff changeset
    24
is not very useful.</p></td></tr>
cawthron
parents:
diff changeset
    25
<tr valign="top"><td class="Cell">
cawthron
parents:
diff changeset
    26
<p>CurrentThread</p></td><td class="Cell">
cawthron
parents:
diff changeset
    27
<p>The address of the kernel object for the current kernel
cawthron
parents:
diff changeset
    28
thread.</p></td></tr>
cawthron
parents:
diff changeset
    29
<tr valign="top"><td class="Cell">
cawthron
parents:
diff changeset
    30
<p>RescheduleNeeded</p></td><td class="Cell">
cawthron
parents:
diff changeset
    31
<p>This is set to non-zero by the kernel to force a reschedule,
cawthron
parents:
diff changeset
    32
for example if a thread has been signalled</p></td></tr>
cawthron
parents:
diff changeset
    33
<tr valign="top"><td class="Cell">
cawthron
parents:
diff changeset
    34
<p>DfcPending</p></td><td class="Cell">
cawthron
parents:
diff changeset
    35
<p>This is non-zero when there are DFCs queued.</p></td></tr>
cawthron
parents:
diff changeset
    36
<tr valign="top"><td class="Cell">
cawthron
parents:
diff changeset
    37
<p>KernCSLocked</p></td><td class="Cell">
cawthron
parents:
diff changeset
    38
<p>This is incremented each time the kernel is locked by a call
cawthron
parents:
diff changeset
    39
to NKern::Lock(), and decremented by calls to NKern::Unlock(). A value of zero means that the kernel is
cawthron
parents:
diff changeset
    40
not locked.</p></td></tr>
cawthron
parents:
diff changeset
    41
<tr valign="top"><td class="Cell">
cawthron
parents:
diff changeset
    42
<p>DFCS:</p></td><td class="Cell">
cawthron
parents:
diff changeset
    43
<p>The addresses of the next and the previous items on the DFC
cawthron
parents:
diff changeset
    44
queue</p></td></tr>
cawthron
parents:
diff changeset
    45
<tr valign="top"><td class="Cell">
cawthron
parents:
diff changeset
    46
<p>HoldingThread</p></td><td class="Cell">
cawthron
parents:
diff changeset
    47
<p>The address of the thread holding the system lock mutex. The
cawthron
parents:
diff changeset
    48
system lock is set by call to NKern::LockSystem() and
cawthron
parents:
diff changeset
    49
unset by call to NKern::UnlockSystem()</p></td></tr>
cawthron
parents:
diff changeset
    50
<tr valign="top"><td class="Cell">
cawthron
parents:
diff changeset
    51
<p>iWaiting</p></td><td class="Cell">
cawthron
parents:
diff changeset
    52
<p>Non-zero, if any thread is waiting for the system lock
cawthron
parents:
diff changeset
    53
mutex.</p></td></tr>
cawthron
parents:
diff changeset
    54
</table></td></tr></table>
cawthron
parents:
diff changeset
    55
<p>&nbsp;</p>
cawthron
parents:
diff changeset
    56
</div>
cawthron
parents:
diff changeset
    57
<h5>Related tasks</h5>
cawthron
parents:
diff changeset
    58
<ul>
cawthron
parents:
diff changeset
    59
  <li><a href="CrashDebuggerInfoAboutKernel.guide.html">Extracting Kernel Information</a> </li>
cawthron
parents:
diff changeset
    60
  <li><a href="CrashDebuggerInfoAboutKernel.guide03.html">Current Thread State</a></li>
cawthron
parents:
diff changeset
    61
  <li><a href="CrashDebuggerInfoAboutKernel.guide04.html">Current Process State</a></li>
cawthron
parents:
diff changeset
    62
  <li><a href="CrashDebuggerInfoAboutKernel.guide05.html">Current Data Section Process</a></li>
cawthron
parents:
diff changeset
    63
</ul>
cawthron
parents:
diff changeset
    64
<div id="footer">Copyright &copy; 2009 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. <br>License: <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a></div>
cawthron
parents:
diff changeset
    65
	   </body>
cawthron
parents:
diff changeset
    66
	   </html>
cawthron
parents:
diff changeset
    67