AES New Instructions
- Intel® AES New Instructions (Intel® AES-NI)
Overview of Intel® AES-NI, a new encryption instruction set that improves on the Advanced Encryption Standard (AES) algorithm and accelerates the encryption of data.
- Securing the Enterprise with Intel® AES-NI
Learn why cryptography is hot in the marketplace today, especially in the enterprise.
- Intel® Advanced Encryption Standard Instructions (AES-NI)
Description of the six new instructions that make up the AES-NI instruction set and perform several compute intensive parts of the AES algorithm.
Digital Random Number Generator
- Bull Mountain is Intel's code name for its new Intel® 64 Architecture instruction RdRand and its underlying Digital Random Number Generator (DRNG) hardware implementation. Bull Mountain provides a processor-based RNG solution that is of high quality and performance, highly available, and secure.
Intel Instruction Set Architecture Extensions
- Intel® Memory Protection Extensions (Intel® MPX) is a name for Intel Architecture extensions designed to increase robustness of software
- Software Guard Extensions (SGX) is a name for Intel Architecture extensions designed to increase the security of software through an “inverse sandbox” mechanism
- Intel® Secure Hash Algorithm Extensions (Intel® SHA) are a family of seven Intel® Streaming SIMD Extensions (Intel® SSE)-based instructions that are used together to accelerate the performance of SHA-1 and SHA-256 on Intel architecture-based processors
Intel® Virtualization Technology (Intel® VT)
- Virtualization HW technical brief
Intel Virtualization Technology (Intel VT) provides comprehensive hardware assists that boost virtualization software performance, improve application response times and provide greater reliability, security and flexibility.
- Virtualization: A Developer's Friend
The more developers use virtualization, the more they find new uses for it. Discover what you’re missing and how virtualization can help you get more done.
- Intel® Virtualization Technology: Flash* Animation
This animation provides an overview of Intel® Virtualization Technology, which is a technique by which hardware resources can be abstracted, divided, and shared between multiple operating system environments running simultaneously.
- Intel® Virtualization Technology: Best Practices for Software Vendors
This series of articles functions as an aid to help software vendors tailor their applications for use with Intel VT.
Virtualization: A Developer's Friend Virtualization Models for the Software Development Lifecycle Development of Software for Virtual Machines Introducing Intel® Virtualization Technology for Connectivity
Please share any innovative usage models you have deployed using virtualization technology.Please create a sub page above.
Challenge Allow a user to have the experience as if they were working on their own c...
By AdminPosted 07/10/20070
Challenge Verify that software vendors and IT organizations will benefit from Intel® Virtualization Technology and are likely to adopt the technology. A key goal of Intel Virtualization Technology is to make VMM software independent of OS software. This will free VMM vendors from the resource-int...
By Shirley Chen (Intel)Posted 06/25/20090
One of the reasons I setup an NFS share is so that I can have an inexpensive shared storage place for my VMs on the ESX Server 4.0. I can also use the features on vCenter like VMotion and Fault Tolerance using the shared storage. Creating the NFS is only available for the Windows 2003 R2 SP2. For...
By David Ott (Intel)Posted 06/25/20090
VM exits in response to certain instructions and events (e.g., page fault) are a key source of performance degredation in a virtualized systems. But have you ever wondered why? What exactly happens during a VM exit anyway? A VM exit marks the point at which a transition is made between the VM cu...
By David Ott (Intel)Posted 06/25/20095
I've received a fair number of questions on the Intel Virtualization and Software Development Forum about VT-d -- enough to justify a few words on this note in the blogging sphere. "VT-d" stands for "Intel Virtualization Technology for Directed I/O". The relationship between VT and VT-d is that t...
By David Ott (Intel)Posted 06/25/20091
An important issue to be aware of when measuring application performance on a virtualized system is that of time drift. A key responsibility of every VMM (hypervisor) is distributing clock ticks generated by the hardware to each VM (guest OS) running on the system. Likewise, it is the responsibli...
I just needed a clarification on the EPT trait selection (vol 3b, 25.2.4 "EPT and Memory typing"). The spec suggests that MTRRs are not involved in the determination of the final memory type. Does this include the SMRR (system management range register) too ? Are the traits from SMRR ignored ? Thanks for your help.
in tryingthe OSorapplicationsviavirtualizationbe itclientorserverwilloccurwhetherthisdebugtaufenomenecrackandalsowitha cloudserverwithalot ofbrandvariantswill also determinethe quality oftrials
Hi, I'm a developer of a simple and tiny hypervisor. Now I have a huge trouble with behavior of VMCS' "Exit qualification" field. For example, this guest assembly code... ... mov eax, CR4_PSE_BIT mov cr4, eax ... ... causes #VMEXIT with exit reason 0x1C. At the next step my hypervisor analizes a value of "Exit qualification" field to determine a type of instruction and registers' numbers. And its value is wrong. For "mov cr4, eax" this is 0x13, but it's an incorrect value (it's correct for "mov eax, cr3"). When I change an instruction in guest to another "MOV CR" instruction this value changes, but often it isn't correct too. Can anybody help me? What's the probable reason of such behavior? My hypervisor works with EPT and Unrestricted guest extensions.
After discussing how to track software interrupts with colleagues there appears to be two methods to achieve tracking of interrupts. My first thought is to have the user process call handler invoke an unregistered interrupt, trap the 0xB vmexit and then inject an event (software interrupt) which handles the call. I am trying to inject a software interrupt into our guest 0x82. However,I modify the vmcs.VM_ENTRY_INTR_INFO = (1<< 31) | (0 << 11) | (4<< 8) | 0x82; I then restart the vm and nothing happens. Currently 0x82 just invokes vmcall as a sanity check to see if it is working. The other option I'm thinking about is to mark the page of the IDT handler as not present in the ept pages and when it page faults, see what's faulting, mark the page as present and resume. It would mean more exits though. 1) Am I injecting the event incorrectly? I have read over sections 24.8.3, and 26.5 multiple times. 2) Would the second method be easier and/or more correct? 3) Is there...
By Jim Smith1
Currently I'm using Isis professional to design my own hardware. I'm looking to design a basic computer system with a retro 80's feel. I've been buildingaddersand a accumulator out of logic gates butwill be adding ti32032 an intel 8256 muart to simplify mysystem. Since i'm mostly hardwareoriented coding and developing the right machine code is going to be a daunting task. So i though I'd ask about which virtual 8086 software is best? and what tool would you recommend that work well with isis in windows 7