首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

WinCE与Linux有何区别

WinCE与Linux有何区别

Windows CE是微软公司嵌入式、移动计算平台的基础,它是一个开放的、可升级的32位嵌入式操作系统,是基于掌上型电脑类的电子设备操作系统,它是精简的Windows 95Windows CE的图形用户界面相当出色

Linux是一种自由和开放源码的类Unix操作系统, 存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。Linux是一个领先的操作系统,世界上运算最快的10台超级计算机运行的都是Linux操作系统。严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统。Linux得名于天才程序员林纳斯•托瓦兹。

WindowsLinux 不同点

1. 驱动与应用的数据交互:

于驱动中分配的内存,windows 通过memory map 将驱动中的内存空间映射到应用层,应用和驱动是通过不同的地址同一地址空间的数据操作;而linux中驱动与应用层若存在数据交互的话,是通过 Copy To User, Copy From User进行的,看上去在这点上windows的效率会更高些。linux也有类似的mmap机制。可以把内核态的地址映射到用户空间 中。

2.当应用与驱动需要同步时:

Linux中是在应用中通过调用Ioctl让等待在驱动中进行,此时驱动还可以处理其它任务,可以得到响应的事件,并通知在等待中的任务结束,从而应用程序可以继续执行下去。

Windows如果将等待放到驱动中的话,会发现驱动就在那死等了,不再响应其它输入。因此,windows中的等待是在应用中回调用wait object函数。

3 WinCE操作系统实现了进程/线程两级管理模型。

linux本身不支持线程,它支持进程一级。如果要使用线程的话,需要使用线程库。

继承事业,薪火相传
返回列表