首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > WinCE >

WIN CE6中怎么防止驱动及OAL同时读写NANDFLASH的冲突

2012-12-31 
WIN CE6中如何防止驱动及OAL同时读写NANDFLASH的冲突在WIN CE5中,在OAL可以使用内核函数SC_WaitForMultipl

WIN CE6中如何防止驱动及OAL同时读写NANDFLASH的冲突
在WIN CE5中,在OAL可以使用内核函数SC_WaitForMultiple 与驱动中使用WaitForSingleObject来实现对FLASH的读写互斥

但是在CE6中不能实现SC_WaitForMultiple 函数的调用,我们采用全局变量的方式,把变量保存在固定的RAM中,在不同的驱动中去读取该变量值判断,从而实现夸进程的读写判断保护,但是采用该方式,测试中还是出现写FLASH死机的问题??

  请问在CE6下有什么好的方式,能够解决该问题
[解决办法]
使用event的方式不可以吗?
[解决办法]
可以考虑用临界区进行同步,在OAL中维护一个CriticalSection,驱动中通过KernelIoControl间接调用。
[解决办法]

引用:
OAL层不支持event方式吧。。。。。。

驱动和应用的通信都可以用event的方式,应该在OAL层也可以,不过我没有验证过。
[解决办法]
引用:
可以考虑用临界区进行同步,在OAL中维护一个CriticalSection,驱动中通过KernelIoControl间接调用。


同意楼上

热点排行