質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Cygwin

Cygwinは、Unixのような環境を、Windows上で構築させるコマンドラインインターフェースです。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

1回答

4075閲覧

JavaからnativeCode(C言語)呼び出し時のJava.exeプロセスのダウンについて

toto2323

総合スコア11

Cygwin

Cygwinは、Unixのような環境を、Windows上で構築させるコマンドラインインターフェースです。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

1クリップ

投稿2016/04/19 23:37

編集2016/04/19 23:38

JavaからnativeCode(C言語:確率分布関数)を呼び出す処理において、たまにエラーが発生し、処理が途中で終わってしまいます。※具体的には、サーバ側の処理において、Javaのプロセスが落ちてしまってます。
どなたか原因についてわかる方、ご教授ください。

◆実行環境
・WindowsServer2012 R2 64Bit
・Jboss Application Server 4.1
・Oracle12c
・Java1.7
・NativeCode:Cygwin1.dll

◆エラー内容-----------------------------------------------------------------------------------

A fatal error has been detected by the Java Runtime Environment:

EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x0000000060aeb6f3, pid=3640, tid=6524

JRE version: Java(TM) SE Runtime Environment (7.0_80-b15) (build 1.7.0_80-b15)

Java VM: Java HotSpot(TM) 64-Bit Server VM (24.80-b11 mixed mode windows-amd64 compressed oops)

Problematic frame:

V [jvm.dll+0x2ab6f3]

Core dump written. Default location: E:\jboss\bin\hs_err_pid3640.mdmp

If you would like to submit a bug report, please visit:

http://bugreport.java.com/bugreport/crash.jsp

--------------- T H R E A D ---------------

Current thread (0x000000000a503800): VMThread [stack: 0x000000000b5c0000,0x000000000b6c0000] [id=6524]

siginfo: ExceptionCode=0xc0000005, reading address 0x0000000011b8eb30
以下省略
[error occurred during error reporting (printing native stack), id 0xc0000005]

--------------- P R O C E S S ---------------
省略

VM Arguments:
jvm_args: -Xms2048m -Xmx2048m -Xss128k -XX:NewRatio=2 -XX:TargetSurvivorRatio=90 -XX:PermSize=256m -XX:MaxPermSize=256m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Djava.endorsed.dirs=E:\jboss/lib/endorsed -Dcom.sun.management.jmxremote.port=50000 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -verbose:gc -Xloggc:C:\work\tis_work\java_log\gc.log -Dfile.encoding=MS932 -Duser.language=ja -Djava.library.path=E:\jboss/lib;E:/oracle/product/12.1.0/dbhome_1/BIN;E:\oracle\product\12.1.0\dbhome_1\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0;E:\apache-ant-1.7.0\bin;E:\jboss\bin;E:\Java\jdk1.7.0_80\bin;C:\Program Files (x86)\Common Files\Acronis\SnapAPI;E:\Acronis\CommandLineTool; -Dwrapper.key=jNWJr2dg9FGG82SPxk0HwPTc3rBeX5sr -Dwrapper.port=32000 -Dwrapper.pid=4956 -Dwrapper.version=3.5.26-st -Dwrapper.native_library=wrapper -Dwrapper.arch=x86 -Dwrapper.service=TRUE -Dwrapper.cpu.timeout=10 -Dwrapper.jvmid=1 -Dwrapper.lang.domain=wrapper -Dwrapper.lang.folder=../lang
java_command: org.tanukisoftware.wrapper.WrapperSimpleApp org.jboss.Main -c mach -b IBBXDB61
Launcher Type: SUN_STANDARD

Environment Variables:
JAVA_HOME=E:\Java\jdk1.7.0_80
PATH=E:\oracle\product\12.1.0\dbhome_1\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0;E:\apache-ant-1.7.0\bin;E:\jboss\bin;E:\Java\jdk1.7.0_80\bin;C:\Program Files (x86)\Common Files\Acronis\SnapAPI;E:\Acronis\CommandLineTool;
USERNAME=XXXXXX
OS=Windows_NT
PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 63 Stepping 2, GenuineIntel

--------------- S Y S T E M ---------------

OS: Windows Server 2012 R2 , 64 bit Build 9600

CPU:total 4 (4 cores per cpu, 2 threads per core) family 6 model 63 stepping 2, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3, sse4.1, sse4.2, popcnt, avx, avx2, aes, erms, ht, tsc, tscinvbit

Memory: 4k page, physical 33422964k(24262440k free), swap 83754612k(72252908k free)

vm_info: Java HotSpot(TM) 64-Bit Server VM (24.80-b11) for windows-amd64 JRE (1.7.0_80-b15), built on Apr 10 2015 11:26:34 by "java_re" with unknown MS VC++:1600

time: Mon Apr 18 11:18:54 2016
elapsed time: 215 seconds


気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

もしヒントになれば、、、というレベルで、、、

記載の中で、
・「たまにエラーが発生し」
・「サーバ側の処理において」
・EXCEPTION_ACCESS_VIOLATION (0xc0000005)
とのことですので、何らかの処理をJavaで書いたサーバプログラムでCygwin1.dllを使っているというイメージで、何らかのメモリアクセスエラー(不正メモリアクセス)が原因では?と勝手に想像しました。

そこで、気になるのは、
Cygwin1.dllをマルチスレッドで、利用しているなどありませんでしょうか?
といっても、そもそもCygwin1.dllが、マルチスレッドセーフなのかどうかがわかりませんが、もし、マルチスレッドセーフでないDLLをマルチスレッドで呼び出しているとすると、想定外のメモリアクセスなどが、発生しエラーでダウンする可能性があるかと思います。

可能性のレベルですが・・・。すこしでも解決に近づければ。。。

投稿2016/04/20 03:09

ItoTomonori

総合スコア1283

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

toto2323

2016/04/20 05:01

ご回答ありがとうございます。 cygwin1.dllはスレッドセーフだと思われますので、別に原因があるような気がします。 現在、32BitのOSで動作しているシステムを64BitのOSで動作するよう対応しているのですが、32BitのOS上で実行した場合は、このような事象が発生しません。 基盤上の設定などで何か観点がありますでしょうか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問