您的位置首页百科问答

内存不能为read的原因

内存不能为read的原因

的有关信息介绍如下:

内存不能为read的原因

很多电脑操作者都碰到过“内存不能为read”这种情况(0X????????”指令引用的“0x00000000”内存,该内存不能为“read”或“written”)。轻者直接点“确定”就没事了,重者点了“确定”之后,打开的程序就会关闭,很让人苦恼,那么到底是什么原因导致“内存不能为read”呢?

内存分配失败。

每打开一个程序,都需要占用内存的一块地方用来存储数据。这需要操作系统进行申请,如果内存分配成功了,操作系统就会把分配出的内存地址发给该程序,该程序就可以通过这个地址来使用这块内存。但是内存分配也不是全部都能成功,如果失败,就会返回一个数字“0”,告诉该程序这块地方已经有程序使用了,程序在使用内存之前,都会扫描有没有数字“0”。但是有些程序没有扫描,还会继续的往该内存地址写入数据,内存就会终止该程序,操作系统扫描到这个事件后就会发出一个错误(内存不能为read),并指明发生错误的内存地址(“0x00000000”内存)。

程序由于自身的BUG导致内存路径引用错误。

一个已打开的程序(有时候打开时间很长了)试图再访问内存给它分配的空间,但是该空间的分配已经失效,也就是现在不属于这个已打开的程序。但是该程序还是试图写入或读取,就会发生错了,系统扫描到以后,就会返回“某某内存错误,该内存不能为“read”或“written””。​