`
duoerbasilu
  • 浏览: 1483186 次
文章分类
社区版块
存档分类
最新评论

.NET Micro Framework 4.2 beta 源码探析

 
阅读更多

.NET Micro Framework 4.2 beta发布已经有一段时间了,一直没有腾出时间研究,昨天因为LWIP协议栈的原因(感觉上一个版本有点问题)刚 下了代码,所以抽空研究了一下。

这个版本主要的改变就是支持远程安全升级,VB.net 程序开发,PWMAD

1、 Application目录

多了一个MicroBooter目录,这就是所谓远程安全更新功能,和MFDeploy配合,完成升级功能。

2、 CLR目录

Libraries目录下多了三个目录

1)、SecurityPkcs11

数据包(或对象)安全处理,代码很多,相对复杂。

2)、SPOT_PWM

PWM支持库

3)、SPOT_Update

远程升级支持库,感觉这些方法都暴露给用户程序了(包括SecurityPkcs11),难道是用户程序自己控制升级过程?

若干文件被修改。

· Debugger.cpp文件中,读写Memory中,Flash多了三个分区BLOCKTYPE_SIMPLE_A

BLOCKTYPE_SIMPLE_B

BLOCKTYPE_UPDATE -- 远程升级对应的区域

此外就是和升级相关的具体代码了。

· Debugger_full.cpp文件中,多了四个通信命令

UpgradeToSsl

MFUpdate_Start

MFUpdate_AddPacket

MFUpdate_Install

似乎是,这个升级过程,可以通过ssl进行加密。

· Corlib_native.cpp(mscorlib.dll)

增加了Base64的编码和解码

· Corlib_native_System_Numer.cpp

增强了Format格式输出,从代码看,似乎支持 ToString(“X”)

· Spot_native.cppMicrosoft.SPOT.Native.dll

移掉了Cryptography_Key_RSA相关的方法

· Spot_hardware_native.cpp(Microsoft.SPOT.Hardware.dll)

增加了PWMAD的支持

3、 DeviceCode目录

变化更大,我只说几个比较重要的

1)、stubs_analog

AD模板文件

2)、stubs_PWM

Pwm模板文件

3)、MFUpdate

PAL层远程升级函数接口

4)、NetMFPkcsCrypto

OpenSSL中集成PKCS11

5)、PKCS11

PKCS #11 v2.11密码令牌接口标准

6)、SimpleStorage

以类似文件方式读写Flash

文件变化若干,主要变化如下:

· Blockstoragelist.cpp

增加了IsErased方法

· AT91目录

支持AT9263 CPU

4、 Formework目录

变化的目录主要有以下几个

1)、Native_PWM

PWM类库

2)、Native_Update

MFUpdateProperty 类库

3)、FTP

FTP ClientServer支持

4)、Security

X509Certificate2类库

5)、Update

MFFirmwareUpdate类库;

MFAssemblyUpdate 类库;

MFKeyUpdate 类库;

MFUpdate类库;

MFUpdateVersion类库;

6)、PKCS11

PKCS11类库

文件主要的修改如下:

· DPWS相关修改比较大,主要文件基本上都修改了

· CPU.cs

添加了PWMAnalog的枚举

· NetworkSeurity.cs

增加 X509Certificate

· IPAddress.cs

增加GetDefaultLocalAddress方法

· WireProtocol.cs

增加 c_MEMORY_USAGE_UPDATE

c_MEMORY_USAGE_SIMPLE_A

c_MEMORY_USAGE_SIMPLE_B

估计:c_MEMORY_USAGE_UPDATE = 0x0060写错了,应该是 0x00000060

· Conver.cs

增加 ToBase64String FromBase64String方法

· Number.cs

格式转换,支持“X“字符

· MFDeployForm.cs

支持.nmf扩展名的文件远程部署

· MFDevice.cs

增加对MicroBooter的支持

5、 Solutions目录

增加SAM9263_EK平台的支持

比较奇怪的是,没有从代码中看到对VB.net 开发的支持。目前只是粗略过了一个下代码,有时间深入试用一下,再写一篇详尽的说明文档。

MF开发板: http://item.taobao.com/item.htm?id=7117999726

MF QQ群:127465602(已满) 146524112

相关链接:

http://news.cnblogs.com/n/106062/

http://blogs.msdn.com/b/netmfteam/archive/2011/06/07/netmf-version-4-2-beta-now-available.aspx

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics