When you write C code, you cannot guarantee that the compiler will use a single atomic instruction even like Kernel Functions On multiprocessor systems, each such instruction is with Lock byte prefix in opecode Atomic even on a multiprocessor system