Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Special pages
Niidae Wiki
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
Protected mode
(section)
Page
Discussion
English
Read
Edit
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
View history
General
What links here
Related changes
Page information
Appearance
move to sidebar
hide
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== History == The first x86 processor, the [[Intel 8086]], had a 20-[[bit]] [[address bus]] for its [[computer memory|memory]], as did its [[Intel 8088]] variant.<ref name="Address bus">{{ cite web | url = http://www.brainbell.com/tutors/A+/Hardware/PC_Microprocessor_Developments_and_Features.htm | title = A+ - Hardware | work = PC Microprocessor Developments and Features Tutorials | access-date = 2007-07-24 | format = Tutorial/Guide | publisher = BrainBell.com }}</ref> This allowed them to access 2<sup>20</sup> [[byte]]s of memory, equivalent to 1 [[megabyte]].<ref name="Address bus" /> At the time, 1 megabyte was considered a relatively large amount of memory,<ref name="1 MB large">{{ cite web | url = http://www.pcmech.com/show/processors/35/ | title = A CPU History | access-date = 2007-07-24 | last = Risley | first = David | date = March 23, 2001 | format = Article | publisher = PCMechanic | quote = What is interesting is that the designers of the time never suspected anyone would ever need more than 1 MB of RAM. | archive-url = https://web.archive.org/web/20080829165311/http://www.pcmech.com/show/processors/35/ | archive-date=August 29, 2008}}</ref> so the designers of the [[IBM Personal Computer]] reserved the first 640 [[kilobyte]]s for use by applications and the operating system and [[upper memory area|the remaining 384 kilobytes]] for the [[BIOS]] (Basic Input/Output System) and memory for [[peripheral|add-on devices]].<ref name="Memory usage">{{ cite web | url = http://www.internals.com/articles/protmode/introduction.htm | title = Introduction to Protected-Mode | access-date = 2007-07-24 | last = Kaplan | first = Yariv | date = 1997 | format = Article | publisher = Internals.com | url-status = dead | archive-url = https://web.archive.org/web/20070622205752/http://www.internals.com/articles/protmode/introduction.htm | archive-date = 2007-06-22 }}</ref> As the cost of memory decreased and memory use increased, the 1 MB limitation became a significant problem. [[Intel]] intended to solve this limitation along with others with the release of the 286.<ref name="Memory usage" /> === The 286 === {{details|Intel 80286}} The initial protected mode, released with the 286, was not widely used;<ref name="Memory usage"/> for example, it was used by [[Coherent (operating system)|Coherent]] (from 1982),<ref>{{cite web |url=http://textfiles.com/internet/FAQ/coherent.faq |title=General Information FAQ for the Coherent Operating System |date=January 23, 1993}}</ref> Microsoft [[Xenix]] (around 1984)<ref>{{cite press release |url=http://www.tenox.net/docs/xenix/microsoft_xenix_30_286_press_release.pdf |title=Microsoft XENIX 286 Press Release |publisher=Microsoft |access-date=2015-08-17 |archive-date=2014-10-21 |archive-url=https://web.archive.org/web/20141021111609/http://www.tenox.net/docs/xenix/microsoft_xenix_30_286_press_release.pdf |url-status=dead }}</ref> and [[Minix]].<ref>{{cite web |url=http://minix.net/minix/minix.html |title=MINIX Information Sheet |archive-url=https://web.archive.org/web/20140107074722/http://minix.net/minix/minix.html |archive-date=January 7, 2014}}</ref> Several shortcomings such as the inability to make BIOS and DOS calls due to inability to switch back to real mode without resetting the processor prevented widespread usage.<ref name="286 failings">{{cite book | last = Mueller | first = Scott | title = Upgrading and Repairing PCs, 17th Edition | date = March 24, 2006 | url = https://archive.org/details/upgradingrepairi0000muel_17thedition | type = Book | access-date = 2017-07-11 | edition = 17 | publisher = Que | isbn = 0-7897-3404-4 | chapter = P2 (286) Second-Generation Processors | chapter-url = http://www.informit.com/articles/article.aspx?p=481859&seqNum=13 | url-access = registration }}</ref> Acceptance was additionally hampered by the fact that the 286 allowed memory access in 64 [[kilobyte]] segments, addressed by its four segment registers, meaning that only {{nobr|4 Γ 64 KB}}, equivalent to 256 KB, could be accessed at a time.<ref name="Memory usage"/> Because changing a segment register in protected mode caused a 6-byte segment descriptor to be loaded into the CPU from memory, the segment register load instruction took many tens of processor cycles, making it much slower than on the 8086 and 8088; therefore, the strategy of computing segment addresses on-the-fly in order to access data structures larger than 128 [[kilobyte]]s (the combined size of the two data segments) became impractical, even for those few programmers who had mastered it on the 8086 and 8088. The 286 maintained backward compatibility with the 8086 and 8088 by initially entering [[real mode]] on power up.<ref name="Real mode on powered on" /> Real mode functioned virtually identically to the 8086 and 8088, allowing the vast majority of existing [[software]] for those processors to run unmodified on the newer 286. Real mode also served as a more basic mode to set up and [[Bootstrapping#Software loading and execution|bootstrap]] into protected mode. To access the extended functionality of the 286, the operating system would set up some tables in memory that controlled memory access in protected mode, set the addresses of those tables into some special registers of the processor, and then set the processor into protected mode. This enabled 24-bit addressing, which allowed the processor to access 2<sup>24</sup> bytes of memory, equivalent to 16 [[megabyte]]s.<ref name="Address bus"/> === The 386 === [[File:Ic-photo-intel-A80386DX-33-IV-(386DX).png|thumb|An Intel 80386 microprocessor]] {{details|Intel 80386}} With the release of the 386 in 1985,<ref name="i386 release date" /> many of the issues preventing widespread adoption of the previous protected mode were addressed.<ref name="Memory usage" /> The 386 was released with an address bus size of 32 bits, which allows for 2<sup>32</sup> bytes of memory accessing, equivalent to 4 [[gigabytes]].<ref name="Memory increases">{{cite book | title = 80386 Programmer's Reference Manual | url = http://bitsavers.org/components/intel/80386/230985-001_80386_Programmers_Reference_Manual_1986.pdf | date = 1986 | publisher = Intel | location = Santa Clara, CA | at = Section 2.1 Memory Organization and Segmentation }}</ref> The segment sizes were also increased to 32 bits, meaning that the full address space of 4 gigabytes could be accessed without the need to switch between multiple segments.<ref name="Memory increases" /> In addition to the increased size of the address bus and segment registers, many other new features were added with the intention of increasing operational security and stability.<ref name="Enhancements">{{ cite book | title = Intel 64 and IA-32 Architectures Software Developer's Manual Volume 1: Basic Architecture | publisher = [[Intel]] | at = Section 3.1 Modes of Operation |date=May 2019 | url = https://software.intel.com/en-us/download/intel-64-and-ia-32-architectures-software-developers-manual-volume-1-basic-architecture }}</ref> Protected mode is now used in virtually all modern [[operating system]]s which run on the x86 architecture, such as [[Microsoft Windows]], [[Linux]], and many others.<ref name="Protected mode use">{{ cite book | title = Write Great Code | publisher = O'Reilly | first = Randall | last = Hyde | chapter = 12.10. Protected Mode Operation and Device Drivers |date=November 2004 | isbn = 1-59327-003-8 | chapter-url = http://safari.oreilly.com/1593270038/ns1593270038-CHP-12-SECT-10 }}</ref> Furthermore, learning from the failures of the 286 protected mode to satisfy the needs for [[multiuser DOS]], Intel added a separate [[virtual 8086 mode]],<ref>[[Charles Petzold]], Intel's 32-bit Wonder: The 80386 Microprocessor, ''[[PC Magazine]]'', November 25, 1986, pp. 150-152</ref> which allowed multiple virtualized 8086 processors to be emulated on the 386. [[x86 virtualization|Hardware x86 virtualization]] required for virtualizing the protected mode itself, however, had to wait for another 20 years.<ref>{{cite web|url=http://www.infoworld.com/article/2664741/computer-hardware/sending-software-to-do-hardware-s-job.html|title=Sending software to do hardware's job|author=Tom Yager|date=6 November 2004|work=InfoWorld|access-date=24 November 2014}}</ref>
Summary:
Please note that all contributions to Niidae Wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Encyclopedia:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Search
Search
Editing
Protected mode
(section)
Add topic