Merging NList MCC 0.119 into the main branch.
[AROS.git] / arch / all-unix / kernel / kernel_unix.h
blobce4e9e22a5310a828142d581d3927bd23cb3afe4
1 /* Things declared here do not depend on host OS includes */
3 struct HostInterface;
5 extern unsigned int SupervisorCount;
6 extern struct HostInterface *HostIFace;
8 unsigned int krnGetPageSize(void *libc);
9 int core_Start(void *libc);
11 /* Our own add-ons to KernelBase */
12 struct UnixKernelBase
14 struct KernelBase kb;
15 unsigned int SupervisorCount;
18 #define UKB(base) ((struct UnixKernelBase *)base)
20 #ifdef AROS_NO_ATOMIC_OPERATIONS
22 #define SUPERVISOR_ENTER UKB(KernelBase)->SupervisorCount++
23 #define SUPERVISOR_LEAVE UKB(KernelBase)->SupervisorCount--
25 #else
27 #define SUPERVISOR_ENTER AROS_ATOMIC_INC(UKB(KernelBase)->SupervisorCount)
28 #define SUPERVISOR_LEAVE AROS_ATOMIC_DEC(UKB(KernelBase)->SupervisorCount)
30 #endif