It can only execute 1 process at a given time because it only has 1 execution line. It can time slice to make everyone think it's doing everything more than 1 and things like hyperthreading and dualcores can actually do 2 at once (in the case of hyperthreading its more like 1.3)