<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.18"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Crashpad: MINIDUMP_MISC_INFO_2 Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="crashpad_doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Crashpad
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.18 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="structMINIDUMP__MISC__INFO__2-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">MINIDUMP_MISC_INFO_2 Struct Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Information about the process that the minidump file contains a snapshot of, as well as the system that hosted that process.  
 <a href="structMINIDUMP__MISC__INFO__2.html#details">More...</a></p>

<p><code>#include &quot;dbghelp.h&quot;</code></p>
<div class="dynheader">
Inheritance diagram for MINIDUMP_MISC_INFO_2:</div>
<div class="dyncontent">
 <div class="center">
  <img src="structMINIDUMP__MISC__INFO__2.png" usemap="#MINIDUMP_5FMISC_5FINFO_5F2_map" alt=""/>
  <map id="MINIDUMP_5FMISC_5FINFO_5F2_map" name="MINIDUMP_5FMISC_5FINFO_5F2_map">
<area href="structMINIDUMP__MISC__INFO.html" title="Information about the process that the minidump file contains a snapshot of, as well as the system th..." alt="MINIDUMP_MISC_INFO" shape="rect" coords="0,0,163,24"/>
<area href="structMINIDUMP__MISC__INFO__3.html" title="Information about the process that the minidump file contains a snapshot of, as well as the system th..." alt="MINIDUMP_MISC_INFO_3" shape="rect" coords="0,112,163,136"/>
<area href="structMINIDUMP__MISC__INFO__4.html" title="Information about the process that the minidump file contains a snapshot of, as well as the system th..." alt="MINIDUMP_MISC_INFO_4" shape="rect" coords="0,168,163,192"/>
<area href="structMINIDUMP__MISC__INFO__5.html" title="Information about the process that the minidump file contains a snapshot of, as well as the system th..." alt="MINIDUMP_MISC_INFO_5" shape="rect" coords="0,224,163,248"/>
  </map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:abe3f73555332843822bdecfe2e1b0f72"><td class="memItemLeft" align="right" valign="top"><a id="abe3f73555332843822bdecfe2e1b0f72"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structMINIDUMP__MISC__INFO__2.html#abe3f73555332843822bdecfe2e1b0f72">ProcessorMaxMhz</a></td></tr>
<tr class="memdesc:abe3f73555332843822bdecfe2e1b0f72"><td class="mdescLeft">&#160;</td><td class="mdescRight">The maximum clock rate of the system’s CPU or CPUs, in MHz. <br /></td></tr>
<tr class="separator:abe3f73555332843822bdecfe2e1b0f72"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac089cb96ec41ddaae77f695e778ccd4e"><td class="memItemLeft" align="right" valign="top"><a id="ac089cb96ec41ddaae77f695e778ccd4e"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structMINIDUMP__MISC__INFO__2.html#ac089cb96ec41ddaae77f695e778ccd4e">ProcessorCurrentMhz</a></td></tr>
<tr class="memdesc:ac089cb96ec41ddaae77f695e778ccd4e"><td class="mdescLeft">&#160;</td><td class="mdescRight">The clock rate of the system’s CPU or CPUs, in MHz, at the time of the snapshot. <br /></td></tr>
<tr class="separator:ac089cb96ec41ddaae77f695e778ccd4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aad78d810e9b5b5f221c3020644719170"><td class="memItemLeft" align="right" valign="top"><a id="aad78d810e9b5b5f221c3020644719170"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structMINIDUMP__MISC__INFO__2.html#aad78d810e9b5b5f221c3020644719170">ProcessorMhzLimit</a></td></tr>
<tr class="memdesc:aad78d810e9b5b5f221c3020644719170"><td class="mdescLeft">&#160;</td><td class="mdescRight">The maximum clock rate of the system’s CPU or CPUs, in MHz, reduced by any thermal limitations, at the time of the snapshot. <br /></td></tr>
<tr class="separator:aad78d810e9b5b5f221c3020644719170"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abdf9cf42282383da25e75843aeb6d57a"><td class="memItemLeft" align="right" valign="top"><a id="abdf9cf42282383da25e75843aeb6d57a"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structMINIDUMP__MISC__INFO__2.html#abdf9cf42282383da25e75843aeb6d57a">ProcessorMaxIdleState</a></td></tr>
<tr class="memdesc:abdf9cf42282383da25e75843aeb6d57a"><td class="mdescLeft">&#160;</td><td class="mdescRight">The maximum idle state of the system’s CPU or CPUs. <br /></td></tr>
<tr class="separator:abdf9cf42282383da25e75843aeb6d57a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0761af6e927eed895b7a75613fb6c6ee"><td class="memItemLeft" align="right" valign="top"><a id="a0761af6e927eed895b7a75613fb6c6ee"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structMINIDUMP__MISC__INFO__2.html#a0761af6e927eed895b7a75613fb6c6ee">ProcessorCurrentIdleState</a></td></tr>
<tr class="memdesc:a0761af6e927eed895b7a75613fb6c6ee"><td class="mdescLeft">&#160;</td><td class="mdescRight">The idle state of the system’s CPU or CPUs at the time of the snapshot. <br /></td></tr>
<tr class="separator:a0761af6e927eed895b7a75613fb6c6ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_attribs_structMINIDUMP__MISC__INFO"><td colspan="2" onclick="javascript:toggleInherit('pub_attribs_structMINIDUMP__MISC__INFO')"><img src="closed.png" alt="-"/>&#160;Public Attributes inherited from <a class="el" href="structMINIDUMP__MISC__INFO.html">MINIDUMP_MISC_INFO</a></td></tr>
<tr class="memitem:aae8fc8a4f276d8e6d51d0caa1355cd51 inherit pub_attribs_structMINIDUMP__MISC__INFO"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structMINIDUMP__MISC__INFO.html#aae8fc8a4f276d8e6d51d0caa1355cd51">SizeOfInfo</a></td></tr>
<tr class="memdesc:aae8fc8a4f276d8e6d51d0caa1355cd51 inherit pub_attribs_structMINIDUMP__MISC__INFO"><td class="mdescLeft">&#160;</td><td class="mdescRight">The size of the structure.  <a href="structMINIDUMP__MISC__INFO.html#aae8fc8a4f276d8e6d51d0caa1355cd51">More...</a><br /></td></tr>
<tr class="separator:aae8fc8a4f276d8e6d51d0caa1355cd51 inherit pub_attribs_structMINIDUMP__MISC__INFO"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac1c8ca04b2a85e2070e1b43b26d26e47 inherit pub_attribs_structMINIDUMP__MISC__INFO"><td class="memItemLeft" align="right" valign="top"><a id="ac1c8ca04b2a85e2070e1b43b26d26e47"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structMINIDUMP__MISC__INFO.html#ac1c8ca04b2a85e2070e1b43b26d26e47">Flags1</a></td></tr>
<tr class="memdesc:ac1c8ca04b2a85e2070e1b43b26d26e47 inherit pub_attribs_structMINIDUMP__MISC__INFO"><td class="mdescLeft">&#160;</td><td class="mdescRight">A bit field of <a class="el" href="dbghelp_8h.html#MINIDUMP_MISCx">MINIDUMP_MISC*</a> values indicating which fields of this structure contain valid data. <br /></td></tr>
<tr class="separator:ac1c8ca04b2a85e2070e1b43b26d26e47 inherit pub_attribs_structMINIDUMP__MISC__INFO"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6f4a981f916984b74c6ad7d308915e4f inherit pub_attribs_structMINIDUMP__MISC__INFO"><td class="memItemLeft" align="right" valign="top"><a id="a6f4a981f916984b74c6ad7d308915e4f"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structMINIDUMP__MISC__INFO.html#a6f4a981f916984b74c6ad7d308915e4f">ProcessId</a></td></tr>
<tr class="memdesc:a6f4a981f916984b74c6ad7d308915e4f inherit pub_attribs_structMINIDUMP__MISC__INFO"><td class="mdescLeft">&#160;</td><td class="mdescRight">The process ID of the process. <br /></td></tr>
<tr class="separator:a6f4a981f916984b74c6ad7d308915e4f inherit pub_attribs_structMINIDUMP__MISC__INFO"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a13779264ab943d939c2635717cd3f46c inherit pub_attribs_structMINIDUMP__MISC__INFO"><td class="memItemLeft" align="right" valign="top"><a id="a13779264ab943d939c2635717cd3f46c"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structMINIDUMP__MISC__INFO.html#a13779264ab943d939c2635717cd3f46c">ProcessCreateTime</a></td></tr>
<tr class="memdesc:a13779264ab943d939c2635717cd3f46c inherit pub_attribs_structMINIDUMP__MISC__INFO"><td class="mdescLeft">&#160;</td><td class="mdescRight">The time that the process started, in <code>time_t</code> units, seconds since the POSIX epoch. <br /></td></tr>
<tr class="separator:a13779264ab943d939c2635717cd3f46c inherit pub_attribs_structMINIDUMP__MISC__INFO"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab9e246388e6414c14edaf23873cfb8e7 inherit pub_attribs_structMINIDUMP__MISC__INFO"><td class="memItemLeft" align="right" valign="top"><a id="ab9e246388e6414c14edaf23873cfb8e7"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structMINIDUMP__MISC__INFO.html#ab9e246388e6414c14edaf23873cfb8e7">ProcessUserTime</a></td></tr>
<tr class="memdesc:ab9e246388e6414c14edaf23873cfb8e7 inherit pub_attribs_structMINIDUMP__MISC__INFO"><td class="mdescLeft">&#160;</td><td class="mdescRight">The amount of user-mode CPU time used by the process, in seconds, at the time of the snapshot. <br /></td></tr>
<tr class="separator:ab9e246388e6414c14edaf23873cfb8e7 inherit pub_attribs_structMINIDUMP__MISC__INFO"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1a1a98c7fde6ef85db1c1462047b59d0 inherit pub_attribs_structMINIDUMP__MISC__INFO"><td class="memItemLeft" align="right" valign="top"><a id="a1a1a98c7fde6ef85db1c1462047b59d0"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structMINIDUMP__MISC__INFO.html#a1a1a98c7fde6ef85db1c1462047b59d0">ProcessKernelTime</a></td></tr>
<tr class="memdesc:a1a1a98c7fde6ef85db1c1462047b59d0 inherit pub_attribs_structMINIDUMP__MISC__INFO"><td class="mdescLeft">&#160;</td><td class="mdescRight">The amount of system-mode (kernel) CPU time used by the process, in seconds, at the time of the snapshot. <br /></td></tr>
<tr class="separator:a1a1a98c7fde6ef85db1c1462047b59d0 inherit pub_attribs_structMINIDUMP__MISC__INFO"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Information about the process that the minidump file contains a snapshot of, as well as the system that hosted that process. </p>
<p>This structure variant is used on Windows Vista (NT 6.0) and later.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="dbghelp_8h.html#MINIDUMP_MISCx">MINIDUMP_MISC*</a> </dd>
<dd>
<a class="el" href="structMINIDUMP__MISC__INFO.html" title="Information about the process that the minidump file contains a snapshot of, as well as the system th...">MINIDUMP_MISC_INFO</a> </dd>
<dd>
<a class="el" href="structMINIDUMP__MISC__INFO__3.html" title="Information about the process that the minidump file contains a snapshot of, as well as the system th...">MINIDUMP_MISC_INFO_3</a> </dd>
<dd>
<a class="el" href="structMINIDUMP__MISC__INFO__4.html" title="Information about the process that the minidump file contains a snapshot of, as well as the system th...">MINIDUMP_MISC_INFO_4</a> </dd>
<dd>
<a class="el" href="structMINIDUMP__MISC__INFO__5.html" title="Information about the process that the minidump file contains a snapshot of, as well as the system th...">MINIDUMP_MISC_INFO_5</a> </dd>
<dd>
<a class="el" href="dbghelp_8h.html#acfc1d366cfe597920b92c93bdffec284" title="The latest known version of the MINIDUMP_MISC_INFO structure.">MINIDUMP_MISC_INFO_N</a> </dd></dl>
</div><hr/>The documentation for this struct was generated from the following file:<ul>
<li>compat/non_win/<a class="el" href="dbghelp_8h.html">dbghelp.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.18
</small></address>
</body>
</html>
