 Microsoft did not change all of the Windows code to 32-bit, parts of it remained 16-bit (albeit not directly using real mode) for reasons of compatibility, performance, and development time.Additionally it was necessary to carry over design decisions from earlier versions of Windows for reasons of backwards compatibility, even if these design decisions no longer matched a more modern computing environment.These factors eventually began to impact the operating system's efficiency and stability.