约有 7 项符合查询结果, 以下是第 1 - 1项。
费时 < 1 秒。
前段时间定为一个windows下面内存碎片的产生,虽然定为内存申请大小不当导致,但是还有几个问题不是很清楚,请牛人帮忙解答一下:
问题原因:
当申请的内存大小为64K时,即提交的内存可能会比64K稍微大一点,还有堆块头信息,使用malloc进行申请的。这样就会产生碎片,因为是频繁的申请,这是属于提交内存的解除需要4K对齐导致。
疑问:
1、难道使用windows的堆管理器解除提交后,这块内存不会同上面的free状态的内存合并。从现象来看没有合并。这样就导致内存4K对齐,将原先够大的内存块因为分隔为了free状态的内存与未提交的内存,导致碎片,难道heap管理器的内存不能对未提交的内存进行有效管理,即不会提交,也不会进行同free内存的合并。是否数据heap管理器本身存在的缺陷。
2 ...
Posted in WinDbg
by
新云
on 2010-10-07
原先程序在window xp下面运行,因为是媒体播放类程序,一般网口的数据吞吐量比较大,在几十M/每秒.程序在windows 下面运行都比较好,但是现在将程序移植到vista 或者win 7下面就出现网络丢包现象。
当机器的cpu在50%一下时,接受30M的媒体数据没有产生丢包,使用wirShark抓包工具也显示没有丢包。
当机器cpu达到50%以上或者更高时,接受30M的媒体数据就会产生丢包,在window xp下面不会出现。使用wirShark抓包工具也显示有丢包。
初步怀疑是vista与win7的线程调度策略发生了改变,如系统的精准定时器也出现了调度不过来的情况(已经想办法规避),但是网络收包丢失有没有办法规避或者哪里设置一下能够规避, ...
Posted in Windows内核调试
by
新云
on 2010-05-16
原先程序在window xp下面运行,因为是媒体播放类程序,一般网口的数据吞吐量比较大,在几十M/每秒.程序在windows 下面运行都比较好,但是现在将程序移植到vista 或者win 7下面就出现网络丢包现象。
当机器的cpu在50%一下时,接受30M的媒体数据没有产生丢包,使用wirShark抓包工具也显示没有丢包。
当机器cpu达到50%以上或者更高时,接受30M的媒体数据就会产生丢包,在window ...
Posted in Windows内核
by
新云
on 2010-05-16
http://bbs.dbgtech.net/viewthread.php?tid=266&highlight=%E8%93%9D%E5%B1%8F
Posted in WinDbg
by
新云
on 2010-05-07
附加不是一般30秒钟后会将目标进程挂起,难道没有挂起吗?挂起的话就能够知道是什么原因引起了。一般是加载锁被其他线程占用了,导致windbg不能获得而附加不上
Posted in WinDbg
by
新云
on 2010-03-09
我选择的就是最后一种,并且抓取的dump有1G多点,但是我却没有办法访问80000000以下的内存(即用户区的内存),我要怎样才能够显示用户态的栈信息,因为这个调试工具也是新学的,没有什么经验。
Posted in Windows内核调试
by
新云
on 2010-02-07
现在公司里面是采用IE进行程序开发的,设计到多线程与音视频显示等问题,现在IE进程出现蓝屏等问题,比较难定位,提示为显卡、声卡、或者虚拟光驱等都出现过蓝屏:
现在设置系统在蓝屏的时候记录一个full dump(内核态的),显示“显示驱动''死锁了,也能找到具体的线程,但是不知道这么样在系统收集系统内核dump的时候,能够把相应的用户态fulldump也收集一下,有没有这样的设置项,或者自己做一个插件也行。请高手提供一下。因为问题出现的概率比较低,10人测试2--3天才出现1次,比较郁闷。
Posted in Windows内核调试
by
新云
on 2010-02-06