背景 某个项目需要实现基础软件全部国产化,其中操作系统指定银河麒麟,数据库使用达梦V8,CPU平台的范围包括x64.龙芯.飞腾.鲲鹏等. 考虑到这些基础产品对.NETCore的支持,最终选择了3.1版本.主要原因就是龙芯搞了自研CPU架构,用户量不够大,.NET官方并没有专门针对龙芯的支持,而龙芯团队只对.netcore3.1做了适配(目前.net6适配测试中),至于其它的国产CPU则是基于Arm64和x64的,.NET官方都有支持. 因为只有x64支持通过包管理器安装,其它CPU架构下需要手工…
自定义VS程序异常处理及调试Dump文件(一) 1. Dump文件 1. Dump文件介绍 Dump文件(Dump File),也叫转储文件,以.DMP为文件后缀.dump文件是进程在内存中的镜像文件,通过转换然后存储成以.DMP后缀的文件.dump文件根据存储时的选项不同,会生成不同大小的文件,其中记录信息也自然有所不同. 2. Dump文件分类 程序分两种,内核模式程序和用户模式程序,也即Ring0程序和Ring3程序.Dump文件是伴随着程序而生成的,所以Dump文件也同样分两种. Ker…
前一节我讲了怎么设置C++崩溃时生成Dump文件 , 点击 传送门 , 这一节我讲讲怎么使用 VS2012 调试生成的 Dump 文件 , 甚至可以精确到出错的那一行代码上面 ; 1. 生成 Dump 文件 我在主函数写了如下崩溃代码 : int main() { // 加入崩溃dump文件功能 SetUnhandledExceptionFilter(ExceptionFilter); // 使程序崩溃产生 Dump 文件 int *p = NULL; *p=; } 双击运行主程序 , 产生了…
解决WinDbg调试Dump文件不同环境mscordacwks.dll版本问题   开发人员提交一个dump文件(Windows Server 2008 R2),当前调试环境Windows Server 2012,加载sos.dl执行~* e !clrstack,提示如下错误: Failed to load data access DLL, 0x80004005 Verify that 1) you have a recent build of the debugger (6.2.14 or n…
前提说明 银河麒麟 是总部在天津的企业 有国防科大还有 ubuntu的母公司一起在维护 主要的产品有 优麒麟 还有 银河麒麟 优麒麟 可以看做是 国产版的ubuntu的社区版 银河麒麟 则是 面向国内的 自主产权 版本 所以他们是 dkpg 包的模式 安装方式 主要是 apt-get 和 dpkg 的方式安装. 安装wps 的最简单办法 也是 下载 deb包进行安装 1. 下载地址 https://wdl1.cache.wps.cn/wps/download/ep/Linux2019/8392/…
背景 某个项目需要实现基础软件全部国产化,其中操作系统指定银河麒麟,数据库使用DM8. 虽然在之前的文章中已经成功模拟国产飞腾处理器,但是运行效率不高,所以这里的银河麒麟操作系统还是运行在x64平台上.x64平台的DM8并没有提供银河麒麟版本,因为银河麒麟是基于Ubuntu的,Ubuntu又是基于Debian的,所以这里下载的是Debian版本的. 为了方便安装达梦数据库,这里使用了带UI界面的银河麒麟. 环境 虚拟化平台:Hyper-V 10.0 操作系统:银河麒麟 v4 CPU平台:x86-…
这就是国产银河系统的界面,测试版本是麒麟V10 链接: https://pan.baidu.com/s/1_-ICBkgSZPKvmcdy1nVxVg 提取码: xhep 一.传输文件 cd /home/sk/ mkdir tool cd tool 把文件传进去 二.mysql安装 cd /home/sk/tool/jc/mysql dpkg -i libaio1_0.3.110-2kord_amd64.deb dpkg -i mysql-client-core-5.7_5.7.27-0kord…
使用前准备: 1.保存编译文件的PDB文件(要和生成exe文件的对应) 2.在开发机器上,使用vs直接双击打开dmp文件,注意 进程名称 ,这个是程序运行crash的时候所在的目录位置,这个很重要. 3.把pdb文件和exe文件放到进程名称所在的目录下面,如果开发环境机器上没有这个目录,那么就新建这个目录,否则无法加载符号,调试只能看汇编代码. 4.点击使用仅限本机进行调试,就可以方便的看到源代码进行调试了.…
1.设置好pdb文件和源代码路径 为了能正确分析Dump文件,我们必须要指定和程序一起出来的PDB文件,如果程序重新被编译了一次,即使代码没有任何变化,之前的PDB文件我们不能再继续使用.…
最近公司预生产环境.net core应用的docker容器经常出现内存暴涨现象,有时会突然吃掉几个G,触发监控预警,造成容器重启. 分析了各种可能原因,修复了可能发生的内存泄露,经测试本地正常,但是发到预生产还是会有内存暴涨现象,反而更改GC模式后内存使用保持较低水平,百思不得其解,所以想到使用调试dump文件方式来分析应用内存状况. 环境: lldb:3.9 dotnetcore:2.1.6 docker image:microsoft/dotnet:2.1.6-aspnetcore-runt…