当前位置: 首页 > news >正文

.NET Micro Framework 4.2 beta 源码探析

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

       这个版本主要的改变就是支持远程安全升级,VB.net 程序开发,PWM和AD。
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.cpp(Microsoft.SPOT.Native.dll)
移掉了Cryptography_Key_RSA相关的方法
·         Spot_hardware_native.cpp(Microsoft.SPOT.Hardware.dll)
增加了PWM和AD的支持
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 Client和Server支持
(4)、Security
 X509Certificate2类库
(5)、Update
 MFFirmwareUpdate类库;
 MFAssemblyUpdate 类库;
 MFKeyUpdate 类库;
  MFUpdate类库;
 MFUpdateVersion类库;
(6)、PKCS11
 PKCS11类库
 文件主要的修改如下:
·         DPWS相关修改比较大,主要文件基本上都修改了
·         CPU.cs
添加了PWM和Analog的枚举
·         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

相关文章:

  • 教你把图书上的文字“拷”到电脑上
  • Android和.NET通用的AES算法
  • 据说看完这21个故事的人,30岁前都成了亿万富翁
  • Java那些事之磁盘操作
  • Jffs2根文件系统制作[转]
  • 利用JavaScript全选、反选复选按钮
  • JS对外部文件的加载及对IFRMAME的加载的实现,当加载完成后,指定指向方法(方法回调)...
  • 【开发板技术支持】关于real6410 模拟摄像头与real6410 开发板的接线方式图
  • Exchange2010 dag 的部署
  • 常用的ICON图标网站
  • 【学习】HTML5深入学习
  • 关于 CKEditor上传文件时调用ckeditor的技巧
  • windows计数器和瓶颈
  • 华赛防火墙USG2210 L2TP over IPsec×××配置实例
  • Oracle RAC内部错误:ORA-00600[kjbmprlst:shadow]一例
  • ES6指北【2】—— 箭头函数
  • SegmentFault for Android 3.0 发布
  • [分享]iOS开发-关于在xcode中引用文件夹右边出现问号的解决办法
  • java 多线程基础, 我觉得还是有必要看看的
  • java2019面试题北京
  • Vue小说阅读器(仿追书神器)
  • 从零开始的webpack生活-0x009:FilesLoader装载文件
  • 汉诺塔算法
  • 一个普通的 5 年iOS开发者的自我总结,以及5年开发经历和感想!
  • 原生 js 实现移动端 Touch 滑动反弹
  • Nginx实现动静分离
  • ​力扣解法汇总946-验证栈序列
  • #ifdef 的技巧用法
  • #pragma multi_compile #pragma shader_feature
  • #在线报价接单​再坚持一下 明天是真的周六.出现货 实单来谈
  • $.ajax中的eval及dataType
  • (1)常见O(n^2)排序算法解析
  • (HAL库版)freeRTOS移植STMF103
  • (分布式缓存)Redis哨兵
  • (转)iOS字体
  • ./configure,make,make install的作用
  • .NET CLR基本术语
  • .NET Core实战项目之CMS 第一章 入门篇-开篇及总体规划
  • .net 流——流的类型体系简单介绍
  • .net6+aspose.words导出word并转pdf
  • .net反编译的九款神器
  • .net下的富文本编辑器FCKeditor的配置方法
  • // an array of int
  • @cacheable 是否缓存成功_让我们来学习学习SpringCache分布式缓存,为什么用?
  • [Android]竖直滑动选择器WheelView的实现
  • [CF482B]Interesting Array
  • [datastore@cyberfear.com].Elbie、[thekeyishere@cock.li].Elbie勒索病毒数据怎么处理|数据解密恢复
  • [Editor]Unity Editor类常用方法
  • [Everyday Mathematics]20150130
  • [LeetCode]Max Points on a Line
  • [Luogu 2816]宋荣子搭积木
  • [NBIoT]NBIoT相关知识
  • [PAT练级笔记] 34 Basic Level 1034 有理数四则运算
  • [Perl] Find Shell on your Wordpress site
  • [POJ 1915] Knight Moves