Hyperthreading of a cpu core means the core can be treated as logically two or more logical/virtual cpu cores to run multiple processes.
An operating system also provides concurrency programming, by scheduling and context switch.
Do the two do the same thing, i.e. support concurrency programming?
What are their relations? For example, does OS's concurrency require the cpu core to provide hyperthreading, or vice versa?
Thanks.