写点什么

介绍 Portable PDB

  • 2017-02-12
  • 本文字数:484 字

    阅读完需:约 2 分钟

为了调试编译的应用程序,有必要将 IL 代码或二进制的机器代码与源代码行进行匹配。虽然数据可以嵌入在应用程序中,但这会显著增加 EXE 或 DLL 文件的大小。取而代之的是,通常会使用单独的“symbols”文件。在 Windows 平台上,这被称为 PDB 或“程序数据库”。

早期 PDB 格式是为了 C 和 C++ 设计的,发展了多年以来现在已经支持.NET 了。不幸的是,这种格式一直以来都被认为是专有的,这就意味着它没有很好文档记录,而且只能使用 Windows 库读取。

有了.NET Core,就需要一个新的跨平台 PDB 库。然而,不仅仅只是转移现有的库,Microsoft 选择重写 Windows PDB 格式。新的 Portable PDB 格式删除了本地代码所需的功能,只保留了.NET 功能。通过这样做,可以简化格式,并显著减小 PDB 文件大小。

Portable PDB 格式是公开记录的,还有用来读取它的开源库。但有一些缺点:Portable PDB 格式不支持编辑及继续、FXCop 风格代码分析(Roslyn 代码分析可与运行)、性能分析工具、后编译构建步骤,如AOP、Code Contracts 或是.NET decompilers。这些局限会进行改进,但需要时间来升级工具以支持新的格式。

查看英文原文 Introducing Portable PDB

2017-02-12 18:002126
用户头像

发布了 218 篇内容, 共 78.5 次阅读, 收获喜欢 76 次。

关注

评论

发布
暂无评论
发现更多内容

碳达峰碳中和目标下,区块链如何赋能能源管理?

旺链科技

“创客北京2021”百度飞桨AI产业创新应用专项赛报名啦

百度大脑

人工智能 大数据

【GOTC 预告】王思宇:从 OpenKruise 看云原生应用负载发展趋势

阿里巴巴云原生

剑指“双碳”目标,浪潮云牵手中科谱光一起做「光谱捕手」

云计算

程序员35岁以后就真的要返乡种田了么?如果没田种怎么办?|话题

花花

话题讨论 话题 话题王者 话题广场

33岁公司倒闭,被迫走上大龄Java程序员求职之路

Java架构师迁哥

阿里JDK源码小册(2021版)火了!下载量超60W次!

Java架构师迁哥

百度VidPress Sports团队获SoccerNet-v2足球视频理解竞赛双料冠军

百度大脑

人工智能 欧洲杯 足球

念念不忘,必有回响!6月更文活动的一些总结

编程三昧

程序员 程序人生 代码人生

业务架构模块7 作业 王者荣耀商城异地多活

好吃不贵

业务架构

为什么有些人不喜欢低代码?

优秀

低代码

同程旅行基于 RocketMQ 高可用架构实践

阿里巴巴云原生

2021值得考虑的一类新型微服务架构:ServiceMesh

BoCloud博云

微服务

CodeDay#7 启动 | 北京欢迎你

蚂蚁集团移动开发平台 mPaaS

小程序 webview 移动开发 mPaaS

为什么 FaaS 系统的复杂性不会随着规模的增长而指数增长?

朱峰 Ben

Serverless Faas

AI技术在银行内部反欺诈中应用的新思路

索信达控股

人工智能 大数据 金融科技 风控 反欺诈 人工智能模型

收藏吃灰系列!阿里内部“SpringCloudAlibaba学习笔记”这细节讲解,神了

Java 程序员 架构 面试 微服务

HarmonyOS学习路之开发篇——公共事件与通知(二)

爱吃土豆丝的打工人

HarmonyOS 通知事件

时间管理:通过折叠时间放大时间价值

石云升

读书笔记 时间管理 7月日更

又曝出程序员删库跑路,业界何时能推出互联网企业和程序员之间的约束准则?|话题

三掌柜

话题讨论 话题 话题王者 话题广场

低代码“三合一”模式,解决产品研发系统沟通问题!

优秀

低代码

抑制不住的喜悦!耗时2个月整理的Java面试指南在Github上破百万star!

Java架构师迁哥

党建百年,矛盾论指导架构设计

三石

架构设计

超24W字,2021最新一线大厂Java高级架构师面试题总结,共计480页

Java架构师迁哥

浅谈大数据建模的主要技术:维度建模

云祁

大数据 数据仓库 维度建模 7月日更

Flink运行架构

五分钟学大数据

flink 7月日更

Hadoop 数据仓库建设实践(理论结合实践)

云祁

hadoop 数据仓库 7月日更

🏆 【JVM性能调优】「对象内存分配」虚拟机参数调优分析

码界西柚

GC jvm调优 内存分配 7月日更

5分钟速读之Rust权威指南(三十四)面向对象

wzx

rust

Qunar DNS体系建设

Qunar技术沙龙

DNS DNS服务器

SpringBoot 拦截器妙用,让你一个人开发整个系统的鉴权模块!

陈皮的JavaLib

Java 面试 springboot

介绍Portable PDB_.NET_Jonathan Allen_InfoQ精选文章