The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/i386/tss.h

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 /* 
    2  * Mach Operating System
    3  * Copyright (c) 1991,1990,1989 Carnegie Mellon University
    4  * All Rights Reserved.
    5  * 
    6  * Permission to use, copy, modify and distribute this software and its
    7  * documentation is hereby granted, provided that both the copyright
    8  * notice and this permission notice appear in all copies of the
    9  * software, derivative works or modified versions, and any portions
   10  * thereof, and that both notices appear in supporting documentation.
   11  * 
   12  * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
   13  * CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
   14  * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
   15  * 
   16  * Carnegie Mellon requests users of this software to return to
   17  * 
   18  *  Software Distribution Coordinator  or  Software.Distribution@CS.CMU.EDU
   19  *  School of Computer Science
   20  *  Carnegie Mellon University
   21  *  Pittsburgh PA 15213-3890
   22  * 
   23  * any improvements or extensions that they make and grant Carnegie Mellon
   24  * the rights to redistribute these changes.
   25  */
   26 /*
   27  * HISTORY
   28  * $Log:        tss.h,v $
   29  * Revision 2.6  91/05/14  16:18:40  mrt
   30  *      Correcting copyright
   31  * 
   32  * Revision 2.5  91/05/08  12:43:45  dbg
   33  *      Protect against multiple includes.
   34  *      [91/04/26  14:39:49  dbg]
   35  * 
   36  * Revision 2.4  91/02/05  17:15:37  mrt
   37  *      Changed to new Mach copyright
   38  *      [91/02/01  17:38:56  mrt]
   39  * 
   40  * Revision 2.3  91/01/08  17:32:27  rpd
   41  *      Add bit_map
   42  *      [90/12/20  10:21:17  rvb]
   43  * 
   44  * Revision 2.2  90/05/03  15:38:14  dbg
   45  *      Created.
   46  *      [90/02/08            dbg]
   47  * 
   48  */
   49 
   50 #ifndef _I386_TSS_H_
   51 #define _I386_TSS_H_
   52 
   53 /*
   54  *      i386 Task State Segment
   55  */
   56 struct i386_tss {
   57         int             back_link;      /* segment number of previous task,
   58                                            if nested */
   59         int             esp0;           /* initial stack pointer ... */
   60         int             ss0;            /* and segment for ring 0 */
   61         int             esp1;           /* initial stack pointer ... */
   62         int             ss1;            /* and segment for ring 1 */
   63         int             esp2;           /* initial stack pointer ... */
   64         int             ss2;            /* and segment for ring 2 */
   65         int             cr3;            /* CR3 - page table directory
   66                                                  physical address */
   67         int             eip;
   68         int             eflags;
   69         int             eax;
   70         int             ecx;
   71         int             edx;
   72         int             ebx;
   73         int             esp;            /* current stack pointer */
   74         int             ebp;
   75         int             esi;
   76         int             edi;
   77         int             es;
   78         int             cs;
   79         int             ss;             /* current stack segment */
   80         int             ds;
   81         int             fs;
   82         int             gs;
   83         int             ldt;            /* local descriptor table segment */
   84         unsigned short  trace_trap;     /* trap on switch to this task */
   85         unsigned short  io_bit_map_offset;
   86                                         /* offset to start of IO permission
   87                                            bit map */
   88 };
   89 
   90 #endif  /* _I386_TSS_H_ */

Cache object: 29bb4df2bc38b9b896f146411d3c8651


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.