查看: 1783|回复: 0

【飞凌S5PV210开发板知识分享】WinCE与Linux有何区别?

[复制链接]
  • TA的每日心情

    2014-4-10 13:56
  • 签到天数: 5 天

    连续签到: 1 天

    [LV.2]偶尔看看I

    发表于 2013-7-4 09:52:56 | 显示全部楼层 |阅读模式
    分享到:
    嵌入式Linux OS与Windows CE相比的优点:
    第一inux是开放源代码,遍布全球的众多Linux爱好者都是Linux开发者的强大技术支持者;Windows CE目前6.0内核全部开放,GUI不开放。第二:Linux的内核小、效率高;Windows CE相比,占用过多的RAM。第三Linux是开放源代码的OS,在价格上极具竞争力,适合中国国情。Windows CE需要版权费用。第四Linux不仅支持x86芯片,还是一个跨平台的系统。更换CPU时就不会遇到更换平台的困扰。第五,Linux内核的结构在网络 方面是非常完整的,它提供了对包括十兆位、百兆位及千兆位的以太网络,还有无线网络、Token ring(令牌环)和光纤甚至卫星的支持,目前WINCE的网络功能也比较强大。
    嵌入式Linux OS与Windows CE相比的弱点:
    第一:LINUX开发难度较高,需要很高的技术实力,WINCE开发相对较容易,开发周期短,内核完善,主要是应用层开发。第二:LINUX核心调试工具 不全,调试不太方便,尚没有很好的用户图形界面,WINCE的GUI丰富,开发工具强大;第三,系统维护难度大。Linux占用较大的内存,如果去掉部分 无用的功能来减小使用的内存,但是如果不仔细,将引起新的问题。
    Windows Linux 不同点
    1. 驱动与应用的数据交互:
    对 于驱动中分配的内存,windows 通过memorymap 将驱动中的内存空间映射到应用层,应用和驱动是通过不同的地址同一地址空间的数据操作;而linux中驱动与应用层若存在数据交互的话,是通过 CopyToUser, CopyFromUser进行的,看上去在这点上windows的效率会更高些。linux也有类似的mmap机制。可以把内核态的地址映射到用户空间 中。
    2.当应用与驱动需要同步时:
    Linux中是在应用中通过调用IOctl让等待在驱动中进行,此时驱动还可以处理其它任务,可以得到响应的事件,并通知在等待中的任务结束,从而应用程序可以继续执行下去。
    Windows如果将等待放到驱动中的话,会发现驱动就在那死等了,不再响应其它输入。因此,windos中的等待是在应用中回调用waitobject函数。
    3 WinCE操作系统实现了进程/线程两级管理模型。
    linux本身不支持线程,它支持进程一级。如果要使用线程的话,需要使用线程库。
    转自飞凌s5pv210开发板技术讨论区


    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条



    手机版|小黑屋|与非网

    GMT+8, 2024-5-20 17:10 , Processed in 0.117340 second(s), 15 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.