External Virtual CPU interface.
More...
#include <vcpu.h>
List of all members.
Public Types |
enum | Type {
TYPE_CPUID_WRITE,
TYPE_CPUID,
TYPE_RDTSC,
TYPE_RDMSR,
TYPE_WRMSR,
TYPE_IOIN,
TYPE_IOOUT,
TYPE_TRIPLE,
TYPE_INIT,
TYPE_HLT,
TYPE_INVD,
TYPE_WBINVD,
TYPE_CHECK_IRQ,
TYPE_CALC_IRQWINDOW,
TYPE_SINGLE_STEP
} |
Public Member Functions |
| CpuMessage (Type _type, CpuState *_cpu, unsigned _mtr_in) |
| CpuMessage (unsigned _nr, unsigned _reg, unsigned _mask, unsigned _value) |
| CpuMessage (bool is_in, CpuState *_cpu, unsigned _io_order, unsigned _port, void *_dst, unsigned _mtr_in) |
Public Attributes |
enum CpuMessage::Type | type |
union { |
struct { |
CpuState * cpu |
union { |
unsigned cpuid_index |
struct { |
unsigned io_order |
unsigned short port |
void * dst |
} | |
} | |
} | |
struct { |
unsigned nr |
unsigned reg |
unsigned mask |
unsigned value |
} | |
}; | |
unsigned | mtr_in |
unsigned | mtr_out |
Detailed Description
External Virtual CPU interface.
Copyright (C) 2010, Bernhard Kauer <bk@vmmon.org> Economic rights: Technische Universitaet Dresden (Germany)
This file is part of Vancouver.
Vancouver is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation.
Vancouver is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License version 2 for more details.
Member Enumeration Documentation
- Enumerator:
TYPE_CPUID_WRITE |
|
TYPE_CPUID |
|
TYPE_RDTSC |
|
TYPE_RDMSR |
|
TYPE_WRMSR |
|
TYPE_IOIN |
|
TYPE_IOOUT |
|
TYPE_TRIPLE |
|
TYPE_INIT |
|
TYPE_HLT |
|
TYPE_INVD |
|
TYPE_WBINVD |
|
TYPE_CHECK_IRQ |
|
TYPE_CALC_IRQWINDOW |
|
TYPE_SINGLE_STEP |
|
Constructor & Destructor Documentation
CpuMessage::CpuMessage |
( |
Type |
_type, |
|
|
CpuState * |
_cpu, |
|
|
unsigned |
_mtr_in | |
|
) |
| | [inline] |
CpuMessage::CpuMessage |
( |
unsigned |
_nr, |
|
|
unsigned |
_reg, |
|
|
unsigned |
_mask, |
|
|
unsigned |
_value | |
|
) |
| | [inline] |
CpuMessage::CpuMessage |
( |
bool |
is_in, |
|
|
CpuState * |
_cpu, |
|
|
unsigned |
_io_order, |
|
|
unsigned |
_port, |
|
|
void * |
_dst, |
|
|
unsigned |
_mtr_in | |
|
) |
| | [inline] |
Member Data Documentation
The documentation for this struct was generated from the following file: