|
DataMuseum.dkPresents historical artifacts from the history of: Regnecentalen RC-900 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Regnecentalen RC-900 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 2541 (0x9ed) Types: TextFile Notes: UNIX file Names: »sysmacros.h«
└─⟦a6ab2eb36⟧ Bits:30004042/kconfig3.imd SW95705I 386/ix Multi-user Release 1.2 └─⟦a6ab2eb36⟧ UNIX Filesystem └─⟦this⟧ »kc/new/usr/include/sys/sysmacros.h«
/* Copyright (c) 1984 AT&T */ /* All Rights Reserved */ /* THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF AT&T */ /* The copyright notice above does not evidence any */ /* actual or intended publication of such source code. */ #ident "@(#)sysmacros.h 1.4" /* * Some macros for units conversion */ /* Core clicks to page tables and vice versa */ /* This is still called ctos, etc to avoid large scale * changes in the code. "Segment" here means the * memory spanned by a page table. */ #define ctos(x) (((x) + (NCPPT-1)) / NCPPT) #define ctost(x) ((x) / NCPPT) #define stoc(x) ((x) * NCPPT) /* Core clicks to disk blocks */ #define ctod(x) ((x)*NDPC) /* inumber to disk address */ #ifdef INOSHIFT #define itod(x) (daddr_t)(((unsigned)(x)+(2*INOPB-1))>>INOSHIFT) #else #define itod(x) (daddr_t)(((unsigned)(x)+(2*INOPB-1))/INOPB) #endif /* inumber to disk offset */ #ifdef INOSHIFT #define itoo(x) (int)(((unsigned)(x)+(2*INOPB-1))&(INOPB-1)) #else #define itoo(x) (int)(((unsigned)(x)+(2*INOPB-1))%INOPB) #endif /* clicks to bytes */ #ifdef BPCSHIFT #define ctob(x) ((x)<<BPCSHIFT) #else #define ctob(x) ((x)*NBPC) #endif /* bytes to clicks */ #ifdef BPCSHIFT #define btoc(x) (((unsigned)(x)+(NBPC-1))>>BPCSHIFT) #define btoct(x) ((unsigned)(x)>>BPCSHIFT) #else #define btoc(x) (((unsigned)(x)+(NBPC-1))/NBPC) #define btoct(x) ((unsigned)(x)/NBPC) #endif #if INKERNEL && u3b2 /* major part of a device internal to the kernel */ extern char MAJOR[128]; #define major(x) (int)(MAJOR[(unsigned)((x)>>8)&0x7F]) #define bmajor(x) (int)(MAJOR[(unsigned)((x)>>8)&0x7F]) /* minor part of a device internal to the kernel */ extern char MINOR[128]; #define minor(x) (int)(MINOR[(unsigned)((x)>>8)&0x7F]+((x)&0xFF)) #else /* major part of a device external from the kernel */ #define major(x) (int)((unsigned)((x)>>8)&0x7F) #define bmajor(x) (int)((unsigned)((x)>>8)&0x7F) /* minor part of a device external from the kernel */ #define minor(x) (int)(x&0xFF) #endif /* INKERNEL && u3b2 */ /* make a device number */ #define makedev(x,y) (dev_t)(((x)<<8) | (y)) /* * emajor() allows kernel/driver code to print external major numbers * eminor() allows kernel/driver code to print external minor numbers */ #define emajor(x) (int)(((unsigned)(x)>>8)&0x7F) #define eminor(x) (int)((x)&0xFF) /* Calculate user process priority. */ #define calcppri(p) ((p->p_cpu) >> 1) + p->p_nice + (PUSER - NZERO) /* * Evaluate to true if the process is a server - Distributed UNIX */ #define server() (u.u_procp->p_sysid != 0)