Could you tell me a little about this feature?
Really it doesn't add one Virtual processor, but instead shows itself as two virtual processors which share many common elements of the processor die. Essentially, the processor can run two sets of instructions simultaneously. It's not as big an improvement as having two completely separate cores entirely, but it does have some gains. Some of the more recent processors in fact have hyper-threading on each core, so a quad-core i7 processor has effectively 8 'processors' in some respects.
Internally, a HT-enabled Processor has two sets of Registers, control registers, and other architecture components. The 'two processors' share the same cache, execution units, and buses.
What it does, basically, is allow a processor to fill "idle" time by running another set of instructions. This is normally what an OS does, of course- idle time is usually filled by scheduling some other program or thread to run. But this gives it more granularity.
The OS thinks there are two processors, so it schedules threads to run on those two processors. The threads running on each processor run in such a way that they "share" parts of the processor; The benefit is that if one of the virtual processors is waiting for memory or some other operation, the other virtual processor can keep going, while the other virtual processor is waiting. Normally, what would happen is that time would be "wasted" as the processor just sits idle for several clock cycles waiting for memory or some other operation. Also, one Virtual processor can can be, say, reading from memory while the other one is using the Execution units to do math or arithmetic or other computations. In addition, because this is done "below" the OS, it is far faster than the scheduling that would be done for a non HT enabled processor.