Skip to main content



      Home
Home » Eclipse Projects » Standard Widget Toolkit (SWT) » RCP 3.7 / SWT and Windows Data Execution Prevention(SWT and Windows Data Execution Prevention -> JVM termintates from time to time)
RCP 3.7 / SWT and Windows Data Execution Prevention [message #1705274] Thu, 13 August 2015 08:10 Go to next message
Eclipse UserFriend
Hello,

I'm working on an RCP 3.7/SWT application using Windows as operating system. Under MS Windows XP everything works fine. Under MS Windows Server 2008 I'm experiencing random system crashes on opening the file chooser dialog.

MS Windows Server 2008 has got a security policy that is called DEP (Data Execution Prevention). Basically the feature stops a process if it tries to access memory areas with asking the operating system for permission.

I'm wondering if the JVM crashes are related to the DEP policy. I have had a look at the Java implementation class of the file chooser dialog. There one can see that system memory is allocated using native calls.

Did anybody have similar problems? Is there a new RCP/SWT version that considers DEP on allocating memory?

Kind regards,

Heiko
Re: RCP 3.7 / SWT and Windows Data Execution Prevention [message #1705304 is a reply to message #1705274] Thu, 13 August 2015 11:29 Go to previous messageGo to next message
Eclipse UserFriend
There are no bugs in the Eclipse bug database about 'data execution prevention'. I did find a post from Dataloy Confluence that notes:

Quote:

Symptom

Dataloy crashes randomly on Windows 7/Windows Server 2008, but especially during startup or when when opening DDT module. The error tends to happen in ieEmbed.exe or rtutils.dll, but it might be elsewhere.

Cause

If DEP (Data Execution Protection) in Windows is enabled, it will interfere with Java Garbage Collection if it starts during a call to native code. These calls typically happen when getting a network connection and when opening the browser module.

Resolution

Exclude java.exe, javaw.exe and javaws.exe from DEP.

  1. Click 'Start'
  2. Right-click on 'Computer' and select 'Properties'
  3. 'Select Advanced System settings'
  4. Under 'Performance', click the 'Settings..' button
  5. Select the 'Data Execution Prevention' tab
  6. Click 'Add..' and add the files java.exe, javaw.exe and javaws.exe one by one. They are located in the Java installation directory or sometimes in WINDOWS/System32.




Brian.
Re: RCP 3.7 / SWT and Windows Data Execution Prevention [message #1705353 is a reply to message #1705304] Fri, 14 August 2015 02:16 Go to previous messageGo to next message
Eclipse UserFriend
Hello Brian,

thank you for adding the Dataloy Confluence quote. I'll exclude the Java runtime from DEP control and see
I this will have an effect. Interesting is the information that the crash might be due to a running garbage collection.

Kind regards,

Heiko
Re: RCP 3.7 / SWT and Windows Data Execution Prevention [message #1705396 is a reply to message #1705353] Fri, 14 August 2015 10:33 Go to previous messageGo to next message
Eclipse UserFriend
It's GC when there is external memory allocated using JNI. I don't know the cause, but I'd speculate that it has something to do with JIT'd code.
icon7.gif  Re: RCP 3.7 / SWT and Windows Data Execution Prevention [message #1709594 is a reply to message #1705396] Tue, 29 September 2015 09:08 Go to previous message
Eclipse UserFriend
Hello,

just a brief update on the issue: Removing our RCP executable and javaw.exe file from Windows 2008 Server DEP (Data Execution Prevention) resolved the problem.

Thank's for your help Razz

Heiko
Previous Topic:Adding Multiple Images to ExpandItem
Next Topic:FocusLost event raised when entering a Text
Goto Forum:
  


Current Time: Sun Jul 13 08:09:40 EDT 2025

Powered by FUDForum. Page generated in 0.04155 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top