为什么用 windbg 看 !address 显示出的Free是128T 大小?

总是被朋友问,用 !address -summary 显示出上面的 Free ≈ 128T 到底是什么意思?我的空闲内存不可能有这么大,不管怎么说,先上命令。

0:009> !address -summary--- Usage Summary ---------------- RgnCount ----------- Total Size -------- %ofBusy %ofTotal
Free                                     58     7ffe`d6410000 ( 127.995 TB)          100.00%
<unknown>                                65        1`22935000 (   4.540 GB)  97.59%    0.00%
MappedFile                               15        0`031e9000 (  49.910 MB)   1.05%    0.00%
Image                                   194        0`02d03000 (  45.012 MB)   0.94%    0.00%
Stack                                    30        0`00dc0000 (  13.750 MB)   0.29%    0.00%
Heap                                     17        0`0040d000 (   4.051 MB)   0.09%    0.00%
Other                                     8        0`001dd000 (   1.863 MB)   0.04%    0.00%
TEB                                      10        0`00014000 (  80.000 kB)   0.00%    0.00%
PEB                                       1        0`00001000 (   4.000 kB)   0.00%    0.00%--- Type Summary (for busy) ------ RgnCount ----------- Total Size -------- %ofBusy %ofTotal
MEM_PRIVATE                             124        1`23b09000 (   4.558 GB)  97.97%    0.00%
MEM_MAPPED                               22        0`033d4000 (  51.828 MB)   1.09%    0.00%
MEM_IMAGE                               194        0`02d03000 (  45.012 MB)   0.94%    0.00%--- State Summary ---------------- RgnCount ----------- Total Size -------- %ofBusy %ofTotal
MEM_FREE                                 58     7ffe`d6410000 ( 127.995 TB)          100.00%
MEM_RESERVE                              55        1`24c09000 (   4.574 GB)  98.32%    0.00%
MEM_COMMIT                              285        0`04fd7000 (  79.840 MB)   1.68%    0.00%--- Protect Summary (for commit) - RgnCount ----------- Total Size -------- %ofBusy %ofTotal
PAGE_READONLY                           108        0`02906000 (  41.023 MB)   0.86%    0.00%
PAGE_EXECUTE_READ                        32        0`020b4000 (  32.703 MB)   0.69%    0.00%
PAGE_READWRITE                          101        0`005aa000 (   5.664 MB)   0.12%    0.00%
PAGE_WRITECOPY                           24        0`0002b000 ( 172.000 kB)   0.00%    0.00%
PAGE_EXECUTE_READWRITE                   10        0`00028000 ( 160.000 kB)   0.00%    0.00%
PAGE_READWRITE | PAGE_GUARD              10        0`00020000 ( 128.000 kB)   0.00%    0.00%--- Largest Region by Usage ----------- Base Address -------- Region Size ----------
Free                                      1`40006000     7ff3`bde7a000 ( 127.952 TB)
<unknown>                              7ff4`fdf80000        1`00020000 (   4.000 GB)
MappedFile                                0`22fc0000        0`01a07000 (  26.027 MB)
Image                                  7ffc`16c04000        0`008ca000 (   8.789 MB)
Stack                                     0`006d0000        0`0017c000 (   1.484 MB)
Heap                                      0`22c3c000        0`00101000 (   1.004 MB)
Other                                     0`00d50000        0`00181000 (   1.504 MB)
TEB                                       0`00270000        0`00002000 (   8.000 kB)
PEB                                       0`0026f000        0`00001000 (   4.000 kB)

从上面输出看,当前空闲空间是Free=127.995 T ,那这是什么意思呢?这要从 地址总线 说起, CPU 从内存中拿数据需要走 地址总线,1个地址线可以传递 1/0 两个状态,16根总线就可以同时传递16个 1/0 状态,也就可以拥有 2 的 16 个地址个数,地址范围是 0x00000000 - 0xffffffff,比如 0x005aa000 就是这范围中的一个。

有了这个基础,再回过头来看下,目前很多的机器,数据总线是 64 根,但地址总线只有 48 根,能表示的地址个数就是 2 的 48次方,也就是 256T,当然这是理论上的最大可寻址空间,而用户区大概占用一半,也就是 128T,不过这已经足够覆盖现如今大家用的 内存条大小  了。

031c59d7a620b867f7d4814c10830026.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/290280.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

DeepMind 的马尔可夫决策过程(MDP)课堂笔记

DeepMind Teaching by David Silver 视频课程链接&#xff08;Youtube资源&#xff0c;需梯子&#xff09;&#xff1a;https://youtu.be/lfHX2hHRMVQ 文章目录DeepMind Teaching by David Silver1. 马尔可夫过程&#xff08;Markov Processes&#xff09;2. 马尔可夫回报过程…

C和指针之字符串编程练习3

1、问题 编写函数类似strcat函数,但是不会溢出目标数组&#xff0c;结果必须是一个正真的字符串 2、实现代码 #include <stdio.h> #include <string.h>//编写函数类似strcpy函数,但是不会溢出目标数组&#xff0c;结果必须是一个正真的字符串 char *my_strcpy(cha…

深入Java集合学习系列:ConcurrentHashMap之实现细节

http://www.iteye.com/topic/344876 ConcurrentHashMap是Java 5中支持高并发、高吞吐量的线程安全HashMap实现。在这之前我对ConcurrentHashMap只有一些肤浅的理解&#xff0c;仅知道它采用了多个锁&#xff0c;大概也足够了。但是在经过一次惨痛的面试经历之后&#xff0c;我觉…

基于小波变换的信号降噪处理及仿真研究_信号处理方法推荐--1(转载自用,侵删)...

综述作者&#xff1a;aresmiki链接&#xff1a;https://www.zhihu.com/question/23701194/answer/167005497来源&#xff1a;知乎著作权归作者所有。商业转载请联系作者获得授权&#xff0c;非商业转载请注明出处。非平稳信号处理应该是现在信号处理技术最新的也是最热的研究方…

js温故而知新11(AJAX)——学习廖雪峰的js教程

Asynchronous JavaScript and XML&#xff0c;意思就是用JavaScript执行异步网络请求。 如果仔细观察一个Form的提交&#xff0c;你就会发现&#xff0c;一旦用户点击“Submit”按钮&#xff0c;表单开始提交&#xff0c;浏览器就会刷新页面&#xff0c;然后在新页面里告诉你操…

linux下重启mysql php nginx

# /etc/init.d/mysql restart # /etc/init.d/php-fpm restart # /etc/init.d/nginx restart转载于:https://www.cnblogs.com/yiluxiuxing/p/4140627.html

C和指针之字符串编程练习9(在参数1中查找匹配参数2额任意字符)

1、问题 函数应该在第一个参数中进行查找&#xff0c;并返回匹配第二个参数所包含的字符的数目 2、代码实现 #include <stdio.h> #include <string.h>//函数应该在第一个参数中进行查找&#xff0c;并返回匹配第二个参数所包含的字符的数目 int count_chars(char…

最流行的 .NET 开源项目合集

Github 上有很多优秀的 .NET 开源项目&#xff0c;它们很适合用来学习 .NET 、设计模式和架构。nopCommerce https://github.com/nopSolutions/nopCommercestar: 7k ⭐nopCommerce 是最受欢迎最好的开源电子商务购物车解决方案之一&#xff0c;它基于 ASP.NET Core&#xff…

绿米开关如何重置_三种墙壁开关:绿米、调光、凌动/米家之间的异同

三种墙壁开关&#xff1a;绿米、调光、凌动/米家之间的异同2020-06-18 18:17:179点赞28收藏6评论三种墙壁开关&#xff1a;绿米、调光、凌动/米家之间的异同详细讲解绿米Aqara智能墙壁开关、Yeelight调光开关(86盒版)、Yeelight凌动开关/米家墙壁开关(米家墙壁开关也是Yeelight…

NES模拟器开发-PPU笔记

20151008 占坑,暂时没弄清楚PPU数据如何初始化,绘制顺序等. 转载于:https://www.cnblogs.com/Red_angelX/p/4860497.html

phpRedisAdmin 安装

phpRedisAdmin是一个web端管理redis的工具&#xff0c;每次都是命令行操作&#xff0c;今天安装了下&#xff0c;做个笔记[rootlocalhost linshi]# git clone https://github.com/ErikDubbelboer/phpRedisAdmin.git Initialized empty Git repository in /root/linshi/phpRedis…

GFS(Genetic Fuzzy Systems)—— 基于专家先验规则库和遗传算法相结合的智能体决策算法

文章目录1. FIS 系统&#xff08;Fuzzy Inference Systems&#xff09;1.1 什么是 FIS 系统&#xff1f;1.2 使用 FIS 算法的几个步骤2. GFS 系统&#xff08;GA FIS&#xff09;2.1 什么是基因遗传算法&#xff08;GA&#xff09;?2.2 使用GA算法进化FIS规则库在大规模的多智…

3-unit1 IPv6网络的管理

##########IPv6网络的管理#############学习目标了解IPv6管理IPv6##)IPv6简介Internet Protocol Version 6IPv6是IETF&#xff08;和互联网工程任务组&#xff09;设计的用与替代现行版本IP协议的下一代IP协议。IPv6采用128位2进制数码表示##IPv6示意图:##IPv6表示方式为方便操…

C和指针之字符串编程练习8实现char *my_strnchr(char const *str, int ch, int which)

1、问题 编写函数类似strchr函数,但是它有3个参数,第三个参数是1, 这个函数的功能就和strchr完全一样, 如果第三个参数是2,这个函数就返回一个指向ch字符在str字符串第二次出现的位置的指针,以此类推 2、代码实现 1 #include <stdio.h>2 #include <string.h>3…

Xamarin效果第一篇之时间轴

一直都想找个时间玩玩移动端,中间也去各种的调研快速的方式去开发;过程中还是太浮躁木有沉下心去学习;好早尝试过Flutter,二点让我不爽:1、配置环境好费劲(VS把我惯坏了)&#xff1b;2、套娃的写法真是恶心;来看看酸爽不:因为一直都是C#开发,所以这次再次摸索Xamarin去开发;前面…

bootstrap tabale 点击_jquery+bootstrap实现tab切换, 每次切换时都请求数据, 点击提交分别向不同的地址提交数据...

今天一个朋友叫帮做一个tab切换, 每一个tab内容区域都是从后台取出的数据, 这些数据要用表格的形式显示处理, 并且表格的内容区域可以修改, 如下所示:例子查看请演示查看.截图如图所示:实现步骤:几个需要注意的点:1. tab部分加一个data-id, 当中的id与下面要显示的具体内容的ta…

AJAX+json+jquery实现预加载瀑布流布局

AJAXjsonjquery实现预加载瀑布流布局转载于:https://www.cnblogs.com/zhujiabin/p/4860954.html

Lync 小技巧-42-动态-IP-统一沟通-环境-IP-变更后-操作

1. 查看-你的-公网IPhttp://www.ip138.com/2. 修改-你的-公网A记录https://www.godaddy.com/3. 修改-你的-拓朴-For-边缘服务器3.1.远程-前端服务器3.2.下载-拓朴3.3.选择-边缘服务器3.4.选择-边缘服务器3.5.修改-公网IP116.230.255.783.5.发布-拓朴3.6.导出-拓朴3.7.复制-拓朴…

C和指针之字符串memcpy、memmove、memset使用总结

1、介绍memcpy、memmove、memset 1) void *memcpy(void *dest, const void *src, size_t n); 从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest所指的内存地址的起始位置中 2) void *memmove( void* dest, const void* src, size_t count ); 从src拷贝count个字节…

Blazor University (1)介绍 - 什么是 Blazor?

原文链接&#xff1a;https://blazor-university.com/overview/what-is-blazor/什么是 Blazor&#xff1f;Blazor 是一个单页应用程序开发框架。Blazor 这个名称是单词 Browser 和 Razor&#xff08;.NET HTML 视图生成引擎&#xff09;的组合/变异。这意味着 Blazor 不必在服务…