Timeline for Who set the 640K limit?
Current License: CC BY-SA 4.0
20 events
when toggle format | what | by | license | comment | |
---|---|---|---|---|---|
May 5, 2022 at 13:38 | comment | added | Omar and Lorraine | It may be worth knowing that the DEC Rainbow 100, which could be upgrade to 896K of memory andwhich ran MS-DOS MS-DOS can see all 896K. | |
Feb 17, 2020 at 15:56 | history | edited | Tim Locke | CC BY-SA 4.0 |
Changed 'who' to 'whom'
|
Sep 16, 2019 at 10:26 | comment | added | Thorbjørn Ravn Andersen | For those thinking the 640 Kb barrier was the most stupid decision ever, please remember that this machine could ship with 16 kb of RAM (though you needed more to do things like Zork, that requires 48 kb). It was only later that the limit got really problematic, and that only because the IBM PC was wildly more successful than anybody could ever have believed at launch time. | |
Sep 16, 2019 at 8:33 | answer | added | Patrick Schlüter | timeline score: 7 | |
Sep 15, 2019 at 15:27 | comment | added | dave | Somewhere I recall reading that Microsoft argued for the 640K limit, because IBM had originally proposed a 512K boundary (i.e., exactly half the address space). | |
Nov 6, 2018 at 8:17 | vote | accept | PkP | ||
Oct 3, 2018 at 18:15 | comment | added | supercat | @RichF: To be sure, think the 68000 architecture is nicer than the 8088/8086, but it needs a minimum 16-bit data bus to be practical and IBM wanted to use an 8-bit bus. | |
Oct 3, 2018 at 16:36 | comment | added | supercat | ...that stores each line as a separate object could use 16-bit indexing within each line while accommodating individual lines up to 65,520 bytes. If the 8088 had included at least one more segment register (or perhaps--for programs whose combined DS and SS usage would be under 64K, included a mode which would use SS as the default segment for non-prefixed instructions using any addressing mode) and included load-segreg-immediate instructions, it would have been just about perfect. | |
Oct 3, 2018 at 16:30 | comment | added | supercat | @RichF: Unless one has a 32-bit memory bus, working with 16-bit quantities is going to be faster than working with 32-bit quantities. Splitting objects into a size that will allow offsets to be stored as 16 bits rather than 32 will thus improve performance even on a machine with a 32-bit linear address space. On the other hand, when using something like the 68000, using 16-bit offsets will limit objects to 32767 bytes. Limiting objects to 65520 bytes doesn't seem as limiting. From a practical perspective, something like a text editor... | |
Oct 3, 2018 at 9:27 | comment | added | RichF | @supercat You make a good "glass half full" argument in showing an effective use of overlapped pointers. From my "glass half empty" perspective I see a system limited by 16-bit pointers, causing people to find work-arounds for problems which need not exist in the first place. If Intel had not chosen to go with a design which would halve source-code compatibility with their 8-bit CPUs, then they could have gone with a flat memory model easily expandable to a 32-bit memory space at some point in the future. Instead, they locked in a half-a**ed model still dependent on 64 kbyte ranges. | |
Oct 3, 2018 at 8:12 | comment | added | Voo | @Rob As Ben Franklink used to say "Most quotes attributed to people on the internet are wrong". | |
Oct 2, 2018 at 18:49 | comment | added | supercat | @RichF: The overlapping pointers were a good design for programs that didn't need to handle individual objects over 64K. Every "linear" design I've seen on 16-bit platforms would require programs to either subdivide memory into 64K sections and ensure no object crossed a section boundary, or else add extra code for every access that could straddle a section boundary. Effective coding often required having more than two uncommitted data segments, but the 8088 design was much better than the 80286 design. | |
Oct 1, 2018 at 22:41 | comment | added | Erik Eidt | It probably goes without saying but Intel choose 20 bits for the address bus of the 8086, which constrained the address space to at most 1 megabyte. Beyond the address pins, there are also limitations in the instruction set that assume a 20 bit address space (the mechanism of the segment registers). Other constraints, such as IBM's board design, then shrank the potential RAM from there. | |
Oct 1, 2018 at 21:47 | comment | added | RichF | The "640k limit" (hole in contiguous RAM) was just 1 of a series of short-sighted, odd, and/or bad decisions involving the PC. Others include a) IBM choosing 8086 family over 68000. b) IBM not buying MSDOS outright instead of allowing Microsoft to co-own and co-market it. c) Intel choosing to overlap memory pointers instead of normative flat memory pointers. d) Intel thinking it would be an important feature of the 8086 to be able to assemble 8085 code, complicating and probably limiting the chip. e) Intel not realizing that the 286 protected mode would benefit from a way to go back to real. | |
Oct 1, 2018 at 18:58 | comment | added | Davislor | @Robill It wasn't that 384K (There was actually another 64K minus 16 bytes if you turned on bit 20 of the address bus.) was assigned to other purposes. By the '90s, a lot of that "upper memory" was put to use with EMM386! It was that DOS could only load an executable into a contiguous bloxk of memory, and IBM chose to start video memory at A0000h. | |
Oct 1, 2018 at 17:57 | comment | added | Solar Mike | It did lead to the other joke: “I need to run Word, where’s my 256 meg ram chip” about the time “bloatware” was being applied to how some wrote programs... | |
Oct 1, 2018 at 16:51 | answer | added | RonJohn | timeline score: 22 | |
Oct 1, 2018 at 15:21 | comment | added | RobIII | From the horse's mouth, Bill Gates: "I never said '640K should be enough for anybody!'". Another quote in there: "The IBM PC had 1 megabyte of logical address space. But 384K of this was assigned to special purposes, leaving 640K of memory available. That's where the now-infamous ``640K barrier'' came from" | |
Oct 1, 2018 at 13:15 | answer | added | Stephen Kitt | timeline score: 83 | |
Oct 1, 2018 at 12:57 | history | asked | PkP | CC BY-SA 4.0 |