问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

应用程序错误,0×000000000是什么意思?

发布网友 发布时间:2022-07-15 07:16

我来回答

1个回答

热心网友 时间:2023-11-24 17:12

运行某些程序的时候,有时会出现内存错误的提示,然后该程序就关闭。
“0x????????”指令引用的“0x????????”内存。该内存不能为“read”。
“0x????????”指令引用的“0x????????”内存,该内存不能为“written”。
不知你出现过类似这样的故障吗?(0x后面内容有可能不一样。)
一般出现这个现象有方面的,一是硬件,即内存方面有问题,二是软件,这就有多方面的问题了。
1、微软IE缓冲溢出漏洞引起

2、内存或虚拟内存地址使用冲突造成
程序的运行需要分配一定的内存地址给程序使用,当程序结束时释放留出空间让给新的程序使用,win是多任务的系统
有时前程序未结束 又有新的任务开始
到底要多少内存或虚拟内存来保证我们同时运行的工作任务呢?也许win在这个问题上没弄好,所以有此错误常常发生,一般运行大型软件或多媒体后出现这种情况

3、劣质内存条也会出现这个问题
一般来说,内存出现问题的可能性并不大,主要方面是:内存条坏了、内存质量有问题,还有就是2个不同牌子不同容量的内存混插,也比较容易出现不兼容的情况,同时还要注意散热问题,特别是超频后。你可以使用MemTest
这个软件来检测一下内存,它可以彻底的检测出内存的稳定度。
假如你是双内存,而且是不同品牌的内存条混插或者买了二手内存时,出现这个问题,这时,你就要检查是不是内存出问题了或者和其它硬件不兼容。

4、微软WINDOWS系统的漏洞,

windows把内存地址0X00000000到0X0000ffff指定为分配null指针的地址范围,如果程序试图访问这一地址,则认为是错误。c/c++编写的程序通常不进行严格的错误检查,当采用malloc来分配内存而可供分配的地址空间不够的情况下返回null指针。但是代码不检查这种错误,认为地址分配已经成功,于是就访问0X00000000的地址,于是就发生内存违规访问,同时该进程被终止。

ASCII字符填充组成的pif文件时会出现以下情况:
一个非法的pif文件(用ascii字符\'x\'填充)至少要369字节,系统才认为是一个合法的pif文件,才会以pif的图标[pifmgr.dll,0]显示,才会在属性里有程序、
字体、内存、屏幕”等内容。而且仅仅当一个非pif文件的大小是369字节时察看属性的“程序”页时,不会发生程序错误,哪怕是370字节也不行。当对一个大于369字节的非法pif文件察看属性的“程序”页时,Explorer会出错,提示:\'***\'指令引用的\'***\'内存。该内存不能为\'read\'
,问题出在pif文件的16进制地址:
0x00000181[0x87]0x00000182[0x01]和
0x00000231[0xC3]0x00000232[0x02]
即使是一个合法pif文件,只要改动这四处的任意一处,也会引起程序错误。而只
要把0x00000181和0x00000182的值改为[0xFF][0xFF],那么其它地址任意更改
都不会引起错误。

5、可能没有完全正确安装apache服务,且启动了它的原故; 把服务中的
OracleOraHomeXXHTTPServer改成停止

6、应用程序没有检查内存分配失败

程序需要一块内存用以保存数据时,就需要调用操作系统提供的“功能函数”来申请,如果内存分配成功,函数就会将所新开辟的内存区地址返回给应用程序,应用程序就可以通过这个地址使用这块内存。这就是“动态内存分配”,内存地址也就是编程中的“指针”。

内存不是永远都招之即来、用之不尽的,有时候内存分配也会失败。当分配失败时系统函数会返回一个0值,这时返回值“0”已不表示新启用的指针,而是系统向应用程序发出的一个通知,告知出现了错误。作为应用程序,在每一次申请内存后都应该检查返回值是否为0,如果是,则意味着出现了故障,应该采取一些措施挽救,这就增强了程序的“健壮性”。

若应用程序没有检查这个错误,它就会按照“思维惯性”认为这个值是给它分配的可用指针,继续在之后的运行中使用这块内存。真正的0地址内存区保存的是计算机系统中最重要的“中断描述符表”,绝对不允许应用程序使用。在没有保护机制的操作系统下(如DOS),写数据到这个地址会导致立即死机,而在健壮的操作系统中,如Windows等,这个操作会马上被系统的保护机制捕获,其结果就是由操作系统强行关闭出错的应用程序,以防止其错误扩大。这时候,就会出现上述的“写内存”错误,并指出被引用的内存地址为“0x00000000”。

内存分配失败故障的原因很多,内存不够、系统函数的版本不匹配等都可能有影响。因此,这种分配失败多见于操作系统使用很长时间后,安装了多种应用程序(包括无意中“安装”的病毒程序),更改了大量的系统参数和系统文件之后。

7、应用程序由于自身BUG引用了不正常的内存指针

在使用动态分配的应用程序中,有时会有这样的情况出现:程序试图读写一块“应该可用”的内存,但不知为什么,这个预料中可用的指针已经失效了。有可能是“忘记了”向操作系统要求分配,也可能是程序自己在某个时候已经注销了这块内存而“没有留意”等等。注销了的内存被系统回收,其访问权已经不属于该应用程序,因此读写操作也同样会触发系统的保护机制,企图“违法”的程序唯一的下场就是被操作终止运行,回收全部资源。计算机世界的法律还是要比人类有效和严厉得多啊!

像这样的情况都属于程序自身的BUG,你往往可在特定的操作顺序下重现错误。无效指针不一定总是0,因此错误提示中的内存地址也不一定为“0x00000000”,而是其他随机数字。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
秦皇岛润奥森商贸有限公司怎么样? 秦皇岛港务局实业服务公司劳保用品商店怎么样? 秦皇岛市奥尔玛电器有限公司怎么样? 关于消防上的问题,大家帮帮忙! 嘉兴哪里有考消控证 开个家政公司需要多少钱 家政公司加盟好还是自己做好 梦见我想救鸳鸯的预兆 梦见天边有一对鸳鸯 \"崂山茶韵\"报价 王者荣耀 王者点券可以送给好友吗? 应用程序错误 0x08a70068指令引用的00x08a70068内存. 不能为written 怎么解决 开机显示应用程序错误”0x0108f600指令应用的:0x00000000内存,该内存不能为'Written” 应用程序发生异常 unknown software exception (0xc0000096)位置为 0x008d8000 Ox80808080内存不能为read 珍宝蟹放冰箱冷藏里死了一天了还能吃吗? 天府煤矿具体位置在哪里? 天府矿务局三矿现状 摄影设备日常维护:应该怎么存放 生活污水处理设备如何正确存放 离子交换水处理设备如何存放 院子里散养哪几种花,不用管理,也能开出一片花海? 黄色花盆是什么花?小凤仙?挺常见的 这是什么花,叫啥名? 在公园经常见到这种花,请问这是什么花? 我初一到庙里烧香。烧的香从半截就着了,听有些人说是结香。能解释... 结香是什么意思 Rubber 是什么意思 我的被人盗用了怎么办? 怎么打杨戬 被别人盗用了怎么办? 应用程序错误 ox08c90068指令引用 的ox08c90068内存不能为written内存不能为writt 应用程序错误 怎么办 bpel的compensationhandler标签的涵义 虚假重组 在不安装假体的情况下,做阴茎整形手术可以延长阴茎长度多少厘米? 象印保温杯sm-ja36-pr杯口设计那个中栓是干什么用的啊?只是装饰吗? 金苹果蛋糕和心岸蛋糕那个好吃? JA36-800D济南二机床机械压力机制动器问题 辽a5ja36车牌有主吗 盘点法国战争喜剧片,【在线观看】免费百度云资源 深圳喔刷信息技术有限公司怎么样? 观测日全食具体有哪些注意点 拟定协议是什么意思 拟好合同是什么意思 房屋状态为合同拟定状态意思 拟定合同条款的“拟”是什么意思? 活的大龙虾买回家一会死了还能吃吗 昨晚刚买的龙虾,昨晚没烧~准备第二天中午烧,可现在过来一看,死了一半了,请问这些死龙虾还可以吃吗? 季子挂剑的翻译 大理地区做阴茎假体手术有什么风险没有?