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
IBMBIO.COM
(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!
{{Short description|System file (DOS BIOS) in PC DOS and DR-DOS}} {{Use dmy dates|date=April 2019|cs1-dates=y}} {{Use list-defined references|date=December 2021}} [[File:IBM PC DOS 1.0 screenshot.png|thumb|300px|<code>IBMBIO.COM</code> (at the top of the listing of [[COM file]]s) in [[IBM PC DOS]] 1.0.]] '''IBMBIO.COM''' is a [[system file]] in many [[DOS]] operating systems. It contains the system initialization code and all built-in device drivers. It also loads the DOS kernel ([[IBMDOS.COM]]) and optional pre-loadable system components (like for [[disk compression]] or security),<ref name="Schulman_1994_Undocumented-DOS"/><ref name="Paul_1997_OD-A3"/> displays boot menus, processes configuration files (like [[CONFIG.SYS]]) and launches the shell (like [[COMMAND.COM]]). The file is part of [[IBM]]'s [[PC DOS]] (all versions) as well as of [[DR DOS 5.0]] and higher (with the exception of [[DR-DOS 7.06]]<!-- where it is called IO.SYS -->).<ref name="Paul_1997_OD-A3"/><ref name="Paul_2017"/> It serves the same purpose as the file [[IO.SYS]] in [[MS-DOS]], or DRBIOS.SYS in [[DR DOS 3.31]] to [[DR DOS 3.41|3.41]].<ref name="Paul_1997_OD-A3"/><ref name="Paul_2017"/> (For compatibility purposes with some DOS applications the IBMBIO.COM file name was briefly also used by the IBM version of [[OS/2 1.0]], where it resembled the [[OS2BIO.COM]] file as used by [[Microsoft]].) The file is located in the [[root directory]] of the bootable [[File Allocation Table|FAT]]-formatted drive/partition (typically C:\) and typically has the ''system'', ''hidden'', and (since DOS 2.0 also the) ''read-only'' [[file attribute]]s set.<ref name="Duncan_1988_MS-DOS_Encyclopedia"/><ref name="Paul_1997_NWDOSTIP"/><ref name="Paul_2001_NWDOSTIP"/><ref name="Paul_1997_OD-A3"/><ref name="Paul_2017"/> Under DR-DOS the file may be optionally [[FAT file password|password-protected]] as well.<ref name="Paul_2017"/><ref group="nb" name="NB_DR-DOS_Password"/> Under PC DOS, the ''system'' attribute is set in order to mark the file as non-movable, a restriction technically not necessary under DR-DOS.<ref name="Rosch_1991_SYS"/><ref name="Paul_1997_NWDOSTIP"/><ref name="Paul_2001_NWDOSTIP"/><ref name="Paul_2002"/><ref name="Paul_2017"/> As IBMBIO.COM is a binary image containing executable code rather than a true [[COM file|COM]]-style program, the ''hidden'' attribute is set to keep the file from being accidentally invoked at the command prompt, which would lead to a crash.<ref name="Paul_1997_NWDOSTIP"/> This is no longer necessary for [[DR-DOS 7.02]] and higher, because under these systems the file is a [[fat binary]] also containing a tiny COM-style stub just displaying some version info and exiting gracefully when not being loaded by a [[boot sector]].<ref name="Paul_1997_OD-A3"/><ref name="Paul_1997_NWDOSTIP"/><ref name="Caldera_1998_NEW703"/> In the [[IBM PC compatible|PC]] [[bootup]] sequence, the first sector of the boot volume contains a [[boot loader]] called the [[volume boot record]] (VBR) and is loaded into memory and executed. If this is a VBR of PC DOS before 3.3 it would load both system files into memory by itself.<ref name="Duncan_1988_MS-DOS_Encyclopedia"/><ref name="Chappell_1994_DOS-Internals"/> As the PC DOS VBR cannot mount the FAT file system, the system files have to be stored in the first directory entries on the disk and be located at fixed physical positions on the disk stored in consecutive sectors, conditions of which the [[SYS (DOS command)|SYS]] utility must take care of.<ref name="Duncan_1988_MS-DOS_Encyclopedia"/><ref name="Chappell_1994_DOS-Internals"/> If the loaded boot sector is a [[PC DOS 3.3]] (or newer) VBR, the requirements are slightly relaxed. The system files still have to be stored in the first two root directory entries on the disk, but the VBR will use only the first entry to load the first three sectors of IBMBIO.COM into memory and transfer control to it.<ref name="Chappell_1994_DOS-Internals"/><ref group="nb" name="NB_PC_DOS_Contiguous_files"/> This part of IBMBIO.COM then contains a somewhat larger boot loader which: #Loads the rest of itself into memory. Before [[PC DOS 5.0]] the system files still had to be stored at fixed physical positions on the disk and stored in consecutive sectors. With PC DOS 5.0 (and higher) this requirement was reduced down to the first three sectors of IBMBIO.COM only.<ref name="Chappell_1994_DOS-Internals"/><ref group="nb" name="NB_PC_DOS_Contiguous_files"/> #Loads the DOS kernel. The kernel is stored in [[IBMDOS.COM]]. #Initializes each default [[device driver]] in turn ([[System console|console]], disk, [[serial port]], et cetera). At this point, the default devices are available. #Calls the DOS kernel's initialization routine. Under [[DR DOS 5.0]] and higher, the first step is skipped, since a DR-DOS VBR is capable of mounting the FAT file system, locate the IBMBIO.COM (or DRBIOS.SYS) file anywhere in the root directory and load it into memory by itself.<ref name="Rosch_1991_SYS"/><ref name="Paul_1997_OD-A3"/><ref name="Paul_1997_NWDOSTIP"/><ref name="Paul_2001"/><ref name="Paul_2002"/><ref name="Paul_2017"/><ref group="nb" name="NB_DR-DOS_File-size"/><ref group="nb" name="NB_DR-DOS_707"/> The filename of the IBMBIO.COM file to be loaded by the boot sector is stored in the boot sector rather than necessarily in the first root directory entry, likewise the filename of the IBMDOS.COM file to be loaded by IBMBIO.COM is stored in IBMBIO.COM itself rather than necessarily in the second directory entry on the disk.<ref name="Novell_1993_LOADER"/><ref name="Paul_1997_OD-A3"/><ref name="Paul_1997_NWDOSTIP"/><ref name="Paul_2017"/> Also, similar to the IBMBIO.COM loader in the VBR, the IBMDOS.COM loader in IBMBIO.COM is capable of rudimentarily mounting the filesystem as well, therefore it is not necessary for the system files to be stored in the first two directory entries, to reside at fixed physical positions or be stored in consecutive sectors. Consequently, it is also no longer necessary to set the ''system'' attribute.<ref name="Rosch_1991_SYS"/><ref name="Paul_1997_NWDOSTIP"/><ref name="Paul_2001_NWDOSTIP"/><ref name="Paul_2002"/><ref name="Paul_2017"/> Instead, the system files can be simply copied to the disk (without SYS), given a DR-DOS boot sector already resides on the disk.<ref name="Paul_1997_NWDOSTIP"/><ref name="Paul_2001_NWDOSTIP"/><ref name="Paul_1997_OD-A3"/><ref name="Paul_2002"/><ref name="Paul_2017"/> Microsoft sometimes calls this component the I/O system,<ref name="Duncan_1988_MS-DOS_Encyclopedia"/><ref name="Paterson_1994_Origins_DOS"/><ref name="Paterson_2007_Design-DOS"/> but it is generally known as DOS BIOS (the DOS-related part of the [[Basic Input/Output System]]). The term BIOS was originally coined by [[Gary Kildall]] in 1975 for [[BIOS (CP/M)|CP/M]],<ref name="Kildall_1975_BIOS"/><ref name="Kildall_1980_CPM"/><ref name="Shustek_2016"/><ref name="Kildall_1993"/><ref name="Fischer_2001_Ewing"/><ref name="Fraley_2007_Killian"/> but is also used to describe a similar component or layer in other operating systems by Digital Research, IBM, Microsoft<!-- f.e. BIOS in MSX-DOS --> and many others. In a more generic sense, some vendors refer to this portion as the RAM BIOS of operating systems such as [[DOS]] or [[CP/M]] in order to contrast it with the built-in ROM BIOS of a machine.<ref name="ACT_1984_Apricot-Portable"/>
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)