C中什么叫程序映像

C中什么叫程序映像,第1张

一、基本概念

什么是arm的映像文件,arm映像文件其实就是可执行文件,包括bin或hex两种格式,可以直接烧到rom里执行。

映像文件一般由域组成,域最多由三个输出段组成(RO,RW,ZI)组成,输出段又由输入段组成。在scatterfile中可以为每一个代码或数据区在装载和执行时指定不同的存储区域地址,所谓域,指的就是整个bin映像文件所处在的区域。

Scatlerloading的存储区块可以分成二种类型:装载域:当系统启动或加载时应用程序的存放区。执行域:系统启动后,应用程序进行执行和数据访问的存储器区域,系统在实时运行时可以有一个或多个执行块。映像中所有的代码和数据都有一个装载地址和运行地址(二者可能相同也可能不同,视具体情况而定)。在系统启动时,C函数库中的__main初始化代码会执行必要的复制及清零 *** 作,使应用程序的相应代码和数据段从装载状态转入执行状态。

我们输入的代码,一般有代码部分和数据部分,这就是所谓的输入段,经过编译后就变成了bin文件中ro段和rw段,还有所谓的zi段,这就是输出段。对于加载域中的输出段,一般来说ro段后面紧跟着rw段,rw段后面紧跟着zi段。在运行域中这些输出段并不连续,但rw和zi一定是连着的。zi段和rw段中的数据其实可以是rw属性。

应用程序或dll 为无效的windows映像的症状:打开应用程序时,系统会提示“应用程序或DLL X:XXXXXX.DLL 为无效的windows映像”,使用主流的`杀毒软件查杀病毒都无法解决;

应用程序或dll 为无效的windows映像解决办法(修复成功率越高,越靠前):

第一种,下载安装金山毒霸或360安全卫士,通过金山毒霸的系统修复功能和360系统急救箱中的系统文件修复功能,多数情况下就可以解决应用程序或dll 为无效的windows映像的问题,这两种安全软件都可以自动检测出现问题的dll文件,然后通过在线更新的方法修复dll;

第二种,按照系统报错提示的“xxx.dll”目录信息,百度搜索“xxx.dll”文件,下载解压缩后放到相应的目录下覆盖原文件即可;

第三种,点击“开始”菜单,选择“运行”,输入“dxdiag” (不含引号),在打开的“DirectX诊断工具”中切换到“DirectX文件”选项卡中,查看最下方的“说明”栏目,假如系统出现DLL加载不正常,会在该框中出现提示,根据提示的信息,下载对应的dll文件,放到相应目录中即可;

总结:强烈建议使用金山毒霸的系统修复工具或360安全卫士的系统急救箱dll文件修复功能,使用这种个工具解决应用程序或dll 为无效的windows映像的问题非常有效。

1、从开始菜单打开运行窗口(快捷键为Win+R),并输入msconfig以打开系统配置。

2、选择系统配置中的启动图选项,并点击打开任务管理器进行启动项的管理。

3、在启动项管理中找到所显示的DLLXXXX,单选之后点击右下角的禁用按钮即可。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/7695633.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-08
下一篇 2023-04-08

发表评论

登录后才能评论

评论列表(0条)

保存