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

include/sys/critsec.h File Reference

Interface: kernel level critical sections. More...

#include <config.h>
#include "../critsec.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()   locked_increment(&kernel_critsec_count)
#define LEAVE_KERNEL_CRITICAL_SECTION()   locked_decrement(&kernel_critsec_count)
#define DESTROY_KERNEL_CRITICAL_SECTION()

Functions

int locked_increment (unsigned char *count)
int locked_decrement (unsigned char *count)

Variables

unsigned char 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 45 of file critsec.h.

 
#define ENTER_KERNEL_CRITICAL_SECTION  )     locked_increment(&kernel_critsec_count)
 

Definition at line 43 of file critsec.h.

 
#define INITIALIZE_KERNEL_CRITICAL_SECTION  )     kernel_critsec_count=0
 

Definition at line 42 of file critsec.h.

 
#define LEAVE_KERNEL_CRITICAL_SECTION  )     locked_decrement(&kernel_critsec_count)
 

Definition at line 44 of file critsec.h.


Function Documentation

int locked_decrement unsigned char *  count  ) 
 

int locked_increment unsigned char *  count  ) 
 


Variable Documentation

unsigned char 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 Sat Jul 26 23:58:43 2003 for brickOS Kernel Developer by doxygen 1.3.2