问题描述:从同事处copy的eclipse用着用着突然就启动不了,每次启动就生成了hs_err_pid4468.log类文件,文件中的内容如下类似

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x76e42d24, pid=8064, tid=6388
#
# JRE version: 6.0_23-b05
# Java VM: Java HotSpot(TM) Client VM (19.0-b09 mixed mode windows-x86 )
# Problematic frame:
# C  [ntdll.dll+0x52d24]
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#

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

Current thread (0x575b3400):  JavaThread "Bundle File Closer" daemon [_thread_in_native, id=6388, stack(0x5a400000,0x5a500000)]

siginfo: ExceptionCode=0xc0000005, writing address 0x03000000

Registers:
EAX=0x03000000, EBX=0xd6a4192e, ECX=0x16594666, EDX=0x00001659
ESP=0x5a4ffa30, EBP=0x5a4ffa64, ESI=0x5935ee71, EDI=0xd6a40000
EIP=0x76e42d24, EFLAGS=0x00010206

Register to memory mapping:

EAX=0x03000000
0x03000000 is pointing to unknown location

EBX=0xd6a4192e
0xd6a4192e is pointing to unknown location

ECX=0x16594666
0x16594666 is an unallocated location in the heap

EDX=0x00001659
0x00001659 is pointing to unknown location

ESP=0x5a4ffa30
0x5a4ffa30 is pointing into the stack for thread: 0x575b3400
"Bundle File Closer" daemon prio=6 tid=0x575b3400 nid=0x18f4 runnable [0x5a4ff000]
   java.lang.Thread.State: RUNNABLE

EBP=0x5a4ffa64
0x5a4ffa64 is pointing into the stack for thread: 0x575b3400
"Bundle File Closer" daemon prio=6 tid=0x575b3400 nid=0x18f4 runnable [0x5a4ff000]
   java.lang.Thread.State: RUNNABLE

ESI=0x5935ee71
0x5935ee71 is pointing to unknown location

EDI=0xd6a40000
0xd6a40000 is pointing to unknown location

Top of Stack: (sp=0x5a4ffa30)
0x5a4ffa30:   00000000 022c0000 5936b528 5a4ffa54
0x5a4ffa40:   76e42c78 b002192d 16594461 00000001
0x5a4ffa50:   586914e8 5a4ffa6c 48000000 00000001
0x5a4ffa60:   5936b520 5a4ffa7c 76e42c78 5936b528
0x5a4ffa70:   7c36355a 44a2d860 5936b520 5a4ffa90
0x5a4ffa80:   76f8c3d4 022c0000 00000000 5936b528
0x5a4ffa90:   5a4ffad8 7c363593 022c0000 00000000
0x5a4ffaa0:   5936b528 7c36355a 58685618 44a2d860

Instructions: (pc=0x76e42d24)
0x76e42d14:   c1 ea 10 0b df 0b c8 8b 06 c7 45 f8 01 00 00 00
0x76e42d24:   89 30 8b 45 e0 8b 55 e4 8d 7e 08 f0 0f c7 0f 3b

Stack: [0x5a400000,0x5a500000],  sp=0x5a4ffa30,  free space=1022k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C  [ntdll.dll+0x52d24]
C  [ntdll.dll+0x52c78]
C  [kernel32.dll+0x4c3d4]
C  [MSVCR71.dll+0x3593]
C  [zip.dll+0x77d4]
j  java.util.zip.ZipFile.close()V+29
j  org.eclipse.osgi.baseadaptor.bundlefile.ZipBundleFile.close()V+56
j  org.eclipse.osgi.baseadaptor.bundlefile.MRUBundleFileList.dispatchEvent(Ljava/lang/Object;Ljava/lang/Object;ILjava/lang/Object;)V+32
J  org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(Ljava/util/Set;Lorg/eclipse/osgi/framework/eventmgr/EventDispatcher;ILjava/lang/Object;)V
v  ~StubRoutines::call_stub
V  [jvm.dll+0xf33c9]
V  [jvm.dll+0x188a91]
V  [jvm.dll+0xf3587]
V  [jvm.dll+0xf35eb]
V  [jvm.dll+0x11e780]
V  [jvm.dll+0x1ea6c4]
V  [jvm.dll+0x18843c]
C  [MSVCR71.dll+0xb381]
C  [kernel32.dll+0x4ed6c]
C  [ntdll.dll+0x6377b]
C  [ntdll.dll+0x6374e]

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j  java.util.zip.ZipFile.close(J)V+0
j  java.util.zip.ZipFile.close()V+29
j  org.eclipse.osgi.baseadaptor.bundlefile.ZipBundleFile.close()V+56
j  org.eclipse.osgi.baseadaptor.bundlefile.MRUBundleFileList.dispatchEvent(Ljava/lang/Object;Ljava/lang/Object;ILjava/lang/Object;)V+32
J  org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(Ljava/util/Set;Lorg/eclipse/osgi/framework/eventmgr/EventDispatcher;ILjava/lang/Object;)V
j  org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run()V+26
v  ~StubRoutines::call_stub

---------------  P R O C E S S  ---------------

Java Threads: ( => current thread )
  0x575b3800 JavaThread "Java indexing" daemon [_thread_blocked, id=8168, stack(0x59ff0000,0x5a0f0000)]
=>0x575b3400 JavaThread "Bundle File Closer" daemon [_thread_in_native, id=6388, stack(0x5a400000,0x5a500000)]
  0x575b2000 JavaThread "Thread-3" [_thread_blocked, id=7152, stack(0x58e20000,0x58f20000)]
  0x575b2c00 JavaThread "Thread-2" [_thread_blocked, id=1068, stack(0x59ef0000,0x59ff0000)]
  0x575b2800 JavaThread "[Timer] - Main Queue Handler" daemon [_thread_blocked, id=7324, stack(0x58f20000,0x59020000)]
  0x575b1c00 JavaThread "Worker-1" [_thread_blocked, id=5984, stack(0x58d20000,0x58e20000)]
  0x575b1400 JavaThread "Provisioning Event Dispatcher" daemon [_thread_blocked, id=6276, stack(0x58c20000,0x58d20000)]
  0x575b1000 JavaThread "Worker-0" [_thread_blocked, id=6576, stack(0x59030000,0x59130000)]
  0x575b0800 JavaThread "Framework Event Dispatcher" daemon [_thread_blocked, id=1056, stack(0x58b20000,0x58c20000)]
  0x575b0400 JavaThread "Start Level Event Dispatcher" daemon [_thread_blocked, id=8096, stack(0x58a20000,0x58b20000)]
  0x575afc00 JavaThread "State Data Manager" daemon [_thread_blocked, id=5452, stack(0x58920000,0x58a20000)]
  0x575af800 JavaThread "RMI TCP Accept-0" daemon [_thread_in_native, id=6692, stack(0x58320000,0x58420000)]
  0x575af000 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=6844, stack(0x57dd0000,0x57ed0000)]
  0x57584800 JavaThread "CompilerThread0" daemon [_thread_blocked, id=1404, stack(0x57cd0000,0x57dd0000)]
  0x575aec00 JavaThread "Attach Listener" daemon [_thread_blocked, id=7948, stack(0x57bd0000,0x57cd0000)]
  0x575ae400 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=5808, stack(0x57ad0000,0x57bd0000)]
  0x57582000 JavaThread "Surrogate Locker Thread (CMS)" daemon [_thread_blocked, id=6496, stack(0x579d0000,0x57ad0000)]
  0x5756ec00 JavaThread "Finalizer" daemon [_thread_blocked, id=6284, stack(0x578d0000,0x579d0000)]
  0x5756a800 JavaThread "Reference Handler" daemon [_thread_blocked, id=7160, stack(0x577d0000,0x578d0000)]
  0x022c9c00 JavaThread "main" [_thread_in_native, id=6300, stack(0x00030000,0x00130000)]

Other Threads:
  0x57566c00 VMThread [stack: 0x576d0000,0x577d0000] [id=7860]
  0x5769ec00 WatcherThread [stack: 0x58420000,0x58520000] [id=6752]

VM state:not at safepoint (normal execution)

VM Mutex/Monitor currently owned by a thread: None

Heap
 par new generation   total 118016K, used 107137K [0x046d0000, 0x0c6d0000, 0x0c6d0000)
  eden space 104960K,  89% used [0x046d0000, 0x0a2b0758, 0x0ad50000)
  from space 13056K, 100% used [0x0ad50000, 0x0ba10000, 0x0ba10000)
  to   space 13056K,   0% used [0x0ba10000, 0x0ba10000, 0x0c6d0000)
 concurrent mark-sweep generation total 393216K, used 35841K [0x0c6d0000, 0x246d0000, 0x446d0000)
 concurrent-mark-sweep perm gen total 131072K, used 29450K [0x446d0000, 0x4c6d0000, 0x546d0000)

Dynamic libraries:
0x00400000 - 0x0040e000  D:\tools\eclipse-zl\eclipse.exe
0x76df0000 - 0x76f2c000  C:\Windows\SYSTEM32\ntdll.dll
0x76f40000 - 0x77014000  C:\Windows\system32\kernel32.dll
0x74fc0000 - 0x7500a000  C:\Windows\system32\KERNELBASE.dll
0x6ef90000 - 0x6effd000  C:\Windows\SYSTEM32\SYSFER.DLL
0x76530000 - 0x765f9000  C:\Windows\system32\USER32.dll
0x76600000 - 0x7664e000  C:\Windows\system32\GDI32.dll
0x76f30000 - 0x76f3a000  C:\Windows\system32\LPK.dll
0x76930000 - 0x769cd000  C:\Windows\system32\USP10.dll
0x75570000 - 0x7561c000  C:\Windows\system32\msvcrt.dll
0x74100000 - 0x74184000  C:\Windows\WinSxS\x86_microsoft.windows.common-controls_6595b64144ccf1df_5.82.7601.17514_none_ec83dffa859149af\COMCTL32.dll
0x76890000 - 0x76930000  C:\Windows\system32\ADVAPI32.dll
0x76870000 - 0x76889000  C:\Windows\SYSTEM32\sechost.dll
0x75310000 - 0x753b1000  C:\Windows\system32\RPCRT4.dll
0x76650000 - 0x7666f000  C:\Windows\system32\IMM32.DLL
0x75240000 - 0x7530c000  C:\Windows\system32\MSCTF.dll
0x72000000 - 0x72014000  D:\tools\eclipse-zl\plugins\org.eclipse.equinox.launcher.win32.win32.x86_1.0.200.v20090519\eclipse_1206.dll
0x744d0000 - 0x744d9000  C:\Windows\system32\VERSION.dll
0x73b90000 - 0x73bd0000  C:\Windows\system32\uxtheme.dll
0x75630000 - 0x7578c000  C:\Windows\system32\ole32.dll
0x74e90000 - 0x74e9c000  C:\Windows\system32\CRYPTBASE.dll
0x6d8a0000 - 0x6db4c000  C:\Program Files\Java\jdk1.6.0_23\jre\bin\client\jvm.dll
0x6f800000 - 0x6f832000  C:\Windows\system32\WINMM.dll
0x7c360000 - 0x7c3b6000  C:\Windows\system32\MSVCR71.dll
0x74e40000 - 0x74e8c000  C:\Windows\system32\apphelp.dll
0x6d850000 - 0x6d85c000  C:\Program Files\Java\jdk1.6.0_23\jre\bin\verify.dll
0x6d3d0000 - 0x6d3ef000  C:\Program Files\Java\jdk1.6.0_23\jre\bin\java.dll
0x6d330000 - 0x6d338000  C:\Program Files\Java\jdk1.6.0_23\jre\bin\hpi.dll
0x75410000 - 0x75415000  C:\Windows\system32\PSAPI.DLL
0x6d890000 - 0x6d89f000  C:\Program Files\Java\jdk1.6.0_23\jre\bin\zip.dll
0x6d6b0000 - 0x6d6c3000  C:\Program Files\Java\jdk1.6.0_23\jre\bin\net.dll
0x769d0000 - 0x76a05000  C:\Windows\system32\WS2_32.dll
0x758d0000 - 0x758d6000  C:\Windows\system32\NSI.dll
0x74980000 - 0x749bc000  C:\Windows\system32\mswsock.dll
0x74970000 - 0x74976000  C:\Windows\System32\wship6.dll
0x74240000 - 0x74245000  C:\Windows\System32\wshtcpip.dll
0x74840000 - 0x74884000  C:\Windows\system32\DNSAPI.dll
0x740e0000 - 0x740fc000  C:\Windows\system32\IPHLPAPI.DLL
0x740d0000 - 0x740d7000  C:\Windows\system32\WINNSI.DLL
0x72c90000 - 0x72c96000  C:\Windows\system32\rasadhlp.dll
0x71fa0000 - 0x71fd8000  C:\Windows\System32\fwpuclnt.dll
0x6d600000 - 0x6d609000  C:\Program Files\Java\jdk1.6.0_23\jre\bin\management.dll
0x749c0000 - 0x749d6000  C:\Windows\system32\CRYPTSP.dll
0x74760000 - 0x7479b000  C:\Windows\system32\rsaenh.dll
0x74590000 - 0x745a7000  C:\Windows\system32\USERENV.dll
0x74f40000 - 0x74f4b000  C:\Windows\system32\profapi.dll
0x73bd0000 - 0x73be0000  C:\Windows\system32\NLAapi.dll
0x73410000 - 0x73420000  C:\Windows\system32\napinsp.dll
0x72f30000 - 0x72f42000  C:\Windows\system32\pnrpnsp.dll
0x72f20000 - 0x72f28000  C:\Windows\System32\winrnr.dll
0x72f10000 - 0x72f1d000  C:\Windows\system32\wshbth.dll
0x6d6d0000 - 0x6d6d9000  C:\Program Files\Java\jdk1.6.0_23\jre\bin\nio.dll
0x754e0000 - 0x7556f000  C:\Windows\system32\OLEAUT32.DLL
0x581d0000 - 0x58229000  D:\tools\eclipse-zl\configuration\org.eclipse.osgi\bundles\542\1\.cp\swt-win32-3550.dll
0x76a10000 - 0x76a8b000  C:\Windows\system32\comdlg32.dll
0x76a90000 - 0x76ae7000  C:\Windows\system32\SHLWAPI.dll
0x73670000 - 0x7380e000  C:\Windows\WinSxS\x86_microsoft.windows.common-controls_6595b64144ccf1df_6.0.7601.17514_none_41e6975e2bd6f2b2\COMCTL32.dll
0x758e0000 - 0x7652a000  C:\Windows\system32\SHELL32.dll
0x76cf0000 - 0x76de5000  C:\Windows\system32\WININET.dll
0x75790000 - 0x758c7000  C:\Windows\system32\urlmon.dll
0x75070000 - 0x7518d000  C:\Windows\system32\CRYPT32.dll
0x74fb0000 - 0x74fbc000  C:\Windows\system32\MSASN1.dll
0x76670000 - 0x7686e000  C:\Windows\system32\iertutil.dll
0x73370000 - 0x73383000  C:\Windows\system32\dwmapi.dll
0x58060000 - 0x58074000  D:\tools\eclipse-zl\configuration\org.eclipse.osgi\bundles\542\1\.cp\swt-gdip-win32-3550.dll
0x734e0000 - 0x73670000  C:\Windows\WinSxS\x86_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.7601.17825_none_72d273598668a06b\gdiplus.dll
0x73240000 - 0x7333b000  C:\Windows\system32\WindowsCodecs.dll
0x58270000 - 0x58278000  D:\tools\eclipse-zl\configuration\org.eclipse.osgi\bundles\68\1\.cp\os\win32\x86\localfile_1_0_0.dll
0x72d40000 - 0x72d7c000  C:\Windows\system32\oleacc.dll
0x73f10000 - 0x73f1f000  D:\tools\eclipse-zl\configuration\org.eclipse.osgi\bundles\71\1\.cp\jWinHttp-1.0.0.dll
0x6f2f0000 - 0x6f348000  C:\Windows\system32\WINHTTP.dll
0x6f1b0000 - 0x6f1ff000  C:\Windows\system32\webio.dll
0x72da0000 - 0x72dad000  C:\Windows\system32\dhcpcsvc6.DLL
0x72d80000 - 0x72d92000  C:\Windows\system32\dhcpcsvc.DLL
0x74f30000 - 0x74f3e000  C:\Windows\system32\RpcRtRemote.dll

VM Arguments:
jvm_args: -Dcom.sun.management.jmxremote -Dosgi.requiredJavaVersion=1.5 -Xms512m -Xmx1024m -Xmn128m -XX:PermSize=128m -XX:MaxPermSize=256m -XX:+DisableExplicitGC -Xnoclassgc -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:CmsInitatingOccupancyFraction=85
java_command: <unknown>
Launcher Type: generic

Environment Variables:
JAVA_HOME=C:\Program Files\Java\jdk1.6.0_23
PATH=C:/Program Files/Java/jdk1.6.0_23/bin/../jre/bin/client;C:/Program Files/Java/jdk1.6.0_23/bin/../jre/bin;C:\Program Files\Java\jdk1.6.0_23\bin;D:\alibaba\antx\dist\antx\bin;D:\alibaba\svn-win32-1.6.3\bin;D:\alibaba\maven-2.2.1\bin;D:\tools\maven\apache-maven-2.2.1\bin;C:\Program Files\Common Files\NetSarang;~-1RubyPathR\bin;D:\autotest\houtai\05picassowr_v2.0\install\svn\bin;c:\ruby\bin;C:\Program Files\Java\jdk1.6.0_23\bin;~-1RubyPathR\bin;D:\tools\install\svn\bin;D:\oracle\ora92\bin;C:\Program Files\Oracle\jre\1.3.1\bin;C:\Program Files\Oracle\jre\1.1.8\bin;C:\Program Files\Nice Systems\NICE Player Codec Pack\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;;C:\Program Files\Tencent\QQPCMgr\6.8.2387.401;C:\Program Files\TortoiseSVN\bin;C:\Program Files\SecureCRT" /f
USERNAME=shouwei.liusw
OS=Windows_NT
PROCESSOR_IDENTIFIER=x86 Family 6 Model 23 Stepping 10, GenuineIntel

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

OS: Windows 7 Build 7601 Service Pack 1

CPU:total 4 (4 cores per cpu, 1 threads per core) family 6 model 23 stepping 10, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3, sse4.1

Memory: 4k page, physical 3405428k(1476540k free), swap 6809100k(4168508k free)

vm_info: Java HotSpot(TM) Client VM (19.0-b09) for windows-x86 JRE (1.6.0_23-b05), built on Nov 12 2010 15:00:43 by "java_re" with MS VC++ 7.1 (VS2003)

time: Tue Aug 28 12:02:07 2012
elapsed time: 10 seconds

问题分析:尝试网上说的改eclipse.ini中的内存相关参数都没有解决,还是每次启动都不行,重新解压了一份之前备份的eclipse后,刚刚开始打开能正常,但

切换到之前用的workspace后,退出eclipse,再打开就无法打开了

解决方法:将之前的workspace删除,重新新建workspace,然后import从之前的工程就又可以正常启动了

eclipse 启动失败,出现hs_err_pid972.log类文件,文件中含JavaThread Bundle File Closer daemon类内容相关推荐

  1. eclipse启动失败,提示“发生了错误,请参阅日志文件.log

    eclipse启动失败,提示"发生了错误,请参阅日志文件.log 因为我的IntelliJ IDEA Community Edition安装的时候没有注意版本,导致很多问题无法处理,所以只能 ...

  2. Eclipse启动失败,提示查看.metadata文件夹下的.log文件

    Eclipse启动失败,提示查看.metadata文件夹下的.log文件 附上一些网上通用解决方法,方便以后查找: 尝试方法一:workspace目录下的.metadata目录整个删除.结果:未成功. ...

  3. Eclipse启动失败:No java virtual machine was found after searching the follwing locations

    Eclipse启动失败,错误信息如下如所示: 通过阅读错误信息,可以看到错误原因和 javaw.exe路径 有关: 打开eclipse.ini文件,也就是启动Eclipse的初始化文件: 在本地计算机 ...

  4. MySQL 启动失败报错无法更新pid文件

    一.问题描述 某次因MySQL故障,一线人员反馈MySQL启动,一直无法启动,报错:启动mysql失败 ERROR! The server quit without updating PID file ...

  5. 容器启动失败 ERROR: for log Cannot start service log: OCI runtime create failed: container_linux.go:346

    完整错误信息: ERROR: for log Cannot start service log: OCI runtime create failed: container_linux.go:346: ...

  6. java 中random类使用_Java中的天使和魔鬼:Unsafe类

    我们在看ConcurrentHashMap源码时经常看到Unsafe类的使用,今天我们来了解下Unsafe类. Java是一个安全的编程语言,它能最大程度的防止程序员犯一些低级的错误(大部分是和内存管 ...

  7. CentOS7 mysql启动失败且无log的原因分析

    用 systemctl start mysqld 启用mysql服务失败,失败后会有提示,让用 systemctl status mysqld 或者 journalctl -xe 来查看错误原因. s ...

  8. eclipse启动失败:An internal error occurred during: reload maven project

    2019独角兽企业重金招聘Python工程师标准>>> 1.找到workspace文件夹下的/.metadata文件夹,将其删除掉,然后在讲项目重新导入进去eclipse中.但是这个 ...

  9. Linux下dota2启动失败解决办法

    前段时间听说dota2有linux版本,果断下载安装了一个,当时搞驱动什么的把电脑搞挂了好几次,最后总算能跑了,然后换工作就好久没玩,这两天更新了好多东西之后,发现起不来了,不知道什么原因,尝试了很多 ...

  10. oracle00205报错,[Oracle] 数据库启动失败报错 ORA-00205: error in identifying control file

    有同事问我,他的数据库启动失败,报错如下: ORA-00205: error in identifying control file, check alert log for more info 这种 ...

最新文章

  1. 卸载ORACLE 11g
  2. FPGA设计心得(13)aurora的线速率及其用户时钟之间的关系?
  3. python编程从入门到实践看完了看什么-小白Python编程从入门到实践——列表是什么...
  4. 定位排查工作流的计算结果数据量不符合预期的方法
  5. java铝轮_为速度而生 JAVA Fuoco铝合金气动公路
  6. 冲刺阶段站立会议每天任务1
  7. 巧用 10分钟邮箱 申请小红伞 免费KEY 92天
  8. tdr上升时间什么设定_TDR的完整形式是什么?
  9. 【人工智能】德国人工智能技术发展现状和未来趋势
  10. 小程序label添加下划线
  11. Intel 计划在Linux kernel中引入 User Interrupts,效率是eventfd的10倍
  12. 泰山OFFICE技术讲座:中英文间隔,间隔以哪个字体为准?
  13. 宠物食品“味及”完成数百万天使轮+融资
  14. wdk与DDK有什么区别
  15. CT 三维重建的后处理方法
  16. Cocos2d游戏开发之如何解包获得pvr.ccz中的美术资源
  17. 西瑞克斯机顶盒cy-jc1320安装APP
  18. 利用pyecharts显示微信好友性别比例
  19. SpringBoot 整合 Dozer 映射框架
  20. LitCTF2023 郑州轻工业大学首届网络安全赛 WP 部分

热门文章

  1. Markdown是什么?
  2. 如何快速格式化重置Mac
  3. python爬取 东方财富/天天基金网 基金排行数据
  4. source insight 如何设置背景颜色
  5. Hash散列算法详细解析(五)
  6. word2016版本解决脚注分栏情况
  7. S7-1200使用集成库FB285控制G120变频器的基本步骤
  8. win10更改C盘下的用户文件夹名
  9. 音频文件编辑 android,音频剪辑编辑APP
  10. Python爬虫:无头浏览器爬虫