Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Bootloader
(section)
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!
==Notes== {{reflist|group="nb"|refs= <ref group="nb" name="NB_PC_DOS_Contiguous_files">The [[IBM PC DOS#5.00|PC DOS 5.0]] manual incorrectly states that the system files no longer need to be contiguous. However, for the boot process to work the system files still need to occupy the first two directory entries and the first three sectors of <code>[[IBMBIO.COM]]</code> still need to be stored contiguously. <code>[[SYS (command)|SYS]]</code> continues to take care of these requirements.<!-- See Chappell "DOS Internals" for further details --></ref> <ref group="nb" name="NB_DR-DOS_707">As an example, while the extended functionality of DR-DOS [[master boot record|MBR]]s and [[volume boot record|boot sector]]s compared to their [[MS-DOS]]/[[IBM PC DOS|PC DOS]] counterparts could still be achieved utilizing conventional [[Program optimization|code optimization]] techniques up to [[DR-DOS#After Novell|7.05]]<!-- yes 7.05, not 7.06, as 7.06 was designed to be compatible with Microsoft's MS-DOS 7.10 boot sector -->, for the addition of [[logical block addressing|LBA]], [[File Allocation Table#FAT32|FAT32]] and [[NEWLDR|LOADER]] support the [[DR-DOS#After Novell|7.07]] sectors had to resort to [[self-modifying code]], [[opcode]]-level programming, controlled utilization of [[side effect (computer science)|side effect]]s, multi-level data/code [[Machine code#Overlapping instructions|overlapping]] and algorithmic [[Fold (higher-order function)|fold]]ing techniques to squeeze everything into a single physical sector, as it was a requirement for [[backward compatibility|backward]]- and cross-compatibility with other operating systems in [[Multi-booting|multi-boot]] and [[Chain loading|chain load]] scenarios.</ref> <ref group="nb" name="NB_DR-DOS_File-size">There is one exception to the rule that [[DR-DOS]] [[Volume boot record|VBR]]s will load the whole <code>[[IBMBIO.COM]]</code> file into memory: If the <code>IBMBIO.COM</code> file is larger than some 29 KB, trying to load the whole file into memory would result in the boot loader to [[#Paul_1997_ODA3|overwrite]] the [[Call stack|stack]] and [[Relocation (computing)|relocated]] disk parameter table (DPT/FDPB). Therefore, a [[DR-DOS#After Novell|DR-DOS 7.07]] VBR would only load the first 29 KB of the file into memory, relying on another loader embedded into the first part of <code>IBMBIO.COM</code> to check for this condition and load the remainder of the file into memory by itself if necessary. This does not cause compatibility problems, as <code>IBMBIO.COM</code>'s size never exceeded this limit in previous versions without this loader. Combined with a dual entry structure this also allows the system to be loaded by a [[IBM PC DOS|PC DOS]] VBR, which would load only the first three sectors of the file into memory.</ref> }}
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)