In Programming Windows: Wintel (Premium), I described how IBM decided to enter the personal computing market in 1980 and did so in less than a year by choosing open, inexpensive third-party hardware and software solutions. Key among the components IBM chose was the Intel 8088, a cost-reduced version of the 16-bit 8086.
As noted previously, the Intel 8088 and 8086 ran in a single operating mode called real mode and they utilized a 20-bit segmented memory address space which limited the amount of RAM to 1 MB (1024 KB). That seemed like a lot of memory in 1980/1981—the consumer-oriented personal computers of the day typically offered just 4 KB to 64 KB of RAM, for example—and IBM semi-arbitrarily segmented the available address space to accommodate different needs. The first 640 KB was available to any software running on the chipset (operating system plus an application, typically) while the remaining 384 KB was divvied up between the BIOS, video, and peripherals.