Difference between revisions of "Installing ReactOS"

From ReactOS Wiki
Jump to: navigation, search
(Replacing page with 'or on an emulator, it is important to know the minimum requirements to install and use ReactOS:')
(Undo revision 22866 by MatseN1 (Talk))
Line 1: Line 1:
 
or on an emulator, it is important to know the minimum requirements to install and use ReactOS:
 
or on an emulator, it is important to know the minimum requirements to install and use ReactOS:
 +
 +
* Click on the [http://www.reactos.org/en/download.html Download ReactOS] link. This will always contain the latest offical release.
 +
* Select the "ISO image" link.
 +
 +
==== SourceForge ====
 +
* Visit the [http://sourceforge.net/projects/reactos/ ReactOS project page on SourceForge].
 +
* Scroll down to "Latest File Releases".
 +
* Click on the [http://sourceforge.net/project/showfiles.php?group_id=6553 Download] link for the "reactos" package. A page opens with links to packages of the latest release of ReactOS. The files of the "reactos" package should appear highlighted in a different color.
 +
* Click on the "reactos-version-iso.zip" link, where version is the version number. You will be redirected to one of the SourceForge download servers, and the download will shortly begin.
 +
 +
== Creating the ReactOS Setup CD-ROM ==
 +
* The file you downloaded is a compressed archive in ZIP format, containing a single file named "reactos.iso". This file is the image file of the ReactOS setup CD-ROM in ISO format.
 +
* Extract the image file from the archive into a temporary directory.
 +
* Write the image file onto CD-R or CD-RW media. Refer [[HOWTO/burn_ReactOS_ISO | HOWTO Burn ISO image]] for more info.
 +
 +
== Installing ReactOS on a real machine ==
 +
 +
=== From a Setup CD-ROM ===
 +
* Make sure your BIOS is configured to boot from the CD-ROM first
 +
* Insert the ReactOS setup CD-ROM into a CD-ROM drive and reboot your computer. On the next boot, the ReactOS setup utility will start.
 +
* Follow the instructions on the screen to install ReactOS on your computer.
 +
* After the installation has finished, remove the setup CD-ROM from the CD-ROM drive and press "Return" to reboot your computer. Now, you can start ReactOS by selecting it from the boot menu.
 +
* And that's all.
 +
 +
=== Technical Notes ===
 +
 +
Modifications performed to the Hard Disk to boot ReactOS
 +
 +
==== FreeLoader ====
 +
[[FreeLoader]], the ReactOS boot loader, is composed of two files: an executable (FREELDR.SYS) and a configuration file in Windows INI format (FREELDR.INI). The two files are copied to the root directory of the active partition.
 +
 +
The FreeLoader boot code, that is the small program that loads FREELDR.SYS, can be installed in many ways, depending on the pre-existing operating system. The setup logic tries the following steps in order:
 +
 +
 +
* If the Windows NT/2000/XP boot manager is found on the active partition, the existing boot manager is configured to boot ReactOS. The FreeLoader boot code is written to a file named BOOTSECT.ROS in the root of the active partition, and an entry named "ReactOS" is added to BOOT.INI pointing to BOOTSECT.ROS.
 +
** The Windows NT/2000/XP boot manager is detected by the presence of the files NTLDR and BOOT.INI in the root directory of the active partition.
 +
** To uninstall FreeLoader, delete the file BOOTSECT.ROS and remove the "ReactOS" entry from the hidden BOOT.INI file.
 +
* If MS-DOS or Windows 95/98/ME is found on the active partition, the original boot sector is saved to a file named BOOTSECT.DOS in the root directory of the active partition. The FreeLoader boot code is then written to the boot sector of the active partition. FreeLoader thus becomes your primary boot manager, and from its boot menu you will be able to boot both ReactOS and your pre-existing operating system
 +
** MS-DOS and Windows 95/98/ME are detected by the presence of the files MSDOS.SYS and IO.SYS in the root directory of the active partition.
 +
** To uninstall FreeLoader, boot from a MS-DOS or Windows Restore floppy disk, and run the command "SYS C:". After this, the BOOTSECT.DOS file can be safely deleted.
 +
* If none of the known operating systems are found on the active partition, the original boot sector is saved to the file BOOTSECT.OLD in the root directory of the active partition. The FreeLoader boot code is then written to the boot sector of the active partition. FreeLoader thus becomes the primary boot manager. Note that you will have to edit the FREELDR.INI configuration file by yourself to boot the pre-existing operating system, because FreeLoader has no knowledge of how to do it.
 +
** To uninstall FreeLoader, restore the boot sector of the active partition from the BOOTSECT.OLD file. The details on how to do so are dependent on the operating system you are running.
 +
 +
Note: If the active partition uses a FAT32 filesystem, the boot code does not fit into a single sector. Microsoft uses sectors number 0 and 12, while FreeLoader uses sectors number 0 and 14, so there should not be any conflicts with existing boot loaders.
 +
 +
Note: The support for other operating systems will be improved in the future.
 +
 +
== Installing ReactOS on an emulator ==
 +
=== Emulators ===
 +
An emulator is a software program that provides a virtual hardware platform. Software instructions that would be run on hardware are now interpreted by the emulator software. This allows you to "run" a different kind of computer hardware and its software in a window on your computer. Although the performance of the software run on a virtual computer will be much slower than on real hardware, it provides several advantages:
 +
 +
*You can try out a completely different operating system without tinkering with your real system.
 +
*You can run potentially unstable software without the fear of damaging your real system.
 +
*For operating system developers, it provides a way to debug the system without constant reboots.
 +
 +
We also have a guide to install ReactOS in a virtual machine: http://www.reactos.org?page=newbies_install
 +
 +
== Limitations ==
 +
=== Hardware Support ===
 +
Currently, ReactOS has limited hardware support. A list of the most important limitations follows:
 +
 +
* ReactOS needs at least 32 MBs of RAM to boot, it can be run on 24MB although that's not recommended.
 +
* ReactOS can only be booted from IDE CD-ROMs and hard disks.
 +
 +
Also see http://www.reactos.org/wiki/index.php/Supported_Hardware
 +
 +
Note that booting from CD-ROM is supported only for running the setup program unless you're using the LiveCD option, which is meant to be booted of the CD-ROM continuously. Otherwise booting from CD-ROM for normal use is not recommended. Although it is generally possible, the default configuration will prevent ReactOS from creating a swap file when booted from a CD-ROM. If no swap file is available, ReactOS will stop as soon as it runs out of RAM. In practice, this prevents the use of any non-trivial program.
 +
 +
=== Setup and Boot ===
 +
Currently, the ReactOS setup utility and boot loader have a number of limitations you should be aware of:
 +
 +
* ReactOS can only be installed on FAT16 or FAT32 partitions.
 +
* The boot partition must be the first FAT16 or FAT32 partition on the disk.
 +
* The setup utility can't check the integrity of filesystems.
 +
* The setup utility will not prevent users from performing dangerous and potentially destructive operations. Be very careful when using it and do not take any warnings lightly.
 +
 +
== ReactOS boot options ==
 +
=== Kernel command line ===
 +
The [[kernel]] command line is a text string that is passed to ReactOS by the boot loader (usually [[FreeLoader]]). It consists of several switches, each of which has a special meaning to ReactOS. A switch is a forward slash (<code>/</code>) followed by a text string (the name of the switch), and optionally an equal sign (<code>=</code>) and a text string (the value). If the equal sign is present, then at least one value is required to follow.
 +
 +
The syntax, variables and device strings used by FreeLoader conform to the [http://en.wikipedia.org/wiki/Advanced_RISC_Computing ARC] firmware and boot specification, similarly to the boot system used in all Windows NT implementations (such as the Windows NT bootloader on the x86 architecture, or the ARC console used to boot Windows NT 4.0 on the [http://en.wikipedia.org/wiki/Jazz_(computer) MIPS], Alpha AXP and PowerPC architectures).  Because of this, boot disks and other firmware- or BIOS-accessible devices are specified by each of the bus, disk, slice, and partition values associated with the device.
 +
 +
In FreeLoader the kernel command line is specified in an <code>Options</code> setting in <code>freeldr.ini</code>. The following text is an example of the contents of <code>freeldr.ini</code>, which boots ReactOS from the first partition of the first IDE drive of the computer system:
 +
<code>
 +
[ReactOS]
 +
BootType=ReactOS
 +
SystemPath=multi(0)disk(0)rdisk(0)partition(1)\reactos
 +
Options=/DEBUGPORT=SCREEN
 +
</code>
 +
As used in the above sample file, <code>DEBUGPORT</code> is a boot option. By adding the boot option <code>/DEBUGREPORT=SCREEN</code>, ReactOS will print debugging information to the screen.
 +
 +
===Boot options===
 +
The following boot options may be used:
 +
<br>
 +
; <code>DEBUGPORT</code> : Specifying <code>DEBUGPORT</code> as a boot option will enable certain debugging features.
 +
* Format: <code>DEBUGPORT=[SCREEN|BOCHS|GDB|PICE|COM1|COM2|COM3|COM4|FILE|MDA]</code><br>Any one of the following values may set:
 +
** <code>SCREEN</code>: Send debug output to the screen.
 +
** <code>BOCHS</code>: Send debug output to bochs.
 +
** <code>GDB</code>: Enable the GNU debugger (GDB) stub so remote debugging using GDB is possible.
 +
** <code>PICE</code>: Enable the Private ICE driver so debugging using Private ICE is possible.
 +
** <code>COM1</code>: Send debug output to COM1.
 +
** <code>COM2</code>: Send debug output to COM2.
 +
** <code>COM3</code>: Send debug output to COM3.
 +
** <code>COM4</code>: Send debug output to COM4.
 +
** <code>FILE</code>: Send debug output to a file %systemroot%/reactos/debug.log
 +
** <code>MDA</code>: Send debug output to MDA ''(The old text-graphiccard from IBM)''.
 +
<br>
 +
; <code>BAUDRATE</code> : Specifies baudrate of the serial port to be <code>[baudrate]</code> bps. Used in conjunction with <code>COM1-4</code> or <code>GDB</code>.
 +
* Format: <code>BAUDRATE=[baudrate]</code>
 +
<br>
 +
; <code>IRQ</code> : Specifies the IRQ number of the serial port to be <code>[irq-number]</code>. Used in conjunction with <code>COM1-4</code> or <code>GDB</code>.
 +
* Format: <code>IRQ=[irq-number]</code>
 +
<br>
 +
; <code>PROFILE</code> : Enables profiling. Profiling information will be written in <code>%windir%\profiler.log</code>. This will slow down the system quite a bit.
 +
* Format: <code>PROFILE</code>
 +
<br>
 +
; <code>MAXMEM</code> : Will restrict ReactOS to use only the first <code>[maxmem]</code> MB of physical memory.
 +
* Format: <code>MAXMEM=[maxmem]</code>

Revision as of 16:57, 25 February 2009

or on an emulator, it is important to know the minimum requirements to install and use ReactOS:

  • Click on the Download ReactOS link. This will always contain the latest offical release.
  • Select the "ISO image" link.

SourceForge

  • Visit the ReactOS project page on SourceForge.
  • Scroll down to "Latest File Releases".
  • Click on the Download link for the "reactos" package. A page opens with links to packages of the latest release of ReactOS. The files of the "reactos" package should appear highlighted in a different color.
  • Click on the "reactos-version-iso.zip" link, where version is the version number. You will be redirected to one of the SourceForge download servers, and the download will shortly begin.

Creating the ReactOS Setup CD-ROM

  • The file you downloaded is a compressed archive in ZIP format, containing a single file named "reactos.iso". This file is the image file of the ReactOS setup CD-ROM in ISO format.
  • Extract the image file from the archive into a temporary directory.
  • Write the image file onto CD-R or CD-RW media. Refer HOWTO Burn ISO image for more info.

Installing ReactOS on a real machine

From a Setup CD-ROM

  • Make sure your BIOS is configured to boot from the CD-ROM first
  • Insert the ReactOS setup CD-ROM into a CD-ROM drive and reboot your computer. On the next boot, the ReactOS setup utility will start.
  • Follow the instructions on the screen to install ReactOS on your computer.
  • After the installation has finished, remove the setup CD-ROM from the CD-ROM drive and press "Return" to reboot your computer. Now, you can start ReactOS by selecting it from the boot menu.
  • And that's all.

Technical Notes

Modifications performed to the Hard Disk to boot ReactOS

FreeLoader

FreeLoader, the ReactOS boot loader, is composed of two files: an executable (FREELDR.SYS) and a configuration file in Windows INI format (FREELDR.INI). The two files are copied to the root directory of the active partition.

The FreeLoader boot code, that is the small program that loads FREELDR.SYS, can be installed in many ways, depending on the pre-existing operating system. The setup logic tries the following steps in order:


  • If the Windows NT/2000/XP boot manager is found on the active partition, the existing boot manager is configured to boot ReactOS. The FreeLoader boot code is written to a file named BOOTSECT.ROS in the root of the active partition, and an entry named "ReactOS" is added to BOOT.INI pointing to BOOTSECT.ROS.
    • The Windows NT/2000/XP boot manager is detected by the presence of the files NTLDR and BOOT.INI in the root directory of the active partition.
    • To uninstall FreeLoader, delete the file BOOTSECT.ROS and remove the "ReactOS" entry from the hidden BOOT.INI file.
  • If MS-DOS or Windows 95/98/ME is found on the active partition, the original boot sector is saved to a file named BOOTSECT.DOS in the root directory of the active partition. The FreeLoader boot code is then written to the boot sector of the active partition. FreeLoader thus becomes your primary boot manager, and from its boot menu you will be able to boot both ReactOS and your pre-existing operating system
    • MS-DOS and Windows 95/98/ME are detected by the presence of the files MSDOS.SYS and IO.SYS in the root directory of the active partition.
    • To uninstall FreeLoader, boot from a MS-DOS or Windows Restore floppy disk, and run the command "SYS C:". After this, the BOOTSECT.DOS file can be safely deleted.
  • If none of the known operating systems are found on the active partition, the original boot sector is saved to the file BOOTSECT.OLD in the root directory of the active partition. The FreeLoader boot code is then written to the boot sector of the active partition. FreeLoader thus becomes the primary boot manager. Note that you will have to edit the FREELDR.INI configuration file by yourself to boot the pre-existing operating system, because FreeLoader has no knowledge of how to do it.
    • To uninstall FreeLoader, restore the boot sector of the active partition from the BOOTSECT.OLD file. The details on how to do so are dependent on the operating system you are running.

Note: If the active partition uses a FAT32 filesystem, the boot code does not fit into a single sector. Microsoft uses sectors number 0 and 12, while FreeLoader uses sectors number 0 and 14, so there should not be any conflicts with existing boot loaders.

Note: The support for other operating systems will be improved in the future.

Installing ReactOS on an emulator

Emulators

An emulator is a software program that provides a virtual hardware platform. Software instructions that would be run on hardware are now interpreted by the emulator software. This allows you to "run" a different kind of computer hardware and its software in a window on your computer. Although the performance of the software run on a virtual computer will be much slower than on real hardware, it provides several advantages:

  • You can try out a completely different operating system without tinkering with your real system.
  • You can run potentially unstable software without the fear of damaging your real system.
  • For operating system developers, it provides a way to debug the system without constant reboots.

We also have a guide to install ReactOS in a virtual machine: http://www.reactos.org?page=newbies_install

Limitations

Hardware Support

Currently, ReactOS has limited hardware support. A list of the most important limitations follows:

  • ReactOS needs at least 32 MBs of RAM to boot, it can be run on 24MB although that's not recommended.
  • ReactOS can only be booted from IDE CD-ROMs and hard disks.

Also see http://www.reactos.org/wiki/index.php/Supported_Hardware

Note that booting from CD-ROM is supported only for running the setup program unless you're using the LiveCD option, which is meant to be booted of the CD-ROM continuously. Otherwise booting from CD-ROM for normal use is not recommended. Although it is generally possible, the default configuration will prevent ReactOS from creating a swap file when booted from a CD-ROM. If no swap file is available, ReactOS will stop as soon as it runs out of RAM. In practice, this prevents the use of any non-trivial program.

Setup and Boot

Currently, the ReactOS setup utility and boot loader have a number of limitations you should be aware of:

  • ReactOS can only be installed on FAT16 or FAT32 partitions.
  • The boot partition must be the first FAT16 or FAT32 partition on the disk.
  • The setup utility can't check the integrity of filesystems.
  • The setup utility will not prevent users from performing dangerous and potentially destructive operations. Be very careful when using it and do not take any warnings lightly.

ReactOS boot options

Kernel command line

The kernel command line is a text string that is passed to ReactOS by the boot loader (usually FreeLoader). It consists of several switches, each of which has a special meaning to ReactOS. A switch is a forward slash (/) followed by a text string (the name of the switch), and optionally an equal sign (=) and a text string (the value). If the equal sign is present, then at least one value is required to follow.

The syntax, variables and device strings used by FreeLoader conform to the ARC firmware and boot specification, similarly to the boot system used in all Windows NT implementations (such as the Windows NT bootloader on the x86 architecture, or the ARC console used to boot Windows NT 4.0 on the MIPS, Alpha AXP and PowerPC architectures). Because of this, boot disks and other firmware- or BIOS-accessible devices are specified by each of the bus, disk, slice, and partition values associated with the device.

In FreeLoader the kernel command line is specified in an Options setting in freeldr.ini. The following text is an example of the contents of freeldr.ini, which boots ReactOS from the first partition of the first IDE drive of the computer system:

[ReactOS]
BootType=ReactOS
SystemPath=multi(0)disk(0)rdisk(0)partition(1)\reactos
Options=/DEBUGPORT=SCREEN

As used in the above sample file, DEBUGPORT is a boot option. By adding the boot option /DEBUGREPORT=SCREEN, ReactOS will print debugging information to the screen.

Boot options

The following boot options may be used:

DEBUGPORT 
Specifying DEBUGPORT as a boot option will enable certain debugging features.
  • Format: DEBUGPORT=[SCREEN|BOCHS|GDB|PICE|COM1|COM2|COM3|COM4|FILE|MDA]
    Any one of the following values may set:
    • SCREEN: Send debug output to the screen.
    • BOCHS: Send debug output to bochs.
    • GDB: Enable the GNU debugger (GDB) stub so remote debugging using GDB is possible.
    • PICE: Enable the Private ICE driver so debugging using Private ICE is possible.
    • COM1: Send debug output to COM1.
    • COM2: Send debug output to COM2.
    • COM3: Send debug output to COM3.
    • COM4: Send debug output to COM4.
    • FILE: Send debug output to a file %systemroot%/reactos/debug.log
    • MDA: Send debug output to MDA (The old text-graphiccard from IBM).


BAUDRATE 
Specifies baudrate of the serial port to be [baudrate] bps. Used in conjunction with COM1-4 or GDB.
  • Format: BAUDRATE=[baudrate]


IRQ 
Specifies the IRQ number of the serial port to be [irq-number]. Used in conjunction with COM1-4 or GDB.
  • Format: IRQ=[irq-number]


PROFILE 
Enables profiling. Profiling information will be written in %windir%\profiler.log. This will slow down the system quite a bit.
  • Format: PROFILE


MAXMEM 
Will restrict ReactOS to use only the first [maxmem] MB of physical memory.
  • Format: MAXMEM=[maxmem]