home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / ddkx86v1.zip / DDKX86 / IBMH / BSETIB.H < prev    next >
C/C++ Source or Header  |  1995-04-14  |  4KB  |  97 lines

  1. /*DDK*************************************************************************/
  2. /*                                                                           */
  3. /* COPYRIGHT (C) Microsoft Corporation, 1989                                 */
  4. /* COPYRIGHT    Copyright (C) 1995 IBM Corporation                           */
  5. /*                                                                           */
  6. /*    The following IBM OS/2 WARP source code is provided to you solely for  */
  7. /*    the purpose of assisting you in your development of OS/2 WARP device   */
  8. /*    drivers. You may use this code in accordance with the IBM License      */
  9. /*    Agreement provided in the IBM Device Driver Source Kit for OS/2. This  */
  10. /*    Copyright statement may not be removed.                                */
  11. /*                                                                           */
  12. /*****************************************************************************/
  13. /*      SCCSID = @(#)bsetib.h    6.9 92/03/15 */
  14. /***************************************************************************\
  15. *
  16. * Module Name: BSETIB.H
  17. *
  18. * OS/2 Thread Information Block Include File
  19. *
  20. *
  21. *****************************************************************************/
  22.  
  23. #ifdef __IBMC__
  24. #pragma checkout( suspend )
  25.    #ifndef __CHKHDR__
  26.       #pragma checkout( suspend )
  27.    #endif
  28. #pragma checkout( resume )
  29. #endif
  30.  
  31. #ifndef __BSETIB__
  32. /* NOINC */
  33. #define __BSETIB__
  34. /* INC */
  35.  
  36. /*
  37.  *      Thread Information Block (TIB)
  38.  */
  39.  
  40. struct tib2_s
  41.        {
  42.        ULONG   tib2_ultid;             /* Thread I.D. */
  43.        ULONG   tib2_ulpri;             /* Thread priority */
  44.        ULONG   tib2_version;           /* Version number for this structure */
  45.        USHORT  tib2_usMCCount;         /* Must Complete count */
  46.        USHORT  tib2_fMCForceFlag;      /* Must Complete force flag */
  47.        };
  48.  
  49. typedef struct tib2_s TIB2;
  50. typedef struct tib2_s *PTIB2;
  51.  
  52. struct tib_s                           /* TIB Thread Information Block */
  53.        {
  54.         PVOID   tib_pexchain;           /* Head of exception handler chain */
  55.         PVOID   tib_pstack;             /* Pointer to base of stack */
  56.         PVOID   tib_pstacklimit;        /* Pointer to end of stack */
  57.         PTIB2   tib_ptib2;              /* Pointer to system specific TIB */
  58.         ULONG   tib_version;            /* Version number for this TIB structure */
  59.         ULONG   tib_ordinal;            /* Thread ordinal number        */
  60.        };
  61.  
  62.  
  63. typedef struct tib_s    tib_t;
  64. typedef struct tib_s    TIB;
  65. typedef struct tib_s    *PTIB;
  66.  
  67.  
  68. /*
  69.  *      Process Information Block (PIB)
  70.  */
  71.  
  72.  
  73. struct pib_s {                         /* PIB Process Information Block */
  74.        ULONG   pib_ulpid;              /* Process I.D. */
  75.        ULONG   pib_ulppid;             /* Parent process I.D. */
  76.        ULONG   pib_hmte;               /* Program (.EXE) module handle */
  77.        PCHAR   pib_pchcmd;             /* Command line pointer */
  78.        PCHAR   pib_pchenv;             /* Environment pointer */
  79.        ULONG   pib_flstatus;           /* Process' status bits */
  80.        ULONG   pib_ultype;             /* Process' type code */
  81.        };
  82.  
  83.  
  84. typedef struct pib_s    pib_t;
  85. typedef struct pib_s    PIB;
  86. typedef struct pib_s    *PPIB;
  87.  
  88. #endif /* __BSETIB__ */
  89.  
  90. #ifdef __IBMC__
  91. #pragma checkout( suspend )
  92.    #ifndef __CHKHDR__
  93.       #pragma checkout( resume )
  94.    #endif
  95. #pragma checkout( resume )
  96. #endif
  97.