Not quite, Pony.
Hyper-threading takes advantage of the latency that is present in all single thread processors (All previous Pentiums and all current AMDs, including 64bit, are single thread). As a thread is processed, there is naturally periods of latency in the thread - time where the processor is not being used.
Hyperthreading takes advantage of this by taking two threads and processing the instructions of one during the "downtime" of the other. The reason that the OS is aware of 2 logical processors is down to "state" - the exact configuration of the processor at any given instant. A Hyperthreading processor maintains two versions of it's "state" , one for the first thread and one for the second. The OS sees both states and therefore it thinks it sees two processors.
The important thing here is not to confuse software threading with processor threading. Most people know that Windows XP, 2000, 2003 are multi-threading operating systems. What this means is that the OS divides the software processing up into chunks and sends them to the processor for processing which, if it is an HT processor, will break down the thread into sub-threads and process those in parallel. A non-HT processor will have to process the thread from the OS in one long stream.
Realistically you can see around 10-30% increase in performance where the largest gains will be in FPU intensive tasks... such as rendering.
That'll do donkey... that'll do...