Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

include/sys/critsec.h File Reference

Interface: kernel level critical sections. More...

#include <config.h>
#include <atomic.h>

Include dependency graph for critsec.h:

Include dependency graph

This graph shows which files directly or indirectly include this file:

Included by dependency graph

Go to the source code of this file.

Defines

#define __sys_critsec_h__
#define INITIALIZE_KERNEL_CRITICAL_SECTION()   kernel_critsec_count=0
#define ENTER_KERNEL_CRITICAL_SECTION()   atomic_inc(&kernel_critsec_count)
#define LEAVE_KERNEL_CRITICAL_SECTION()   atomic_dec(&kernel_critsec_count)
#define DESTROY_KERNEL_CRITICAL_SECTION()

Variables

atomic_t kernel_critsec_count
 critical section counter for kernel/task manager


Detailed Description

Interface: kernel level critical sections.

Author:
Joseph A. Woolley <jawoolley@users.sourceforge.net>
Defines types and functions used for kernel level critical sections.

Definition in file critsec.h.


Define Documentation

#define __sys_critsec_h__
 

Definition at line 29 of file critsec.h.

 
#define DESTROY_KERNEL_CRITICAL_SECTION  ) 
 

Definition at line 43 of file critsec.h.

 
#define ENTER_KERNEL_CRITICAL_SECTION  )     atomic_inc(&kernel_critsec_count)
 

Definition at line 41 of file critsec.h.

 
#define INITIALIZE_KERNEL_CRITICAL_SECTION  )     kernel_critsec_count=0
 

Definition at line 40 of file critsec.h.

 
#define LEAVE_KERNEL_CRITICAL_SECTION  )     atomic_dec(&kernel_critsec_count)
 

Definition at line 42 of file critsec.h.


Variable Documentation

atomic_t kernel_critsec_count
 

critical section counter for kernel/task manager

when the critical section counter is Zero, task swapping is allowed. when greater than zero, task swapping is not allowed.

Definition at line 39 of file critsec.h.


brickOS is released under the Mozilla Public License.
Original code copyright 1998-2002 by the authors.

Generated on Mon Feb 16 21:02:17 2004 for brickOS Kernel Developer by doxygen 1.3.5