Can anyone explain the terms ‘core’ and ‘thread’ ? What is the difference between the two?
Hyper threading alows a computer to do twice as many tasks on each core (so a dual core acts like a quad core) except because it's software based it doesn't work as well as having twice as many cores
Core is an actual processor.
a thread "thread of execution" is an ordered sequence of instructions that tells the computer what to do.
A processor core is a hardware unit in the processor architecture that can execute instructions sent to it.
A thread is an ongoing unit of software code that can be scheduled for execution by the processor. So, they're actually nothing a like at all. A core is inside your processor and it executes software code to make your computer work and do neat things, like display images of cute kittens. The thread is software code that sends the information to the processor so that it can execute it and display images of cute kittens.
Core is a hardware term. It essentially means a processor - the basic "computer" in a computing device. Modern PCs have multi-core processors, which means that a single chip has two or more processors or "cores" on it.
A thread, on the other hand, is a software term. It refers to a piece of software that can be thought of as independent in that it has its own internal logic and it the computer runs is as a unit. However, it is not necessarily independent in that it may be (and often is) a part in a more complex software edifice. For example, a web browser may have a communications thread which deals with receiving files from the server, and a separate rendering thread which draws the web page on the screen. It may also have a printing thread etc etc. In addition, if you have multiple pages open, they may be dealt with by separate threads, i.e. separate copies of the communications or rendering software etc.