View unanswered posts | View active topics It is currently 20 Apr 2021, o 15:04



Reply to topic  [ 1 post ] 
 How to turn on the 3GB switch in your OS 
Author Message
RI Team
User avatar

Joined: 2 May 2009, o 15:44
Posts: 841
Location: Olympia, WA, USA
Post How to turn on the 3GB switch in your OS
Who this is for

If you experience a crash any time you try to start a world map game and you have a 32-bit Windows operating system then you should read this post to understand the problem and the solution.

Preface

Modern computer operating systems use virtual memory. Virtual memory is cool because it allows a process to map memory addresses to all sorts of computer data like video memory, main system memory, hard drive files, etc, and interact with it all in a consistent way as if it all was located in the computer's main Random Access Memory. The addresses don't map directly to main system memory anymore so they are considered "virtual"; hence the term "virtual memory".

32-bit operating systems store these addresses with 32-bit values. The biggest 32-bit value is 4,294,967,296. This means that a 32-bit operating system can map, at maximum, 4,294,967,296 bytes of data. That's 4GB. The same goes for 32-bit processes, even if they run on a 64-bit operating system. 32-bit software can only map 4GB of data. If it tries to map more than that, it will fault in some way. Sometimes this is handled properly and the user is given a "Memory Allocation Fault". Sometimes it isn't handled properly and the application simply crashes with a less descriptive error.

In 32-bit Windows operating systems this problem is exacerbated because Windows reserves HALF of any process' address space for its own purposes. This means that any application running on 32-bit Windows does not have access to the full 4GB of addresses, but only 2GB.

In the past this limit hasn't been very problematic because computer software didn't need to map that much memory. However, some of the more recent computer software - including many video games and the Realism: Invictus mod - needs more than 2GB of address space and will end up crashing when it runs out. This shows up especially on the World Map, because it is a very large map with a large number of civilizations and lots of cities and units. Most games played on small, medium, or large maps will run fine and don't need the extra memory, but the World Map will crash every time if it is limited to 2GB of address space.

Fortunately, 32-bit Windows has an option that will cause it to give applications 3GB of address space instead of 2GB. This is affectionately known as the 3GB switch. Switching this on typically gives Realism: Invictus enough address space to run correctly, even with the World Map, although even 3GB may not be enough address space in the latter stages of a World Map game. Note that in 64-bit Windows operating systems 32-bit applications get the full 4GB of address space so the 3GB switch isn't necessary.

To switch this on follow the instructions for your operating system below.

Windows XP 32-Bit

  • Right-click on "My Computer". A context menu appears.
  • Left-click on "Properties". The "System Properties" dialog box appears.
  • Click on the "Advanced" tab in the upper right.
  • Beneath the Blue "Startup and Recovery" section click the Settings button. The "Startup and Recovery" dialog box appears.
  • Beneath the "System Startup" section, next to the "to edit start options..." text, click Edit. The boot.ini file opens in the Notepad text editor.
  • Please be careful when editing this file!
  • You'll see a line with the text "[operating sytems]". Beneath it is a list of one or more lines that describe the operating systems that are available to boot. The exact text will vary a bit, but it will look something like this:
    Code:
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect /NoExecute=OptIn
  • Anything with a slash ( / ) in the front of it is called a switch. It's an option that is turned on. We want to turn on the 3GB switch.
  • Add the text "/3GB" to the list of switches. Make sure that it has a space on either side of it. It should end up looking something like this:
    Code:
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /3GB /fastdetect /NoExecute=OptIn
  • Save the file
  • Hit the OK button on the "Startup and Recovery" dialog to close it
  • Hit the OK button on the "System Properties" dialog to close it
  • Restart your computer for the change to take effect

Windows Vista 32-Bit

(Instructions not yet written)


4 Mar 2011, o 06:21
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 1 post ] 

Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by STSoftware for PTF.