ReactOS on a very small hard drive

Ask your support questions in here

Moderator: Moderator Team

DOSGuy
Posts: 585
Joined: Wed Sep 14, 2011 5:55 pm
Contact:

ReactOS on a very small hard drive

Post by DOSGuy »

I've been trying to get ReactOS running in JPC for a while now. Why, you ask? In order to put it online in a browser window!

JPC just gave me a black screen when I tried booting ROS from a 2 GB FAT32 disk image. I then installed ROS in a 500 MB FAT16 image, and it boots! It got to the ReactOS logo and crashed about 1/3 of the way through. (I was using r54592. ROS 0.3.13 fails almost immediately after reaching the logo). I can boot "to screen" (is that supposed to be a boot to command line option?), and the debug modes show some stuff. I couldn't actually get to the desktop, but it was pretty cool that it got as far as it did, so I decided to put it online to let the community play with it.

The problem is, JPC in a browser is another story. The disk image has to go in a zip file. JPC downloads and unzips the disk image, then displays an out of memory error related to the heap. Having to decompress a 500 MB disk image into memory, I'm not really surprised. I have 4 GB of RAM, but I don't expect Java to be able to handle what I just threw at it.

Once installed, ROS takes up about 150 MB (plus a 50+ MB pagefile.sys), so I decided to try a much smaller hard drive image. If I try to install ROS on a hard disk smaller than 400 MB, it pops up a message that the disk isn't big enough and refuses to go farther. My 400 MB image didn't fare any better in a browser window, so I created a 250 MB hard drive image and tried to XCOPY everything from the 400 MB image. The resulting 250 MB image wouldn't go to the boot loader.

So, the first question is why ROS refuses to install on a partition less than 400 MB when the system requirements shows "IDE hard drive of at least 150 MB", and the result does indeed come in under 150 MB. Obviously some room is needed for pagefile.sys, and to install stuff that gets deleted prior to the first boot, but does ROS actually use 400 MB at some point during installation?

Is there any way that I could install ROS on a hard drive smaller than 400 MB, or copy the disk after installation to a hard drive smaller than 400 MB and still have it be bootable?
Today entirely the maniac there is no excuse with the article. Get free BeOS, DOS, OS/2, and Windows games at RGB Classic Games.
SomeGuy
Posts: 586
Joined: Mon Nov 29, 2004 9:48 am
Location: Marietta, GA

Re: ReactOS on a very small hard drive

Post by SomeGuy »

Well, what I would do is start with a larger 500mb image, pick out the bits I don't need and then use a disk utility to shrink it down. Be sure to use the boot sector and FreeLDR from the Cmake build as the last time I checked the rbuild one was still buggy. A release build would take less space since there are no debugging symbols. If ReactOS crashes with a 00000069 error that means uniata doesn't like the emulated drive, might try the ATAPI.SYS driver instead. Also check if the emulator has full Vesa support, if not you may need to install in VGA mode.
DOSGuy
Posts: 585
Joined: Wed Sep 14, 2011 5:55 pm
Contact:

Re: ReactOS on a very small hard drive

Post by DOSGuy »

I think we need to update the system requirements to "400 MB partition" if the installer refuses to install on less than 400 MB, regardless of how much hard drive space the installation ultimately takes up. There's no point in saying that you only need 150 MB if the installer is hard coded to refuse to install on a drive of that size. 0.3.13 does the same thing, so this isn't new.
Today entirely the maniac there is no excuse with the article. Get free BeOS, DOS, OS/2, and Windows games at RGB Classic Games.
milon
Posts: 969
Joined: Sat Sep 05, 2009 9:26 pm

Re: ReactOS on a very small hard drive

Post by milon »

Does the installer actually need 400MB to set everything up? Can that be reduced?
hto
Developer
Posts: 2193
Joined: Sun Oct 01, 2006 3:43 pm

Post by hto »

It sounds like a bug.

I think the setup program must not refuse to install the system, no matter how small the hard drive is. It should just warn the user and allow to continue the installation.
Z98
Release Engineer
Posts: 3379
Joined: Tue May 02, 2006 8:16 pm
Contact:

Re: ReactOS on a very small hard drive

Post by Z98 »

The installer should refuse if the harddrive is smaller than the space it needs to expand the OS.
hto
Developer
Posts: 2193
Joined: Sun Oct 01, 2006 3:43 pm

Post by hto »

The required space is not known, it changes with each revision (though somebody could add calculations to the build system).

Also, I believe it's fundamentally wrong to hold a user for a fool. User knows better than a soulless machine.
DOSGuy
Posts: 585
Joined: Wed Sep 14, 2011 5:55 pm
Contact:

Re: ReactOS on a very small hard drive

Post by DOSGuy »

Z98 wrote:The installer should refuse if the harddrive is smaller than the space it needs to expand the OS.
If that's 400 MB, then a 400 MB partition has to be listed as a system requirement.
hto wrote:Also, I believe it's fundamentally wrong to hold a user for a fool. User knows better than a soulless machine.
It's also very annoying to be led to expect that something will work and have it not work. I agree that the installer should refuse to do anything that's going to fail.
Last edited by DOSGuy on Mon Dec 05, 2011 11:45 pm, edited 1 time in total.
Today entirely the maniac there is no excuse with the article. Get free BeOS, DOS, OS/2, and Windows games at RGB Classic Games.
hto
Developer
Posts: 2193
Joined: Sun Oct 01, 2006 3:43 pm

Post by hto »

DOSGuy wrote: It's also very annoying to be led to expect that something will work and have it not work.
How it will lead to wrong expectations, if
hto wrote: It should just warn the user and allow to continue the installation.
milon
Posts: 969
Joined: Sat Sep 05, 2009 9:26 pm

Re:

Post by milon »

hto wrote:(though somebody could add calculations to the build system).
This is a great idea! That way we don't need to estimate high or do a lot of guess-work with each release. Would it be relatively simple to implement, or is this one of those Someday-It-Would-Be-Nice things?
Z98
Release Engineer
Posts: 3379
Joined: Tue May 02, 2006 8:16 pm
Contact:

Re: ReactOS on a very small hard drive

Post by Z98 »

The two rules my data structures instructor passed onto us about users.

1) Users will screw up even when you provide step by step instructions for how to do something.

2) Users will intentionally screw up just to see what happens (and blame the developer when things go really bad).

I pretty much follow that philosophy for any piece of code I write that I expect to be exposed to someone other than myself.
hto
Developer
Posts: 2193
Joined: Sun Oct 01, 2006 3:43 pm

Post by hto »

It shouldn't be difficult to do approximate calculations (an overhead must be taken into account when storing data in a file system).

As of that philosophy, I think it helps to make this world a worse place.
DOSGuy
Posts: 585
Joined: Wed Sep 14, 2011 5:55 pm
Contact:

Re: ReactOS on a very small hard drive

Post by DOSGuy »

I understand the philosophy of not letting a program dictate what you can do, but I'm not sure what the value is of having the installer let you proceed with an installation that's going to fail.
Today entirely the maniac there is no excuse with the article. Get free BeOS, DOS, OS/2, and Windows games at RGB Classic Games.
Bblaauw
Posts: 149
Joined: Mon Aug 03, 2009 12:59 am

Re: ReactOS on a very small hard drive

Post by Bblaauw »

If I remember correctly the minimum size required for a harddisk is 363MB or so (VMware allows 0.nnn for its harddisk size, defaulting to gigabyte-values).
At the same time, minimum size required for a partition is also 363MB. These are hard values set by the installer code, it doesn't imply the installer indeed needs this amount of space to write to.

What you could do is work with a large virtual harddisk and a smaller one. QEMU or Bochs might be easiest.
Install to the largest one, resize as small as possible (or at least not larger than the small image) using whatever (not done this since PartitionMagic, so maybe PartedMagic does the trick), and clone it to the 2nd/smaller harddisk image. It's a nice test to see how robust the FreeLDR bootloader and corresponding bootsectors are, I guess.

Alternative option is changing the values for minimum requirements in ReactOS sourcecode and recompiling. Or disabling the check.
DOSGuy
Posts: 585
Joined: Wed Sep 14, 2011 5:55 pm
Contact:

Re: ReactOS on a very small hard drive

Post by DOSGuy »

All of those sound like a pain in the butt. Since there is currently no relationship between the hard coded requirement and how much space is actually needed, the short-term solution seems to be to have a message that states "ReactOS may not install properly on a partition less than 363 MB" and remove the check, so that people can ignore it if they want to.

In the long-term, I still think it makes sense to have some way of determining how much space will be needed to successfully install the OS and then prevent installation if the partition is smaller than that.
Today entirely the maniac there is no excuse with the article. Get free BeOS, DOS, OS/2, and Windows games at RGB Classic Games.
Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest