内存不能“read,writen”

内存不能被读取和写入,我想大家一定见过这种类似的问题。最近公司一直出现这种问题:

而且有的时候桌面上的任何图标都是显示不完整,从事件查看器中出现很多莫名的提示错误。这个真的很头疼,为了弄清事件的来源(是否是系统出现问题)每一次都是重新启动。每次重启完成之后,系统就正常啦。但这也不能解决实际问题啊。问题好像就是系统在启动的时候,有些文件没有加载上或者是加载并不完整。

下面我希望和大家分享一下我的所得,有更好的方法大家可以一起去探讨啊!一般情况下出现这种问题有两根方面的原因:一是.硬件即内存方面的问题;二是软件,这个方面可就多啦。电脑硬件一般不是特别爱出现问题,可能的情况是内存条坏啦,存在质量问题;内存条和插槽接触不是很好,还有就是兼容性的问题。当然我们可以下载一个软件来检测内存的使用情况。现在就来说说软件的问题吧,原理大致是这样的,当系统中的某个程序把数据放置内存中的缓存区域的时候,程序需要操作系统提供的“功能函数”来为其分配内存空间。如果分配成功的话,函数将会把新开辟的内存地址返回给应用程序,应用程序就可以根据这个地址来使用这个内存空间。这就是“动态内存分配”。出现错误的原因就是内存并不是永远能够分配成功的。当分配失败的时候系统函数将会返回一个0值。而程序应用程序在每一次申请内存后都会检查返回值是否为“0”。如果是的话那就好说啦,应用程序一般都会采取一些自救的措施。如果应用程序没有检查这个错误呢,它就是认为这个“0”地址就是它将要使用的内存空间地址。实际上真正的“0”地址内存区域存储的是计算机系统中重要的“中断描述符表”,绝对不能够被应用程序占用。在windows操作系统中这个操作会被系统自我保护机制所捕获,结果就是这个应用程序将会被强行关闭。这个时候就会出现像上面的情况一样:内存不能被“read”,并指出被引用的内存地址不能为“0x000xxxxx”的错误。内存分配失败的原因很多:内存不足,系统中的函数出现错误等。这种情况多出现于系统已经使用很长时间,安装的很多应用软件,结果造成修给了大量的系统参数等。在动态分配应用程序的过程中,有可能会出现这样的情况:应用程序被分配的内存地址已经消失,程序本身在某个时间“注销”了这个内存空间。当这个内存空间被系统收回的时候,这个内存空间的访问权已经不再属于该应用程序,所以这个程序的读写操作同样会被系统终止掉!

基本上面是我自己的理解,下面是我个人的一些建议:首先先保证自己的系统是一个比较干净的系统,查杀系统中的病毒,让系统检查被***的可能。平时的使用中,对系统修复一些漏洞。使用一些稳定版的应用软件。还有就是一种:先停止掉“windows management instrumentation”这个服务,在运行里面输入“services.msc"打开服务管理界面--将这个服务停止。然后进到这个文件夹中:c:\windows\system32\Wbem\Repository 删除里面的所有文件(要是自己是在没有把握的话,可以先对这些文件做好备份),然后启动刚才停止的服务或者重新启动电脑也可以。被删除的文件会在注册表中的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WBEM\CIMOM\Autorecover MOFs 这个信息重新创建出来。

转载于:https://blog.51cto.com/weipengfei/390461

内存不能“read”相关推荐

  1. jar包部署shell脚本编写,在服务器上部署jar包,在Linux服务器上部署服务,设置编码格式,设置内存管理

    准备步骤: 1.安装java环境,知道java安装目录 2.将jar包拖放或发送至服务器中(目录自定义) 一.编写shell脚本,将以下代码放在shell脚本中,将shell脚本放在jar包同级目录下 ...

  2. JVM内存调优原则及几种JVM内存调优方法

    JVM内存调优原则及几种JVM内存调优方法 1.堆大小设置. 2.回收器选择. 1.在对JVM内存调优的时候不能只看操作系统级别Java进程所占用的内存,这个数值不能准确的反应堆内存的真实占用情况,因 ...

  3. JVM 常见异常及内存诊断

    栈内存溢出 栈内存大小设置:-Xss size 默认除了window以外的所有操作系统默认情况大小为 1MB,window 的默认大小依赖于虚拟机内存. 栈帧过多导致栈内存溢出 下述示例代码,由于递归 ...

  4. java中实现具有传递性吗_Java中volatile关键字详解,jvm内存模型,原子性、可见性、有序性...

    一.Java内存模型 想要理解volatile为什么能确保可见性,就要先理解Java中的内存模型是什么样的. Java内存模型规定了所有的变量都存储在主内存中.每条线程中还有自己的工作内存,线程的工作 ...

  5. python减小内存占用_如何将Python内存占用缩小20倍?

    当程序执行过程中RAM中有大量对象处于活动状态时,可能会出现内存问题,特别是在对可用内存总量有限制的情况下. 下面概述了一些减小对象大小的方法,这些方法可以显著减少纯Python程序所需的RAM数量. ...

  6. c++ 进程快照_如何在 Linux 中找出内存消耗最大的进程

    很多次,你可能遇见过系统消耗了过多的内存.如果是这种情况,那么最好的办法是识别出 Linux 机器上消耗过多内存的进程. -- Magesh Maruthamuthu(作者) 很多次,你可能遇见过系统 ...

  7. Redis 笔记(16)— info 指令和命令行工具(查看内存、状态、客户端连接数、监控服务器、扫描大key、采样服务器、执行批量命令等)

    Info 命令返回关于 Redis 服务器的各种信息和统计数值.通过给定可选的参数 section ,可以让命令只返回某一部分的信息. 1. 显示模块 server : 一般 Redis 服务器信息, ...

  8. NumPy — 创建全零、全1、空、arange 数组,array 对象类型,astype 转换数据类型,数组和标量以及数组之间的运算,NumPy 数组共享内存

    NumPy 简介 一个用 python 实现的科学计算包.包括: 1.一个强大的 N 维数组对象 Array : 2.比较成熟的(广播)函数库: 3.用于整合 C/C++ 和 Fortran 代码的工 ...

  9. c/c++的内存四区

    内存四区的图示 内存四区的代码案例 #include <stdio.h> void fun() {static int k = 10; //初始化的静态局部变量(data区的rw段)sta ...

  10. 阿里云Centos 解决挖矿程序:kdevtmpfsi--服务器CPU占用高、内存占用高

    前言 互联网存在很多的漏洞,如果我们使用不当,就会别被别人利用或者是盗取信息.之前在阿里云买的服务器,自己配置了nginx,mysql,redis等服务.由于在某些时候,本地程序开发中需要使用这些服务 ...

最新文章

  1. 《评人工智能如何走向新阶段》后记(再续3)
  2. SAP两款CRM产品各方面比较:SAP CRM vs SAP Cloud for Customer
  3. HDU/HDOJ 2612 Find a way 双向BFS
  4. python 基本类型,运算,循环
  5. asp.net DataGridTree表格树控件 下拉树 DropTree c# .net
  6. Python机器学习:多项式回归001什么是多项式回归
  7. Use Amazon VM to try Openstack (1) (with DevStack)
  8. Python 爬虫 (三) - Socket 网络编程
  9. 数据转换transform练习
  10. [Luogu P2522] [HAOI2011]Problem b (莫比乌斯反演)
  11. 数据库MySQL数据查询---模糊查询(like和relike(或regexp))
  12. 建议收藏!4款良心的时间轴软件
  13. 从链家爬取北京各区二手房房价进行分析并实现数据可视化
  14. 农夫山泉2面面试经历
  15. kali安装中文拼音输入法2
  16. 2018全球APP收入排行榜:腾讯全球第一!
  17. sql 当为空值时置0_SQL查询值为空时默认输出0的方法
  18. ESXI 6.7 环境 centos7.6 虚拟机安装tesla k80 显卡驱动失败问题解决
  19. linux计算md5的命令以及md5的原理
  20. 论文查重时图片会不会被检测?

热门文章

  1. RDIFramework.NET-.NET快速信息化系统开发整合框架 【开发实例 EasyUI】之产品管理(MVC版)...
  2. WampServer修改端口及菜单Localhost
  3. boundingBox getContentSize
  4. 关于页面动态添加控件(转)
  5. 在客户端为UltraWebGrid增加行
  6. Qt-5种布局控件详解
  7. C#调用C++的dll文件方法
  8. php用mssql还是用pdo,php使用pdo连接mssql server数据库实例
  9. python 矩阵元素赋值_对numpy中数组元素的统一赋值实例
  10. 调节树莓派终端窗口的字体大小