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.

period should still be keep to some reasonable small amount of time. Note that task locks also inhibit<br />

all system timer activity.<br />

Critical Section Protection Methods Summary<br />

The design trade-offs for the three methods presented above for protecting critical sections are<br />

summarized in Table 3.<br />

Method Advantage Limitations<br />

Semaphore A long duration of critical section<br />

does not adversely affect portions of<br />

system not accessing the<br />

semaphore.<br />

Interrupt Mask Most efficient of all three methods.<br />

(Executes quickly!)<br />

No priority inversion<br />

Can result in a priority inversion.<br />

Impact on system operation becomes<br />

a concern if interrupt mask time can<br />

exceed around 50 us.<br />

Task Lock No priority inversion. Impact on system operation becomes<br />

questionable if task lock duration<br />

exceeds around 400 us.<br />

Table 3 ) Critical Section Protection Methods<br />

Top of this document<br />

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

Control and Communication between Tasks<br />

The @Chip-<strong>RTOS</strong> provides the following mechanisms for tasks to control one another and to communicate.<br />

These interactions can either be between tasks within the same DOS application, or across applications.<br />

● Semaphores<br />

● Event Groups<br />

● Message Exchanges<br />

The usage of these @Chip-<strong>RTOS</strong> resources is covered in depth within the on-line HTML help.<br />

Top of this document<br />

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

Page 230 / 400

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

Saved successfully!

Ooh no, something went wrong!