Improve company productivity with a Business Account.Sign Up

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 588
  • Last Modified:

DEP / PAE running on server?

Hi

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.
0
Joe_Budden
Asked:
Joe_Budden
  • 3
  • 2
1 Solution
 
LMiller7Commented:
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.
0
 
Joe_BuddenAuthor Commented:
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?
0
 
LMiller7Commented:
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.
0
 
Joe_BuddenAuthor Commented:
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?
0
 
LMiller7Commented:
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.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

  • 3
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now