PC3000——LDR相关概念及作用
LDR文件是ROM里的程序,你反编译里面的代码,是DSP的汇编程序,分析程序那么硬盘的结构你就都知道了,就好比电脑里的操作系统WIN98!RAM就是ROM里的程序运行过程中生成的,比如一些堆栈,状态等,跟电脑里的内寸一样!盘片上面的是叫做固件吗?就是一个列表,让ROM中的程序来读的,就象数据库一样。
有朋友说美钻的硬盘电路板上看不到ROM芯片,(不知道是不是真没有,还是着位老兄看差了!)那就一定在DSP芯片内部了。DSP内部也有ROM和RAM,不过都很小,如果程序放不下就需要扩展,扩展后我们在电路板上看到的ROM芯片了。
如果没有ROM的话那么RAM就一定很大,因为ROM程序应该没有用途的,它就是一些跳转和内存分配的程序,将硬盘上的真正的启动程序读出来放到RAM里,然后在RAM里执行!这样有好处是降低成本。
就是说美钻的真正的引导程序是在硬盘上。也许这就是美钻老启动不起来的原因吧!因为ROM是电可擦除的元件,放到里面的程序一般都不会损坏!而把程序放到硬盘上,硬盘是磁介质方式存数据,有磁化现象数据就不完整了!大家天天刷LDR文件!既然ROM里的程序不坏那为什么要刷它呢,其实我也不明白,不过昨天我有幸看到了效率源的一个说明书上面写了一句话让我恍然大悟,原来硬盘在正常启动是与BIOS通讯的,如果启动失败硬盘里的引导程序就END了,就结束了明白吗?就是到程序的结尾处!
可我们的主要目的是要刷固件(我说的固件就是磁盘上0道之前的模块,不知道这样说对不对?),刷固件就需要通过ROM中的程序执行,因为只有它才能访问硬盘,而ROM中的程序END了,就不能够执行了。我们需要ROM中的程序从第一条指令执行,所以要让DSP重新启动。DSP从起动就可以从ROM中的第一条指令执行了!DSP在加电或者RESET都可以重新启动!这就是热插拔的原因了,说白了就重起动DSP!
好了现在我们刷完LDR文件,那为什么要刷RAM呢,要知道你的固件是坏了,那么ROM中的程序就不能执行完,执行到某一个位置就执行不下去了,需要你去干预,把程序调到正确的位置。因为一般硬盘只有在启动时才读固件中的内容,启动后就不需要了。而RAM文件正是ROM正常状态下的运行环境。所以RAM刷好后,ROM中的程序才可以调用RAM正常读写磁盘中的内容了!你就可以刷固件了!
PC3000——LDR相关概念及作用
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
UML类图新手入门级介绍
勇往直前996
2020-02-23 20:56:16
Java多线程——锁概念与锁优化
Zack说码
2020-02-22 01:55:22
这些C++的练手项目,相当于你2年的工作经验,拿走不谢
跟大神学C++/C
2020-02-21 13:24:31
MySQL数据库面试题(2020最新版) MySQL数据库面试题(2020最新版)
AIHUBEI
2020-03-19 00:57:55
全网最详细的一篇Flutter 尺寸限制类容器总结
老孟程序员
2020-03-06 04:54:06
去中心化计算的未来:通过 RPC 从微服务过渡到WASM
BUIDL
2020-02-26 05:00:22
并发容器的原理,七大并发容器详解、及使用场景
逻辑-小雁子
2020-02-24 04:51:44
C++基础教程面向对象(学习笔记(77))
欧梅尼亚
2020-02-23 12:13:38
C++基础教程面向对象(学习笔记(78))
欧梅尼亚
2020-02-23 12:13:38
Java实现QQ第三方登录
平行宇宙i
2020-02-23 10:02:29
源码分析之WebSocketHandshake
鲜卑大帝
2020-02-23 04:58:52
Java基础(三)★ 运算符
SHEN_DEMO
2020-02-22 08:02:01
微信跳一跳:基于Opencv 识别起始点及目标点位置
llikestudy_
2020-02-21 21:49:44
【前端知乎系列】ArrayBuffer 和 Blob 对象
buzul
2020-02-21 12:36:23