01.06.2013 Views

IPC@CHIP Documentation - SC12 @CHIP-RTOS V1.10

IPC@CHIP Documentation - SC12 @CHIP-RTOS V1.10

IPC@CHIP Documentation - SC12 @CHIP-RTOS V1.10

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Semaphore Protection<br />

Interrupt Masking<br />

<strong>RTOS</strong> Task Switch Lock<br />

Critical Section Protection Methods Summary<br />

CONTROL AND COMMUNICATION BETWEEN TASKS<br />

<strong>IPC<strong>@CHIP</strong></strong> <strong>Documentation</strong> Index<br />

Multitasking Introduction<br />

The @Chip-<strong>RTOS</strong> provides for a multitasking operation. A task provides a thread of execution. Each task has its<br />

own context, including an instruction pointer and program stack. Each task in the @Chip-<strong>RTOS</strong> has a unique<br />

priority of execution, providing a preemptive form of multitasking. By executing multiple tasks at the same time,<br />

various activities can be performed concurrently.<br />

Abbreviations Used<br />

Acronym Stands For<br />

API Application Programmers Interface<br />

ISR Interrupt Service Routine<br />

RTI Real-Time Interrupt<br />

<strong>RTOS</strong> Real-Time Operating System<br />

TCP/IP Transport Control Protocol / Internet Protocol<br />

Table 1 ) Abbreviations<br />

Reasons for using Multitasking<br />

Here are some situations where multitasking can be helpful.<br />

Different Priority Work<br />

Probably the most compelling reason for using multitasking is when required activities have different<br />

priorities. For example, an application with a user interface may need to be responsive to keyboard<br />

entry from a user console while at the same time the program is conducting a time consuming<br />

calculation or data base search. A low priority task could perform the calculation/data base search<br />

while a high priority task periodically polls (or sleeps waiting) for keyboard input. Typically there would<br />

be some communication between these two tasks, such as having the keyboard task cancel the<br />

Page 220 / 400

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!