atom.h File Reference

Go to the source code of this file.

Defines

#define AtomicInc(p)   (++(*p))
#define AtomicDec(p)   (--(*p))
#define NutEnterCritical()
#define NutExitCritical()
#define NutJumpOutCritical()   NutExitCritical()

Variables

uint16_t main_cs_level
sigset_t irq_signal
pthread_cond_t irq_cv
uint16_t int_disabled
FILE__os_trs
uint8_t __os_trf


Define Documentation

#define AtomicInc (  )     (++(*p))

Definition at line 75 of file atom.h.

#define AtomicDec (  )     (--(*p))

Definition at line 76 of file atom.h.

#define NutEnterCritical ( void   ) 

Value:

pthread_sigmask(SIG_BLOCK, &irq_signal, 0);         \
    int_disabled = 1;                                   \
    if (runningThread) {                                \
        runningThread->td_cs_level++;                   \
    } else {                                            \
        main_cs_level++;                                \
    }                                                   \
    pthread_sigmask(SIG_UNBLOCK, &irq_signal, 0);

Definition at line 86 of file atom.h.

#define NutExitCritical ( void   ) 

Value:

pthread_sigmask(SIG_BLOCK, &irq_signal, 0);         \
    if (runningThread) {                                \
        if (--runningThread->td_cs_level == 0) {        \
            int_disabled = 0;                           \
            pthread_cond_signal(&irq_cv);               \
        }                                               \
    } else {                                            \
        if (--main_cs_level == 0) {                     \
            int_disabled = 0;                           \
            pthread_cond_signal(&irq_cv);               \
        }                                               \
    }                                                   \
    pthread_sigmask(SIG_UNBLOCK, &irq_signal, 0);

Definition at line 97 of file atom.h.

 
#define NutJumpOutCritical (  )     NutExitCritical()

Definition at line 146 of file atom.h.


Variable Documentation

sigset_t irq_signal

Definition at line 79 of file nutinit.c.

Referenced by NutThreadCreate(), and NutTimerEmulation().

pthread_cond_t irq_cv

Definition at line 98 of file nutinit.c.

uint16_t int_disabled

Definition at line 82 of file nutinit.c.

FILE* __os_trs

Definition at line 91 of file osdebug.c.

Referenced by NutThreadCreate(), and NutTraceOs().

uint8_t __os_trf

Definition at line 92 of file osdebug.c.

Referenced by NutThreadCreate(), and NutTraceOs().


© 2000-2007 by egnite Software GmbH - visit http://www.ethernut.de/