Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

eballoc.c

Go to the documentation of this file.
00001 /*++ 00002 00003 Copyright (c) 1990 Microsoft Corporation 00004 00005 Module Name: 00006 00007 eballoc.c 00008 00009 Abstract: 00010 00011 Process/Thread Environment Block allocation functions 00012 00013 Author: 00014 00015 Steve Wood (stevewo) 10-May-1990 00016 00017 Revision History: 00018 00019 --*/ 00020 00021 #include "ntrtlp.h" 00022 #include <nturtl.h> 00023 00024 #if defined(ALLOC_PRAGMA) && defined(NTOS_KERNEL_RUNTIME) 00025 #pragma alloc_text(PAGE,RtlAcquirePebLock) 00026 #pragma alloc_text(PAGE,RtlReleasePebLock) 00027 #endif 00028 00029 typedef VOID (*PEB_LOCK_ROUTINE)(PVOID FastLock); 00030 00031 VOID 00032 RtlAcquirePebLock( VOID ) 00033 { 00034 PEB_LOCK_ROUTINE LockRoutine; 00035 PPEB Peb; 00036 00037 RTL_PAGED_CODE(); 00038 00039 Peb = NtCurrentPeb(); 00040 00041 LockRoutine = (PEB_LOCK_ROUTINE)Peb->FastPebLockRoutine; 00042 ASSERT(LockRoutine); 00043 (LockRoutine)(Peb->FastPebLock); 00044 } 00045 00046 VOID 00047 RtlReleasePebLock( VOID ) 00048 { 00049 PEB_LOCK_ROUTINE LockRoutine; 00050 PPEB Peb; 00051 00052 RTL_PAGED_CODE(); 00053 00054 Peb = NtCurrentPeb(); 00055 00056 LockRoutine = (PEB_LOCK_ROUTINE)Peb->FastPebUnlockRoutine; 00057 ASSERT(LockRoutine); 00058 (LockRoutine)(Peb->FastPebLock); 00059 }

Generated on Sat May 15 19:39:47 2004 for test by doxygen 1.3.7