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!
== Operating systems == Operating systems like [[OS/2]] 1.x try to switch the processor between protected and real modes. This is both slow and unsafe, because a real mode program can easily [[Crash (computing)|crash]] a computer. OS/2 1.x defines restrictive programming rules allowing a ''[[Family API]]'' or ''bound'' program to run in either real or protected mode. Some early [[Unix]] operating systems, [[OS/2]] 1.x, and Windows used this mode. [[Windows 3.0]] was able to run real mode programs in 16-bit protected mode; when switching to protected mode, it decided to preserve the single privilege level model that was used in real mode, which is why Windows applications and DLLs can hook interrupts and do direct hardware access. That lasted through the [[Windows 9x]] series. If a Windows 1.x or 2.x program is written properly and avoids segment arithmetic, it will run the same way in both real and protected modes. Windows programs generally avoid segment arithmetic because Windows implements a software virtual memory scheme, moving program code and data in memory when programs are not running, so manipulating absolute addresses is dangerous; programs should only keep [[Smart pointer|handle]]s to memory blocks when not running. Starting an old program while Windows 3.0 is running in protected mode triggers a warning dialog, suggesting to either run Windows in real mode or to obtain an updated version of the application. Updating well-behaved programs using the MARK utility with the MEMORY parameter avoids this dialog. It is not possible to have some GUI programs running in 16-bit protected mode and other GUI programs running in real mode. In [[Windows 3.1]], real mode was no longer supported and could not be accessed. In modern 32-bit operating systems, [[virtual 8086 mode]] is still used for running applications, e.g. [[DOS Protected Mode Interface|DPMI]] compatible [[DOS extender]] programs (through [[virtual DOS machine]]s) or Windows 3.x applications (through the [[Windows on Windows]] subsystem) and certain classes of [[device driver]]s (e.g. for changing the screen-resolution using BIOS functionality) in [[OS/2]] 2.0 (and later OS/2) and 32-bit [[Windows NT]], all under control of a 32-bit kernel. However, 64-bit operating systems (which run in [[long mode]]) no longer use this, since virtual 8086 mode has been removed from long mode.
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