1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2<html xml:lang="en-US" lang="en-US" xmlns="http://www.w3.org/1999/xhtml"> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 5 <meta http-equiv="Content-Style-Type" content="text/css" /> 6 <link rel="stylesheet" href="../../css/manpage.css" type="text/css" /> 7 <style type="text/css"><!-- 8 span.static_style 9 { 10 font-size : 8pt; 11 color : white; 12 font-weight : bold; 13 background : #44f; 14 border-left : solid 1px #aaf; 15 border-top : solid 1px #aaf; 16 border-right : solid 1px #00c; 17 border-bottom : solid 1px #00c; 18 padding-left : 2px; 19 padding-right : 2px; 20 } 21 22 span.virtual_style 23 { 24 font-size : 8pt; 25 color : white; 26 font-weight : bold; 27 background : #0a0; 28 border-left : solid 1px #0f0; 29 border-top : solid 1px #0f0; 30 border-right : solid 1px #060; 31 border-bottom : solid 1px #060; 32 padding-left : 2px; 33 padding-right : 2px; 34 } 35 36 span.protected_style 37 { 38 font-size : 8pt; 39 color : white; 40 font-weight : bold; 41 background : #444; 42 border-left : solid 1px #ccc; 43 border-top : solid 1px #ccc; 44 border-right : solid 1px #222; 45 border-bottom : solid 1px #222; 46 padding-left : 2px; 47 padding-right : 2px; 48 } 49 --></style> 50<title>nn::os</title> 51 </head> 52 <body> 53<h1>nn::os Namespace</h1> 54<h2>Description</h2> 55 <div class="section"> 56<p>Namespace for the operating system API.</p><!-- write here --></div> 57 <a name="namespace" id="namespace"> 58<h2>Namespaces</h2> 59 <div class="section"> 60 <table class="members"> 61 <tr> 62 <th> 63<a href="../../nn/os/ARM/Overview.html">nn::os::ARM</a> 64 </th> 65<td>Namespace for functions specific to the ARM processor (the <CODE>::ARM</CODE> portion may be omitted).</td> 66 </tr> 67 <tr> 68 <th> 69<a href="../../nn/os/CTR/Overview.html">nn::os::CTR</a> 70 </th> 71<td>Namespace for functions specific to the CTR platform (the <CODE>::CTR</CODE> portion can be omitted).</td> 72 </tr> 73 </table> 74 </div> 75 </a> <a name="class" id="class"> 76<h2>Classes</h2> 77 <div class="section"> 78 <table class="members"> 79 <tr> 80 <th> 81<a href="../../nn/os/Alarm/Overview.html"><CODE>nn::os::Alarm</CODE></a> 82 </th> 83<td>Class for handling alarms.</td> 84 </tr> 85 <tr> 86 <th> 87<a href="../../nn/os/BlockingQueue/Overview.html"><CODE>nn::os::BlockingQueue</CODE></a> 88 </th> 89<td>Class for handling blocking queues.</td> 90 </tr> 91 <tr> 92 <th> 93<a href="../../nn/os/SafeBlockingQueue/Overview.html"><CODE>nn::os::SafeBlockingQueue</CODE></a> 94 </th> 95<td>Class for handling blocking queues.</td> 96 </tr> 97 <tr> 98 <th> 99<a href="../../nn/os/CriticalSection/Overview.html"><CODE>nn::os::CriticalSection</CODE></a> 100 </th> 101<td>Class for handling critical sections. Critical sections are synchronization objects used for providing mutual exclusion.</td> 102 </tr> 103 <tr> 104 <th> 105<a href="../../nn/os/EventBase/Overview.html"><CODE>nn::os::EventBase</CODE></a> 106 </th> 107<td>Class that is used internally by the library. Do not use this class directly.</td> 108 </tr> 109 <tr> 110 <th> 111<a href="../../nn/os/Event/Overview.html"><CODE>nn::os::Event</CODE></a> 112 </th> 113<td>Class for handling events. Events are synchronization objects that send notification that an event has occurred.</td> 114 </tr> 115 <tr> 116 <th> 117<a href="../../nn/os/HandleObject/Overview.html"><CODE>nn::os::HandleObject</CODE></a> 118 </th> 119<td>Abstract base class that represents an object managed by the OS.</td> 120 </tr> 121 <tr> 122 <th> 123<a href="../../nn/os/LightBarrier/Overview.html"><CODE>nn::os::LightBarrier</CODE></a> 124 </th> 125<td>Synchronization mechanism that waits for the arrival of multiple threads.</td> 126 </tr> 127 <tr> 128 <th> 129<a href="../../nn/os/LightEvent/Overview.html"><CODE>nn::os::LightEvent</CODE></a> 130 </th> 131<td>Synchronization mechanism for communicating flags between threads.</td> 132 </tr> 133 <tr> 134 <th> 135<a href="../../nn/os/LightSemaphore/Overview.html"><CODE>nn::os::LightSemaphore</CODE></a> 136 </th> 137<td>Synchronization mechanism for mutual exclusion of the number of resources between threads.</td> 138 </tr> 139 <tr> 140 <th> 141<a href="../../nn/os/MemoryBlock/Overview.html"><CODE>nn::os::MemoryBlock</CODE></a> 142 </th> 143<td>Class allocating memory from the specified region in the heap.</td> 144 </tr> 145 <tr> 146 <th> 147<a href="../../nn/os/MemoryBlockBase/Overview.html"><CODE>nn::os::MemoryBlockBase</CODE></a> 148 </th> 149<td>Base class for classes handling contiguous memory regions.</td> 150 </tr> 151 <tr> 152 <th> 153<a href="../../nn/os/Mutex/Overview.html"><CODE>nn::os::Mutex</CODE></a> 154 </th> 155<td>Class for handling mutexes. Mutexes are synchronization objects used for providing mutual exclusion.</td> 156 </tr> 157 <tr> 158 <th> 159<a href="../../nn/os/Semaphore/Overview.html"><CODE>nn::os::Semaphore</CODE></a> 160 </th> 161<td>Class for handling semaphores. Semaphores are synchronization objects that have counters.</td> 162 </tr> 163 <tr> 164 <th> 165<a href="../../nn/os/StackMemory/Overview.html"><CODE>nn::os::StackMemory</CODE></a> 166 </th> 167<td>Class that partitions a specified memory region for use as a stack.</td> 168 </tr> 169 <tr> 170 <th> 171<a href="../../nn/os/StackMemoryBlock/Overview.html"><CODE>nn::os::StackMemoryBlock</CODE></a> 172 </th> 173<td>Class allocating stack memory from the heap in the specified region.</td> 174 </tr> 175 <tr> 176 <th> 177<a href="../../nn/os/WaitObject/Overview.html"><CODE>nn::os::WaitObject</CODE></a> 178 </th> 179<td>Base class for objects that are able to wait.</td> 180 </tr> 181 <tr> 182 <th> 183<a href="../../nn/os/InterruptEvent/Overview.html"><CODE>nn::os::InterruptEvent</CODE></a> 184 </th> 185<td>Abstract class used internally by the library. Do not use it directly.</td> 186 </tr> 187 <tr> 188 <th> 189<a href="../../nn/os/Thread/Overview.html"><CODE>nn::os::Thread</CODE></a> 190 </th> 191<td>Class for representing threads.</td> 192 </tr> 193 <tr> 194 <th> 195<a href="../../nn/os/StackBuffer/Overview.html"><CODE>nn::os::StackBuffer</CODE></a> 196 </th> 197<td>Class template used for placing the thread stack in locations such as within a static region or a structure.</td> 198 </tr> 199 <tr> 200 <th> 201<a href="../../nn/os/ThreadLocalStorage/Overview.html"><CODE>nn::os::ThreadLocalStorage</CODE></a> 202 </th> 203<td>Class that represents thread-local storage with the same size as the <CODE>uptr</CODE> type.</td> 204 </tr> 205 <tr> 206 <th> 207<a href="../../nn/os/Tick/Overview.html"><CODE>nn::os::Tick</CODE></a> 208 </th> 209<td>Class for handling system ticks.</td> 210 </tr> 211 <tr> 212 <th> 213<a href="../../nn/os/Timer/Overview.html"><CODE>nn::os::Timer</CODE></a> 214 </th> 215<td>Class for representing timers.</td> 216 </tr> 217 </table> 218 </div> 219 </a> <a name="struct" id="struct"> 220<h2>Structures</h2> 221 <div class="section"> 222 <table class="members"> 223 <tr> 224 <th> 225<a href="../../nn/os/LockPolicy/Overview.html"><CODE>nn::os::LockPolicy</CODE></a> 226 </th> 227<td>Container class used for operations related to lock policies.</td> 228 </tr> 229 </table> 230 </div> 231 </a> <a name="typedef" id="typedef"> 232<h2><CODE>typedef</CODE> Definitions</h2> 233 <div class="section"> 234 <table class="members"> 235 <tr> 236 <td width="100" /> 237 <th> 238<a href="../../nn/os/AlarmHandler.html"><CODE>AlarmHandler</CODE></a> 239 </th> 240<td>Type representing handlers that are run for alarms.</td> 241 </tr> </table> 242 </div> 243 </a> <a name="constant" id="constant"> 244<h2>Constants</h2> 245 <div class="section"> 246 <table class="members"> 247 <tr> 248 <td width="100"> </td> 249 <th> 250<span class="argument"><a href="./NN_ATTRIBUTE_DEPRECATED.html"><CODE>NN_ATTRIBUTE_DEPRECATED</CODE></a></span> 251 </th> 252<td>This constant will be eliminated in the future.</td> 253 </tr> 254 <tr> 255 <td width="100"> </td> 256 <th> 257<span class="argument"><a href="./ALLOCATE_OPTION_LINEAR.html"><CODE>ALLOCATE_OPTION_LINEAR</CODE></a></span> 258 </th> 259<td>Option passed to the <CODE>AllocateMemoryBlock</CODE> function. This allocates a contiguous block of physical memory.</td> 260 </tr> 261 <tr> 262 <td width="100"> </td> 263 <th> 264<span class="argument"><a href="./WAIT_INFINITE.html"><CODE>WAIT_INFINITE</CODE></a></span> 265 </th> 266<td>Used by APPLET library functions that specify a time. This means that a function will continue running until a result is obtained.</td> 267 </tr> </table> 268 </div> 269 </a> <a name="function" id="function"> 270<h2>Functions</h2> 271 <div class="section"> 272 <table class="members"> 273 <tr> 274 <td width="100"> </td> 275 <th> 276<a href="../../nn/os/InitializeAlarmSystem.html"><CODE>InitializeAlarmSystem</CODE></a> 277 </th> 278<td>Initializes the alarm system.</td> 279 </tr> 280 <tr> 281 <td width="100"> </td> 282 <th> 283<a href="../../nn/os/GetAppMemorySize.html">GetAppMemorySize</a> 284 </th> 285<td>Gets the maximum total amount of memory that the application can use.</td> 286 </tr> 287 <tr> 288 <td width="100"> </td> 289 <th> 290<a href="../../nn/os/GetUsingMemorySize.html">GetUsingMemorySize</a> 291 </th> 292<td>Gets the total size of memory currently allocated to the program.</td> 293 </tr> 294 <tr> 295 <td width="100"> </td> 296 <th> 297<a href="../../nn/os/InitializeDeviceMemory.html"><CODE>InitializeDeviceMemory</CODE></a> 298 </th> 299<td>This function will be eliminated in the future.</td> 300 </tr> 301 <tr> 302 <td width="100"> </td> 303 <th> 304<a href="../../nn/os/SetupHeapForMemoryBlock.html"><CODE>SetupHeapForMemoryBlock</CODE></a> 305 </th> 306<td>This function sets up the OS to emulate the same memory environment that was used in CTR-SDK 0.9 and prior versions.</td> 307 </tr> 308 <tr> 309 <td width="100"> </td> 310 <th> 311<a href="../../nn/os/GetDeviceMemoryAddress.html"><CODE>GetDeviceMemoryAddress</CODE></a> 312 </th> 313<td>Gets the starting address of the device memory.</td> 314 </tr> 315 <tr> 316 <td width="100"> </td> 317 <th> 318<a href="../../nn/os/SetDeviceMemorySize.html"><CODE>SetDeviceMemorySize</CODE></a> 319 </th> 320<td>Changes the size of the device memory.</td> 321 </tr> 322 <tr> 323 <td width="100"> </td> 324 <th> 325<a href="../../nn/os/GetDeviceMemorySize.html"><CODE>GetDeviceMemorySize</CODE></a> 326 </th> 327<td>Gets the size of the device memory.</td> 328 </tr> 329 <tr> 330 <td width="100"> </td> 331 <th> 332<a href="../../nn/os/GetHeapAddress.html"><CODE>GetHeapAddress</CODE></a> 333 </th> 334<td>Gets the starting address of the heap.</td> 335 </tr> 336 <tr> 337 <td width="100"> </td> 338 <th> 339<a href="../../nn/os/SetHeapSize.html"><CODE>SetHeapSize</CODE></a> 340 </th> 341<td>Changes the size of the heap.</td> 342 </tr> 343 <tr> 344 <td width="100"> </td> 345 <th> 346<a href="../../nn/os/GetHeapSize.html"><CODE>GetHeapSize</CODE></a> 347 </th> 348<td>Gets the size of the heap.</td> 349 </tr> 350 <tr> 351 <td width="100"> </td> 352 <th> 353<a href="../../nn/os/InitializeMemoryBlock.html"><CODE>InitializeMemoryBlock</CODE></a> 354 </th> 355<td>Allows use of the <a href="../../nn/os/MemoryBlock/Overview.html"><CODE>MemoryBlock</CODE></a> and <a href="../../nn/os/StackMemoryBlock/Overview.html"><CODE>StackMemoryBlock</CODE></a> classes.</td> 356 </tr> </table> 357 </div> 358 </a> 359<h2>Revision History</h2> 360 <div class="section"> 361 <dl class="history"> 362 <dt>2010/01/07</dt> 363<dd>Initial version.<br /> 364 </dd> 365 </dl> 366 </div> 367 <hr><p>CONFIDENTIAL</p></body> 368</html>