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.

Definition at line 82 of file nutinit.c.

Definition at line 91 of file osdebug.c.

Referenced by NutThreadCreate(), and NutTraceOs().

Definition at line 92 of file osdebug.c.

Referenced by NutThreadCreate(), and NutTraceOs().


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