<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://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"/>
<title>RTOS Validation</title>
<title>CMSIS-RTOS: RTOS Validation</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="cmsis.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="printComponentTabs.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="stylsheetf" 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: 46px;">
  <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
  <td style="padding-left: 0.5em;">
   <div id="projectname">CMSIS-RTOS
   &#160;<span id="projectnumber">Version 1.02</span>
   </div>
   <div id="projectbrief">CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<div id="CMSISnav" class="tabs1">
    <ul class="tablist">
      <script type="text/javascript">
		<!--
		writeComponentTabs.call(this);
		//-->
      </script>
	  </ul>
</div>
<!-- Generated by Doxygen 1.8.2 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li class="current"><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
      <li><a href="modules.html"><span>Reference</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('_rtos_validation.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="headertitle">
<div class="title">RTOS Validation </div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><p>ARM offers a <a href="http://www.keil.com/pack" class="el" target="_blank">Software Pack</a> for the CMSIS-RTOS Validation. The <b>ARM::CMSIS-RTOS_Validation</b> Pack contains the following:</p>
<ul>
<li>Source code of a CMSIS-RTOS Validation Suite along with configuration file.</li>
<li>Documentation of the CMSIS-RTOS Validation Suite.</li>
<li>Example that shows the usage of the CMSIS-RTOS Validation Suite using simulation.</li>
</ul>
<p>The CMSIS-RTOS Validation Suite is currently available in beta release and performs generic validation of various RTOS features. The test cases verify the functional behaviour, test invalid parameters and call management functions from ISR.</p>
<p>The following CMSIS-RTOS features can be tested with the current release:</p>
<ul>
<li>Thread : Create multiple threads, terminate, restart, yield, change priority</li>
<li>Timer : Create periodic and one-shot timers</li>
<li>GenWait : Call generic wait functions (osDelay and osWait)</li>
<li>WaitFunc : Measure wait ticks (delay, mail, message, mutex, semaphore, signal)</li>
</ul>
<p>Moreover the following inter-thread communication functions can be tested:</p>
<ul>
<li>Signal : Verify signal events</li>
<li>Memory Pool : Verify memory allocation</li>
<li>Message Queue : Exchange messages between threads</li>
<li>Mail Queue : Exchange data between threads</li>
<li>Mutex : Synchronize resource access</li>
<li>Semaphore : Access shared resources</li>
</ul>
<p>The RTOS Validation output can be printed to a console, output via ITM printf, or output to a memory buffer.</p>
<h1><a class="anchor" id="test_output"></a>
Sample Test Output</h1>
<pre class="fragment">CMSIS-RTOS Test Suite   Oct 21 2015   16:39:16 

TEST 01: TC_ThreadCreate                  PASSED
TEST 02: TC_ThreadMultiInstance           PASSED
TEST 03: TC_ThreadTerminate               PASSED
  :
  :
TEST 08: TC_ThreadChainedCreate           PASSED
TEST 09: TC_ThreadYield                   NOT EXECUTED
TEST 10: TC_ThreadParam                   PASSED
  :
  :
TEST 60: TC_MailFromISRToThread           PASSED

Test Summary: 60 Tests, 59 Executed, 59 Passed, 0 Failed, 0 Warnings.
Test Result: PASSED
</pre> </div></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="footer">Generated on Tue Oct 27 2015 14:35:43 for CMSIS-RTOS by ARM Ltd. All rights reserved.
	<!--
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2 
	-->
	</li>
  </ul>
</div>
</body>
</html>
