Processing Power of Microprocessors and Microcontrollers
The microcontroller or microprocessor can’t do two things at once. But when you’re using a PC you are multitasking. It’s an illusion you see because of the speed the computer works. For example 1 GHz clocked microprocessor takes a nanosecond to execute one instruction (some processors might execute more than one). Anyway this illusion fades when you playing a hardcore game doesn’t it? :P. Lets see how these speeds are achieved.
The operating system shares the processing power between the applications. An application is made with several processes. You might be running less than 10 applications right now. But there must be about 60 processes or more running. The operating system gives some limited time to a process to get whatever it can with the CPU (even if the process is not completed it can postpone), then it stops executing that process and gives another process to get some of its work done. A pc can execute thousands of million MIPS (Million computer Instructions Per Second) or more. You must have heard that the kernel is the heart of any operating system. Yep it is, it’s responsible to manage processing power between applications and keep the applications working. Actually it’s not simple as it looks. And processor management is just one of the tasks that operating system does. I won’t explain everything about the operating system here. But this gives you the very basic idea.
Most of the time microcontroller using robot projects don’t use operating systems since they are single tasked. But there are operating systems which can be used with specific microcontrollers. Since most projects are single tasked and simple, the speed of microprocessor wont be necessary. Microcontrollers usually operate at 1-20 MHz and this clock speed can be achieved using just a crystal or RC oscillator. Read How Crystals and RC Oscillators Work for more info.
Today, microprocessors are blazing fast and a crystal alone can’t provide this speed. So there’s a chip (PLL IC) on the motherboard called “clock generator” which gives a faster clock signal (a multiply of 33.333 MHz) using a crystal clock as the reference clock. Since it’s an IC you also get the flexibility of changing the clock signal. This clock signal is autoset by BIOS (Basic Input Output System) when the computer power up according to the CPU’s safest speed. In a computer, different parts (CPU, RAM, Video Cards etc) runs at different speeds and the PLL IC derives the necessary clock speeds from the clock signal. The image below is of a PLL IC. You can see a part of the crystal up left corner.