DEP / PAE running on server?

Posted on 2010-09-15
Last Modified: 2013-11-10

I am running a Windows 2003 SP2 server, Enterprise edition. This is a virtual server.

If I go to System Properties, I can see "Physical Address Extension" listed under the memory info.

However, if I look at th boot.ini file, I can't see any PAE switch. The boot.ini is copied below:

WINDOWS="Windows Server 2003, Enterprise" /noexecute=optout /fastdetect

I've read the the optout switch means that DEP is enabled. And if DEP is enabled, PAE is enabled too automatically, we don't need to add an extra /PAE switch to the boot.ini file.

Could someone confirm if this is true?

The reason I ask is because we are in talks with a vendor to install a finance application on our servers, and they advise not to use PAE with their application. Why, I'm not sure.

Could someone advise:

i) What are the actual benefits of DEP
ii) Can we leave DEP running but disable PAE
iii) Is it recommended to have DEP with PAE disabled

Any help appreciated.
Question by:Joe_Budden
  • 3
  • 2
LVL 10

Accepted Solution

LMiller7 earned 500 total points
ID: 33688530
1. DEP is a security feature. A common security exploit is to force the execution of arbitrary data as if it were code. DEP prevents this. Unless you have good reason to do otherwise, DEP should be enabled.

2. PAE has two primary features which can be enabled independently. Enabling DEP (as you specified in boot,ini) will load the PAE kernel, even without specifying the PAE switch. The PAE switch will load the PAE kernel but does not in itself enable DEP but permits accessing memory above the 4GB mark.

3. Having DEP enabled without specifying the PAE switch is a common situation. With modern 32 bit client systems this situation is almost universal. It is also common with servers. But if you wish to access more than 4GB RAM then the PAE switch is essential..

Specifying the PAE switch has few implications for applications, although there are exceptions.
DEP is far more likely to be a problem for applications. With your configuration DEP will be enabled for all applications except for those identified in the DEP configuration. If an application has issues with DEP you will need to specifically add it to the exception list.

Author Comment

ID: 33689186
Thanks LMiller.

Some follow up q's if that's cool...

1. Just to confirm, with my situation above, we do actually have PAE enabled don't we (albeit indirectly)?

2. Is it possible (and recommended) to have DEP but not PAE enabled (or, indeed, if it's possible to disable PAE on an app-by-app basis)?

3. Is it possible (and recommended) to have PAE but with DEP disabled for our app

4. What does "/noexecute=optout /fastdetect" actually mean and do?
LVL 10

Expert Comment

ID: 33691109
1. The form of PAE that enables DEP is enabled. The form that enables memory above 4GB is not.

2. The situation with DEP enabled without the PAE switch is the default on almost all modern client systems and most servers as well. The PAE switch should not be enabled unless you need access to more than 4GB RAM when it is essential. The PAE switch is a global setting that cannot be disabled or enabled for individual applications.

3. Certainly.

4. "/noexecute=optout" means that DEP is enabled for all applications, except for those that are to be excluded. This would be recommended for servers running a limited number of applications - the usual case. "/fastdetect" is another switch with an entirely unrelated purpose.

"/noexecute=optin" means that DEP is enabled only for important system processes and others that have been explicitly selected. This is more common with client systems that typically run a wider set of applications.

Remember that there are two forms of PAE. One is associated with DEP, the other with memory above 4GB. They are independently selectable with only one thing in common - the both require the PAE kernel.
All combinations are possible and useful. DEP shuld be enabled unless you have a good reason to do otherwise.

Author Comment

ID: 33691711
Thanks again.

I assume that when the vendor stated that their application had issues with PAE, they meant the version that supports > 4GB memory on x32 machines.

I did have one last question on this comment:

"Specifying the PAE switch has few implications for applications, although there are exceptions.
DEP is far more likely to be a problem for applications"

From your experience, what sort of problems occur with applications that have issues with DEP? What sort of problems would signify that DEP was the cause?
LVL 10

Expert Comment

ID: 33692000
An application that has a problem with DEP would crash, with a message identifying DEP as the cause.

DEP prevents the execution of data as if it were code. Any attempt to do this will trigger an exception and terminate the application to prevent what may be a security exploit. The problem is that this is sometimes done in applications for entirely legitimate purposes. This is most common with older applications written before the introduction of DEP.

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Hello It is a very old trick to use a ram disk in order to boost PC performances, in the past, when in home environments the fastest common devices were floppy disks a part of the very small ram memory available was used to create a virtual hard …
I have purchased two new systems and both are now Universal Extensible Firmware Interface (UEFI) based. UEFI is replacing BIOS for the desktop PC. It is a Linux based firmware with enough robustness it can communicate with a website without loading …
This Micro Tutorial will give you a basic overview how to record your screen with Microsoft Expression Encoder. This program is still free and open for the public to download. This will be demonstrated using Microsoft Expression Encoder 4.
Sending a Secure fax is easy with eFax Corporate ( First, just open a new email message. In the To field, type your recipient's fax number You can even send a secure international fax — just include t…

911 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

22 Experts available now in Live!

Get 1:1 Help Now