Changeset 31490 in vbox for trunk/include/VBox
- Timestamp:
- Aug 9, 2010 4:12:19 PM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/x86.h
r30922 r31490 2519 2519 /** @} */ 2520 2520 2521 /** @name Task segment. 2521 2522 /** @name Task Segments. 2522 2523 * @{ 2524 */ 2525 2526 /** 2527 * 16-bit Task Segment (TSS). 2528 */ 2529 #pragma pack(1) 2530 typedef struct X86TSS16 2531 { 2532 /** Back link to previous task. (static) */ 2533 RTSEL selPrev; 2534 /** Ring-0 stack pointer. (static) */ 2535 uint16_t sp0; 2536 /** Ring-0 stack segment. (static) */ 2537 RTSEL ss0; 2538 /** Ring-1 stack pointer. (static) */ 2539 uint16_t sp1; 2540 /** Ring-1 stack segment. (static) */ 2541 RTSEL ss1; 2542 /** Ring-2 stack pointer. (static) */ 2543 uint16_t sp2; 2544 /** Ring-2 stack segment. (static) */ 2545 RTSEL ss2; 2546 /** IP before task switch. */ 2547 uint16_t ip; 2548 /** FLAGS before task switch. */ 2549 uint16_t flags; 2550 /** AX before task switch. */ 2551 uint16_t ax; 2552 /** CX before task switch. */ 2553 uint16_t cx; 2554 /** DX before task switch. */ 2555 uint16_t dx; 2556 /** BX before task switch. */ 2557 uint16_t bx; 2558 /** SP before task switch. */ 2559 uint16_t sp; 2560 /** BP before task switch. */ 2561 uint16_t bp; 2562 /** SI before task switch. */ 2563 uint16_t si; 2564 /** DI before task switch. */ 2565 uint16_t di; 2566 /** ES before task switch. */ 2567 RTSEL es; 2568 /** CS before task switch. */ 2569 RTSEL cs; 2570 /** SS before task switch. */ 2571 RTSEL ss; 2572 /** DS before task switch. */ 2573 RTSEL ds; 2574 /** LDTR before task switch. */ 2575 RTSEL selLdt; 2576 } X86TSS16; 2577 AssertCompileSize(X86TSS16, 44); 2578 #pragma pack() 2579 /** Pointer to a 16-bit task segment. */ 2580 typedef X86TSS16 *PX86TSS16; 2581 /** Pointer to a const 16-bit task segment. */ 2582 typedef const X86TSS16 *PCX86TSS16; 2583 2584 2585 /** 2586 * 32-bit Task Segment (TSS). 2523 2587 */ 2524 2588 #pragma pack(1) … … 2599 2663 /** Pointer to const task segment. */ 2600 2664 typedef const X86TSS32 *PCX86TSS32; 2601 /** @} */ 2602 2603 2604 /** @name 64 bits Task segment. 2605 * @{ 2665 2666 2667 /** 2668 * 64-bit Task segment. 2606 2669 */ 2607 2670 #pragma pack(1) … … 2635 2698 } X86TSS64; 2636 2699 #pragma pack() 2637 /** Pointer to task segment. */2700 /** Pointer to a 64-bit task segment. */ 2638 2701 typedef X86TSS64 *PX86TSS64; 2639 /** Pointer to const task segment. */2702 /** Pointer to a const 64-bit task segment. */ 2640 2703 typedef const X86TSS64 *PCX86TSS64; 2641 2704 AssertCompileSize(X86TSS64, 136);
Note:
See TracChangeset
for help on using the changeset viewer.