分类细化 主流智能手机操作系统分析 (2) -操作系统分析

2008年11月11日

   Windows Mobile操作系统

  Pocket PC Phone系统:要了解该系统,首先我们要说明一下什么是Pocket PC。Pocket PC是一种手持设备,可帮助使用者存储并检索电子邮件、联系人和约会信息,播放多媒体文件,玩赏电子游戏,借助MSN Messenger交换文本消息,浏览Web内容等,使用者将能够与台式机实现信息交换和同步。虽然Pocket PC Phone的几何尺寸与Pocket PC完全相同,但却具备通过无线运营商实现内建无线连接能力。Phone Edition设备包含了标准Pocket PC的全部功能特性。这种设备还允许使用者针对Internet和企业网络系统实施无线访问调用,并以远远超过拨号连接的传输速率接发电子邮件。主要适用机型有BENQ的P50以及多普达696 818 828等机型。

  Smartphone 系统:Smartphone同样是基于微软开发的手机操作系统平台,注重移动互联和娱乐功能。没有触控笔和触摸屏,体现单手操控的理念,全以数字键盘代替。因为同是微软公司门下的产品,操作界面和WINDOWS非常相似,对于用户来说可能更熟悉更容易上手。适用机型有多普达的5系列手机。

  

几种嵌入式操作系统分析

几种嵌入式操作系统分析2008-09-03 17:56
目前嵌入式操作系统呈现多元话趋势,为了使大家更全面的了解嵌入式操作系统的种类,我将其整理如下:希望会对广大嵌入式开发爱好者有所帮助。
嵌入式开发嵌入式操作系统嵌入式系统
微软一开始选用了帕特森的Q-DOS"QUICK AND DISK OPERATING SYSTEM"为基础然后再扩充功能而成MS-DOS,主要是采用由IBM提供的使用8088微处理器的计算机作开发平台,它是以16字节单人单工操作系统。
虽然微软Windows系统已经称霸了PC Desktop环境。但是对于这块大饼,微软也是垂涎已久,桌上型的Windows桌业系统对于嵌入式系统来说自然是太过于肥大的产物,于是微软推出精简版的Windows CE作为进攻嵌入式系统的主力。目前主要应用于PDA上头,但是跟微软一系列Windows系统一般,Windows CE也承袭了原有的缺点:耗系统资源、不稳定、效率不佳.等等。毛病实在太多,后来将整个架构重新改写后推出Windows CE 3.0版,或称为Pocket PC。改版之后的确改进了不少缺点。
Windows CE可应用于PDA、WebPAD、Thin Client等等。
由Palm Computing公司的嵌入式操作系统,目前最大的应用在PDA,是市场占有率最高的PDA操作系统,Palm操作系统架构非常简洁,因为少去了很多功能,如内存管理、多任务.等等,使得Palm可以非常不耗系统资源,硬件需求低,连带的整体耗电量便可压缩到非常低,因此采用Palm操作系统的PDA都有待机时间长的优点。
由英国手持装置大厂Psion所开发,常用于PDA与手机结合的场合。最有名的例子Nokia ***0(附图4)系列手机,它就是采用EPOC系统。
实时系统是嵌入式系统里头非常重要的一环,很多人都误以为实时系统执行速度非常快的系统,事实上不然,所谓实时代表的意义是『实时反应』,一般多人多任务操作系统如:Windows、UNIX,在上面执行的软件都一起分享CPU,因为CPU速度快,所以我们感觉好像可以同时执行多支软件,其实在系统内部的同一时间内都只有一个程序在执行,每个软件都必须排队,而且规定只能用一小段时间后就要换下一位,但是因为CPU速度够快,很快又可以被执行到,所以人们感觉并不会很明显软件是一段一段在执行。这是一般所谓的非实时性的操作系统运作模式,而实时操作系统具有立即反应而且不能让出资源的特性,例如汽车的ABS煞车系统,如果不采用能够立即反应的实时系统,后果可就不堪设想。而这类的应用多半多属体积小、功能简单的地方,所以也算是嵌入式系统。QNX的QNX OS、WindRiver的VxWorks、Microware的OS9、pSOS等等,都是有名的嵌入式实时系统公司。
耶?Linux不是都用来做服务器吗?不然就是Cluster,怎么会跟嵌入式系统扯上关系?不要怀疑,Linux除了对伺服工作应付自如外,嵌入式系统也难不倒Linux。
那么究竟Linux有怎样独特的能耐,可以想变大就变大想缩小就缩小?又用Linux来发展嵌入式系统有什么优点?请看底下介绍。
开放原始码、模块化设计Linux采用GPL授权,除了把原始码公开以外,任何人都可以自由使用、修改、散布,而Linux核心本身采模块化设计,让人很容易增减功能,例如我的平台并不需要蓝芽的功能,我只要不把这项功能加入,有需要就加入,不需要就删除,由于这样的高的弹性,我们可以调校出最适合我们硬件平台的核心出来。
相较于Linux,Windows是走封闭原始码路线,所以我们完全无法得知或修改它的核心部份。另外因为是采用GPL授权自然就没有什么权利金或保密协议的约束。
稳定性够Linux不属于任何一家公司,但是它的开发人员却是全世界最多的,每天在全球都有无数的人参与Linux Kernel的改进、除错、测试,这样严苛的条件造就了稳定度高的Linux。
就因为如此,Linux虽不是商业的产物但是质量却不逊于商业产品。
网络功能强大Linux的架构是参造UNIX系统而来,因此Linux也承袭了UNIX强大的网络功能。在这个每样事情都讲求网络的时代下,只能说是Linux大放异彩的年代。未来可能家里的电冰箱、冷气、电视机都会连上网络,如何增加这些家电的网络功能,Linux可以替他们办到。
跨平台Linux一开始是基于Intel 386机器而设计,但是随着网络的散布,各式各样的需求涌现,因此就有许多工程师致力于各式平台的移植,造成了Linux可以在x86、MIPS、ARM/StrongARM、PowerPC、Motorola 68k、Hitachi SH3/SH4、Transmeta.等等平台上运作的盛况。这些平台几乎涵盖了所有嵌入式系统所需的CPU,因此选择Linux就可以把更多的硬件平台纳入考虑的范围。
嵌入式环境不如x86 PC那样单纯,嵌入式环境所采用的CPU架构之多,使用Linux作开发,就等于有更多硬件的选择,硬件成本是商业公司考虑的一大重点,选择多自然可以找到最合适的硬件,对于公司的竞争力是有极大的帮助。
应用软件众多自由软件世界里有个很大的特色就是软件超级多,而且几乎都是符合GPL标准,换句话说,大家都可以自由取用,因为这些软件多半是由工程师业余空暇时间所发展,而且不以营利为性质,所以并不能担保这些软件完全没有BUG,但是仍旧有许多杀手级的软件出现,大家熟知的KDE与GNOME便是很好的证明,当然与嵌入式系统较为相关如:gcc编译器、Kdevelop(附图5)整合式开发环境.等等。
通常我们都会先在PC端造出模拟出嵌入式的环境,并直接在上头开发,因此用的工具也都与开发一般Desktop软件类似,良好的工具能够增加开发的速度。
选择多样如果公司有能力可以自己实作Linux嵌入式系统,因为程序代码全部都开放在那里,您可以随心所欲的设计出自己想要的Embedded Linux系统,但是有更多的公司的业务重点不在于此,这时候您也可以选择购买商业版的Embedded Linux系统,像是有名的Redhat公司、Lineo、MontaVista.等等,这些都是商业的Linux公司,购买他们的产品就可以得到完整的服务。因此商业或非商业全都在于您的需求。
当然您也可以自行开发系统,严格控制硬件,但是相对的必须投注更大的成本在于研发系统上,原则上如果目标简单明确只是一些基本的I/O控制,例如:跑马灯。便适合自己开发,但是如果系统过于复杂则必须审慎评估自行研发的难度与时程的控管。
以上提到的几款嵌入式操作系统大家觉的怎么样,欢迎与我联系手机:13888888888小灵通:21192100余焕丽我们共同讨论,此外今后我会多写关于嵌入式arm嵌入式系统
嵌入式开发等相关方面的文章,到时大家一定要来哦。

Linux操作系统分析

一Linux简介
1.1Linux的缘起–UNIX&GNU 1969年诞生于AT&T贝尔实验室的UNIX,至今已派生了二十多个分支,成为世界上影响最大、应用最广泛的操作系统。早期UNIX系统是源代码公开,具有详细文档并被大多数学校广泛研究的。从版本7开始,AT&T将UNIX商业化,并更换了许可协议。
为了方面教学与科研,计算机专家Andrew Tanenbaum以版本7为蓝本独立开发了基于Intel X86平台的Minix,源代码公开并允许应用于教学。系统设计以简明为宗旨,系统实现采用简单、示意性方法,仅包含最基本的驱动程序,但Tanenbaum拒绝Minix hacker对系统进行改造。
GNU工程是Richard Stallman创立于1984年,目标是开发一个完全免费的类UNIX系统及其应用程序。1991年,芬兰赫尔辛基大学的Linus Torvalds利用comp.os.minix宣告:"正如我一个月前所述,我正在写一个类Minix的基于i386的免费操作系统,现在终于到了可以使用的程度。我愿意公开内核的源代码以便进一步发展。版本0.02,可以运行bash、gcc、gnu-make、gnu-sed、compress等"Linux内核及多数应用程序都基于GPL(GNU公共许可协议)。Linux系统指的是开放源代码的,包含内核、系统工具、完整的开发环境和应用的Unix类操作系统。由于Linux是一个自由软件且具有结构清晰、功能简捷等特点,逐渐成为一个稳定可靠、功能完善的操作系统。
1.2Linux迅速发展的原因
作为一种完全符合ieEE POSIX.1标准的操作系统,Linux不只是由Linus一人开发的,世界各地成千上万的程序员也参加了进来。Linux自从网上公开发表以来,操作系统内核性能不断得到改进和发展,外部应用程序日臻完善,Linux的迅速发展主要得益于以下几点:
具有良好的开放性。这是Linux能够迅速发展的最重要的原因。Linux其生成工具的源代码均可通过Internet免费获取。开放与协作使Linux这一自由软件呈现出勃勃生机。
Internet的普及使热心于Linux的开发者们能进行高效、快捷的交流,从而为Linux创造了一个优良的分布式开发环境。
Linux具有很强的适应性,能适应各种不同的硬件平台和文件系统。
Linux内核的强大功能以及它与GPL(通用软件许可证)的结合,使得许多个人和公司看到了它的前途,积极地投入它的内核和其应用程序的开发。

虚拟机和Linux操作系统分析报告(1):操作系统分析

虚拟机和Linux操作系统分析报告(1)2009-11-18 16:51我认为虚拟机就是一台电脑上虚拟出来的另一台计算机,是运行在电脑上的一个应用程序,可以在虚拟机上做一些探索性的操作,不会影响偶的原有的操作系统,不会带来安全性、损害性的操作。使我不必存在患得患失这样的优虑,使我们轻松的去完成我们想要做的事情。
安装了虚拟机我们可以做下面的一些操作,可以任意的做这些操作
1.演示环境,可以安装各种演示环境,便于做各种例子;
2.保证主机的快速运行,减少不必要的垃圾安装程序,偶尔使用的程序,或者测试用的程序在虚拟机上运行;
3.避免每次重新安装,银行等常用工具,不经常使用,而且要求保密比较好的,单独在一个环境下面运行;
4.想测试一下不熟悉的应用,在虚拟机中随便安装和彻底删除;
5.体验不同版本的操作系统,如Linux、Mac等。
虚拟主机行业发展到今天,我相信广大用户对虚拟主机不再陌生,虚拟主机已经成为广大中小型企业用户建站的首选。与此同时由于行业准入门槛不高,大大小小虚拟主机服务"提供商"是遍地开花,一时间出现众多租用一台服务器的个人都开始卖主机空间了。由于僧多粥少,这些投渗透了部分资金的"个人主机提供商"急于收回成本,大都选择了疯狂的价格战,低价"倾销",结果导致整个一片混乱。虚拟主机自然在众多主机"提供商"眼中成了不值钱"过时"产品,在众多用户心中成了"垃圾"产品,好像虚拟主机产品即将退出"历史舞台"了。武汉IDC(互联网数据中心说"虚拟主机完全可以满意广大用户一定层次的建站需求,而广大用户的这一层次的应用需求将会永远存在。同时我们认为虚拟主机产品靠的是服务赢取客户,而不是靠低价,虚拟主机理应是一种高端的产品,需要主机服务商具备极强的经济、技术实力以及一流服务水平。"。
我觉得虚拟机如果能够得到更好的发展,那我们计算机会得到更好的利用,也不再害怕存在安全性问题,想做什么就做什么,这就是我们想要结果,不用再听到:"天呀,怎么把这个重要的东西又给删除了。"只要我们在虚拟机上去做一些尝试性的东西那是很方便的。我就是在虚拟机安装Linux系统来摸索这个系统的,下面我来说一下关于Linux方便的东西。

智能手机操作系统分析,操作系统分析

首先申明:本人的职业不是手机行业,属于业余爱好,存在错误的地方敬请谅解!现在智能手机操作系统种类繁多,不过主流的还是只有赛班、windows mobile、linux、palm、blackberry、andriod几种,下面谈谈我对各个操作系统的看法。1、赛班。毫无疑问,目前智能手机操作系统的霸主,市场份额占有率最高,高达54%。主要品牌支持诺基亚,现在也有少量三星和索尼爱立信的赛班机型(如索尼爱立信X1)。系统特点:比较稳定、易操作、第三方软件扩展数量多、安全性好、内存占用少。缺点:娱乐功能支持一般(N系列除外),属于智能手机入门级操作系统,性能一般。前景:有知名品牌诺基亚的推广,索尼爱立信、三星的新进,发展前景良好(这是偶滴个人看法)2、windows。这是由软件巨头微软公司开发的,品牌支持主要有HTC、多普达(三星也有部分机型,摩托罗拉、索尼爱立信的机型有但少)。系统特点:功能强大、易学(类似电脑的windows的操作系统)、支持应用程序多,娱乐和商务功能强大,性能好。缺点:性能不稳定,对硬件的要求高,不安全。前景:有微软的做后盾,HTC的支持,良好。3、linux。昔日王者的摩托罗拉的主要操作系统。系统特点:稳定性极好,功能多,占用内存比较小,安全性好,。缺点:对性能要求比较高,功能一般,软件扩展方面相对较少,。前景:听说摩托罗拉准备放弃对linux的继续使用,发展前景不大。4、blackbarry。这种操作系统的手机在大陆没有行货,我也不了解。5、palm。主要品牌是palm,大陆没有行货。特点:性能好,第三方软件数量多,大部分是全键盘的机型。至于其它的和它的缺点我就不知道了。6、andriod。由全球搜索巨头google设计。品牌繁多(比如索尼爱立信、三星、摩托罗拉、惠普),基本含盖了大部分主流品牌。系统特点:操作人性化、性能好、分辨率高,易用,第三方软件方面目前还不够强大,由于它是开源码的,谁都可以免费为其设计,相信很快就有很多软件适合它。前景:有各大品牌的支持,我认为是发展潜力最大的。其它还有iphone(苹果手机系统)、beta(三星自主研发的)等等,但不是主流的操作系统。iphone特点:性能好,第三方软件多,功能多,不过听说只能单任务进行。beta目前还没有正式发布。手机操作系统种类繁多,目前主流的就这几种。我总结的不算全,我知道的也不算全,以上是我个人的看法,主看在你自己,不过还是希望你观了对你有一点点帮助。

操作系统分析-开放式操作系统案例分析

开放式操作系统案例分析
Reliant Security公司采用Sun公司技术创建优化的低成本零售业.
安全解决方案
Sun公司合作伙伴Reliant Security公司提供信息安全产品和服务,帮助贸易商保
障和保护客户信息的保密性和完整性。该公司的解决方案简单、价廉,而且易
于部署和管理。最重要的是,它们有助于贸易商遵守支付卡行业数据安全标准
(PCI)的要求。
对于许多零售商而言,PCI是一项不容忽视的安全要求,涉及领域包括加密、系
统完整性、记录、入侵检测、漏洞扫描、无线保护、配置管理和系统硬化。为
了满足这些要求,零售商经常必须部署一批来自各种供应商的单一解决方案的
复杂混合。部署和维护这些解决方案的成本会攀升到每存储区数万美元,而且
解决方案的兼容性也无法保证,同时其可靠性程度也不足以确保保密信息不会
受到威胁。
Reliant公司的协管式PCI系统(MPS)为采用分散的商店或分店环境的贸易商
通过一个交钥匙式解决方案提供一整套安全控件。MPS建立在Solaris 10和
OpenSolaris操作系统基础之上,提供一个高度可扩展的虚拟化平台。"借助于
Sun公司,我们的方法是充分利用开源社区的资源,并提供特定的有计划的软
件集成,"Reliant Security公司共同创办人和总裁Richard Newman说。.
"我们把这一切结合在一起,入行打包,并利用一个行业领先的操作系统对其
虚拟化,然后在现成的低成本嵌入式系统硬件(包括Sun Fire T1000服务器和
Sun Fire X2200M2服务器)上的商店环境中运行。"
Reliant公司最初开发出其运行于BSD Unix的MPS,然后迁移到Solaris 10和
OpenSolaris。"我需要比BSD提供的更好的虚拟化,而包含容器的Solaris 10使
我们在操作系统虚拟化与虚拟资源共享之间取得最佳平衡,"Newman说。.
"我们还需要网络支持,而且在Sun公司解决方案中看到了这样的能力。于
是,我们把目光转向Crossbow-OpenSolaris网络虚拟化项目。它为我们提供一
个非常先进的虚拟化网络环境。这正是我们所需要的东西。"
尽管该公司评估过VMware,但很快意识到其成本太高根本无法实施。"对于我
们把成千上万的服务器置于零售商店的此类解决方案来说,为每个商店购买一
个VMware许可证使得实施成本高不可攀,"Newman说。由于零售商的经营
利润非常低,一个开源解决方案(尤其是一个受到像Sun公司这样的大型公司
支持的解决方案)非常具有吸引力。对于Reliant公司来说,Solaris操作系统和
Solaris容器为在多个商店或分店安装低成本服务器提供一个更好的许可模式。
Newman还指出,支持和服务是选择Sun平台用于MPS的重要因素。"Sun的
大名使我们的客户感到非常放心,"他说,而且Sun公司提供的支持和服务水
平遥远优于其它开源供应商或开源社区的支持和服务水平。"在开源社区中,
您会发现在家里或夜里兼职做自己的开源工作的人。那根本无法与有像Sun公
开放式操作系统案例分析
8Sun公司
司这样的坚强后盾的机构同日而语。"Newman说。"而且,从硬件的观点
观,依靠Sun公司,您可以将Solaris 10和OpenSolaris中的强大的开源操作系
统与来自一个机构的硬件组合完美地结合在一起,这是任何其他供应商所无法
提供的。"
对于Reliant Security的客户来说,一个关键决定因素是价格。由于Reliant公司的
店内管理网络设备使用现成的组件(不需要任何定制硬件),MPS与其他供应商的
解决方案相比,无疑是一个成本低得多的解决方案。"我们见过不得不向其现有
支持团队增加三、四、五甚至十个人来管理多个解决方案的零售商,"Newman
说。此外,较小的店内占地面积减少了零售商的电费和散暖成本。
Reliant Security公司计划在Sun平台上开发更多安全应用程序。"依靠Sun
公司,我们从威名远扬的技术解决方案提供商那里获得领先的虚拟化技
术,"Newman说。"Sun公司在安全和整个企业管理方面拥有巨大优势和丰富
经验。而且,该公司能够从一个机构提供所有软件和硬件解决方案。"

嵌入式微内核实时操作系统分析与测试=操作系统分析

摘要:介绍嵌入式微内核实时操作系统的体系结构;针对Wolf嵌入式操作系统,设计一套微内核嵌渗透式操作系统测试实现方案。在Wolf操作系统支持下,已产业化的阅读不耗电电子书(eBook)验证了Wolf操作系统的可靠性。关键词:嵌入式实时操作系统ERTOS微内核Wolf软件测试仪eBook1嵌入式实时操作系统概述
嵌入式实时操作系统(ERTOS)是操作系统研究的一个重要分支,它与一般商用多任务OS,如UNIX,Windows等,最大的不同之处在于:商用多任务OS的目的是追求系统资源最大利用率和公平对待所有的系统请求;而ERTPS追求的是实时性、可确定性、可靠性。
自20世纪90年代以来,ERTOS发展迅速。国外著名商用EPTOS有:Wind River公司的VxWorks、IS(Integrated Systems)公司(2000年已被Wind River公司合并)的pSOS、AC(Accelerated Technology)公司的Nucleus等等。国外ERTOS很多,大多是针对不同应用的专用ERTOS或通用ERTOS。
与传统的嵌入式系统软件开发模式相比,虽然ERTOS会要求一些额外的开销,但可以由现代微控制器的高速度、大存储器以及产品提前进入市场的优势来弥补。优秀的ERTOS可以对几十个系列的嵌入式处理器MPU、微控制器MCU提供API接口。在此基础上,可以编定出各川硬件驱动程序、产品库函数,与通用性的应用程序一起作为产品销售。
2ERTOS–Wolf分析
嵌渗透式实时操作系统产品Wolf(南开津科ERTOS)是一个开放式的微内核实时操作系统。其基本设计思想是:
*低功耗(具有间歇式工作机制,支持哈偶结构);
*支持尖端智能输入/输出设备;
*支持微型大容量存储卡(SM卡、SD卡等);
*本质安全,支持信息版权及安全保护;
*为第三方提供产品级的SDK。
具有以下特点:
*微内核结构;
*支持多种CPU产品;
*基于优先级的抢占式调度和轮转调度相结合的多任务调度;
*极小的内存开销;
*高可用性、可靠性。
2.1微内核体系结构
微内核体系结构是相对层次内核体系结构而言的。层次操作系统体系结构如图1(a)所示,大部分或全部层次功能由内核实现,所有的接口功能只与相邻层有关,系统和应用独立,但其每一功能层的变化都会影响整个系统,层间安全性低。微内核体系结构如图1(b)所示,其基本思想是将原来属于传统如图1(b)所示,其基本思想是将原来属于传统操作系统内核的一些功能和服务从内核中分出,以子系统(组件)的形式与内核或其它子系统相互作用。组件功能以服务进程的方式通过消息与微内核和其它组件相互通信来完成。微内核的主要功能就是消息交换:确认消息、在组件间传送消息及准许对硬件操作。微内核结构的主要优点是:系统具有统一的接口,扩展性、可靠性及支持分布式系统。
Wolf是一个具有微内核结构的嵌入式操作系统,它由一个实时多任务内核和多个组件的集合组成。软件组件都是独立的标准构件块,可以不用变更地从一个应用程序移到另一个应用程序。Wolf体系结构如图2所示。
2.2微内核剖析
Wolf多任务调度是动态基于消息触发调度机制,任务切换由临时事件驱动,任务间是内部同步,不同的任务能够异步招待。Wolf内核负责维护系统中的所有任务的当前状态,所有任务具有以下四种状态之一:
*就绪态(Ready),缩写为R。一个就绪态任务是可运行的,等待高优先级的任务释放CPU。
*运行态(Run),缩写为E。一个运行态的任务是一个正在使用CPU的就绪任务。任何时刻有且只有一个运行着的任务。
*阻塞态(Blocked),缩写为B。一个任务被阻塞是由于任务自身的多个活动的必要手段。一个任务不能从就绪态到阻塞态。
*刮起态(Suspend)。一个挂起态的任务不能执行,主要用于调试。
*任务调试程序维护1个或多个跟踪每个任务状态的内部列表。它有一个就绪列表和每个(任务正在等待的)同步对象的一个单独受阻列表。就绪队列前头的任务是下一个要运行的任务。在受阻列表中的任何任务都被挂起,每当受阻列表中的一个任务等待的事情发生时,该任务就从受阻列表中被删除,并被放到就绪列表中等待执行、如图3所示。
(1)多任务调度
任务调度是指根据一定的约束规定,将CPU分配给符合条件的任务使用。约束规则又称为调度算法。Wolf内核采用多种调度算法分配CPU给处于Ready态(就绪态)的任务。默认基于优先级的抢占式调度算法,也支持基于时间片的轮转(Round-Robin)调度算法。在嵌入式系统实时应用中,不是每次抢占都是合理的,非期待的抢占会导致系统出现无法预料的情况,Woif提供允许和禁止调度的功能调用实现禁止抢占机制。
(2)任务通信、同步、互斥机制
任务间通信机制是提供多任务间相互同步和通信,以协调独立任务之间活动的机制。
①共享内存,提供数据共享。Woif采用简单快速的禁止中断手段保证共享数据被互斥访问②消息队列实现一CPU内多任务间通信和同步。Woif提供消息队列函数库创建、删除、发送消息,消息队列是动态建立的抽象对象,不绑定于任务一个任务。

  • 3微内核测试设计方案
    设计嵌入式操作系统软件测试方案时,我们根据系统分析的基本思想,定用判定表、功能矩阵将其划分成状态测试、系统调用功能测试。
    (1)多任务状态测试
    下面运用判定表设计状态转移测试用例。首先确定状态转移活动(5类活动):
    ①运行态到阻塞态E→B;
    ②阻塞态到就绪态B→R;
    ③阻塞态到运行态B→E;
    ④就绪态到就绪态E→R。
    ⑤执行态到就绪态E→R。
    然后列出不同活动必须遵守的状态转换规则并编号。这里编号形式定义为:具体活动编号+数字序列编号。例如:用转换规则编号③2,表明该规则是活动3必须遵守的第2条规则。
    以下是部分转换规则。
    ◇一个运行态的任务E变成阻塞态B(E→B):
    ①,它从一个空消息队列中请求一个消息;或者②,它等待一个不会即将发生的事件条件;或者③,它请求一个当前不能提供的信号量标志;或者④,它请求一段目前不能提供的内存;或者⑤,它暂中止一个时间段或直到一个特殊的时刻。
    ◇一个阻塞态的任务B变成就绪态R(B→R):
    ①,B是消息等待队列中的第一个任务,它等待的消息来到消息队列中;或者②,一个事件发送给了B,满足了它一直等待的事件的条件;或者③,一个信号量标志被返回,B是等待队列中的第一个;或者④,返还的内存区允许分配给B;或者⑤,B一直在超时等待一个事件、消息、信号量或一个内存段(当超过时间间隔)。
    ◇一个阻塞态的任务B变成运行态(B→E):
    任何一个(B→R)任务条件满足,该任务运行优先级就高于运行态任务,这个运行态任务是能被抢先的。
    ◇一个就绪态的任务R会变成运行态任务(R→E),在当前运行态任务是:
    ①阻塞;或者②,可抢占。R有较高的优先级。
    ◇一个运行态的任务R会变成就绪态任务(E→R),当:
    ①任何一个阻塞状态的任务B满足了(E→R)的发生条件(由于当前E或一个ISR系统调用);或者②,满足(R→E)的2至4条件中的任何一个条件发生。
    最后,确定判定条件,建立判定表。这里有3个判定条件:当前状态是E,或当前状态是B,或当前状态是R。如满意对应规则,则填写"Y",不满足对应规则,则填写"N"。如果在判定条件的规则下,进行的活动正确,则用"√"确认,错误用"×"确认,尚未测试用"□"确认,无关用"⊙"确认。
    表1为任务状态判定表(部分)。
    表1任务状态判定表(部分)
  • 当前状态E
  • 当前状态B
  • 当前状态R
  • ①E→B
  • ②B→R
  • ③B→E
  • ④R→E
  • ⑤E→R
  • 表1显示了测试活动1和活动2的正确性。其中满足条件2的活动有2个,即活动2和活动5,但由于活动5并支持对应的规则,所以结果用"×"标示。
    由表1可以看出,使用判定表明晰测试覆盖,能保持测试的完备性和一致性。
    (2)多任务功能测试
    首先,分析Wolf的微内核功能,将其划分成3个测试功能域:
    ①面向应用层的高级系统服务(调用)测试域。Wolf为应用层提供丰富的系统调用函数,将其细分为操作系统服务类、内存服务类、文件系统服务类、I/O服务类及调试平台服务5类。
    ②面向内核的多任务调度测试、任务通信测试及内存测试域。
    ③面向低层硬件的设备驱动测试、时钟测试、功耗测试域。
    其次,将系统调用函数使用的数据类型分类,如表2所列。经过数据分类,使得上百个函数测试通过20多个数据类型的测试来实现,。提高测试效率。测试提供的统计数字为最后的测试失败率、覆盖率提供依据。(N1,N2,N3,N4,N5,N6分别代表测试的次数)
    表2系统调用数据类型分类
  • 数据类型
  • 函数调用的次数
  • 测试用例测试的个数
  • 测试域
  • ①String
  • 应用层
  • ②Buffer
  • 内核层
  • ③Integer
  • 结束语
    本文在嵌入式微内核操作系统Wolf测试过程中设计出有效的测试方案和方法,取得良好的效果。Wolf微内核操作系统研制成功以来,能够支持多种便携式信息处理设备,例如已产业化的阅读不耗电电子书(eBook)。
    Wolf作为电子阅读应用软件的开发和数字图书馆阅读终端产品开发的有利支持系统,与北大方正Apabi电子书籍网络出版平台系统及电子出版业相结合,带给人们一个便携式阅读电子书籍的新时代。

Linux操作系统内核分析方法-操作系统分析

Linux的最大的好处之一就是它的源码公开。同时,公开的核心源码也吸引着无数的电脑爱好者和程序员;他们把解读和分析Linux的核心源码作为自己的最大兴趣,把修改Linux源码和改造Linux系统作为自己对计算机技术追求的最大目标。
Linux内核源码是很具吸引力的,特别是当你弄懂了一个分析了好久都没搞懂的问题;或者是被你修改过了的内核,顺利通过编译,一切运行正常的时候。那种成就感真是油然而生!而且,对内核的分析,除了出自对技术的狂热追求之外,这种令人生畏的劳动所带来的回报也是非常令人着迷的,这也正是它拥有众多追随者的主要原因:
首先,你可以从中学到很多的计算机的底层知识,如后面将讲到的系统的引导和硬件提供的中断机制等;其它,象虚拟存储的实现机制,多任务机制,系统保护机制等等,这些都是非都源码不能体会的。
同时,你还将从操作系统的整体结构中,体会整体设计在软件设计中的份量和作用,以及一些宏观设计的方法和技巧:Linux的内核为上层应用提供一个与具体硬件不相关的平台;同时在内核内部,它又把代码分为与体系结构和硬件相关的部分,和可移植的部分;再例如,Linux虽然不是微内核的,但他把大部分的设备驱动处理成相对独立的内核模块,这样减小了内核运行的开销,增强了内核代码的模块独立性。
而且你还能从对内核源码的分析中,体会到它在解决某个具体细节问题时,方法的巧妙:如后面将分析到了的Linux通过Botoom_half机制来加快系统对中断的处理。
最重要的是:在源码的分析过程中,你将会被一点一点地、潜移默化地专业化。一个专业的程序员,总是把代码的清晰性,兼容性,可移植性放在很重要的位置。他们总是通过定义大量的宏,来增强代码的清晰度和可读性,而又不增加编译后的代码长度和代码的运行效率;他们总是在编码的同时,就考虑到了以后的代码维护和升级。甚至,只要分析百分之一的代码后,你就会深刻地体会到,什么样的代码才是一个专业的程序员写的,什么样的代码是一个业余爱好者写的。而这一点是任何没有真正分析过标准代码的人都无法体会到的。
然而,由于内核代码的冗长,和内核体系结构的庞杂,所以分析内核也是一个很艰难,很需要毅力的事;在缺乏指导和交流的情况下,尤其如此。只有方法正确,才能事半功倍。正是基于这种考虑,作者希望通过此文能给大家一些借鉴和启迪。
由于本人所进行的分析都是基于2.2.5版本的内核;所以,如果没有特别说明,以下分析都是基于i386单处理器的2.2.5版本的Linux内核。所有源文件均是相对于目录/usr/src/linux的。
方法之一:从何入手
要分析Linux内核源码,首先必须找到各个模块的位置,也即要弄懂源码的文件组织形式。虽然对于有经验的高手而言,这个不是很难;但对于很多初级的Linux爱好者,和那些对源码分析很有兴趣但接触不多的人来说,这还是很有必要的。
1、Linux核心源程序通常都安装在/usr/src/linux下,而且它有一个非常简单的编号约定:任何偶数的核心(的二个数为偶数,例如2.0.30)都是一个稳定地发行的核心,而任何奇数的核心(例如2.1.42)都是一个开发中的核心。
2、核心源程序的文件按树形结构入行组织,在源程序树的最上层,即目录/usr/src/linux下有这样一些目录和文件:
◆COPYING:GPL版权申明。对具有GPL版权的源代码改动而形成的程序,或使用GPL工具产生的程序,具有使用GPL发表的义务,如公开源代码;
◆CREDITS:光荣榜。对Linux做出过很大贡献的一些人的信息;
◆MAINTAINERS:维护人员列表,对当前版本的内核各部分都有谁负责;
◆Makefile:第一个Makefile文件。用来组织内核的各模块,记录了个模块间的相互这间的联系和依托关系,编译时使用;仔细阅读各子目录下的Makefile文件对弄清各个文件这间的联系和依托关系很有帮助;
◆ReadMe:核心及其编译配置方法简单介绍;
◆Rules.make:各种Makefilemake所使用的一些共同规则;
◆REPORTING-BUGS:有关报告Bug的一些内容;
●Arch/:arch子目录包括了所有和体系结构相关的核心代码。它的每一个子目录都代表一种支持的体系结构,例如i386就是关于intel cpu及与之相兼容体系结构的子目录。PC机一般都基于此目录;
●Include/:include子目录包括编译核心所需要的大部分头文件。与平台无关的头文件在include/linux子目录下,与intel cpu相关的头文件在include/asm-i386子目录下,而include/scsi目录则是有关scsi设备的头文件目录;

五大主流服务器操作系统特点分析,操作系统分析

前面几篇(微软、RedHat、IBM、Novell、Sun),我们分别描述了五家厂商的主流操作系统,并针对其产品的界面、最低硬件需求、性能、特色、价格、升级服务,以及虚拟化和节能等重点话题进行了分析。本篇,我们把这些操作系统的特点入行横向对比分析,希望能在对比分析之余,发现之间的特征差异,为用户选择服务器的操作系统做一些参考帮助。
一、服务器操作系统的分类
首先提一下操作系统的分类,把我们前几篇的文中的系统入行了一下归类。操作系统(Operating System,简称OS)是管理计算机系统的全部硬件资源,包括软件资源及数据资源;控制程序运行;改善人机界面;为其它应用软件提供支持,使计算机系统所有资源最大限度地发挥作用。主要承担管理、配置、稳定、安全等方面的功能。操作系统的形式多样,常见的服务器OS有:WINDOWS、UNIX、LINUX和NETWARE四种。
二、用户安装界面
目前撑起市面上应用最多的服务器操作系统,当属Windows服务器的操作系统。界面图形化是其最大的特点,在秉承了Windows一贯的直观易用的优良传统的基础上,最新的Windows Server 2008具有完整的桌面布局,整体布局类似Vista,界面颜色可以进行个性化选择。其他OS的界面部分借鉴了微软的人性化设计的特点,如SUSE Linux 10增加操作系统中绚丽而高难的三维立体空间显示,属于另一个划时代的产品。相比之下,SUN Solaris 10和IBM-AIX 6在在界面上,人性化的界面暂不及微软的。
另外在安装方面,有桌面和安全命令模式这两种方式。厂商一般都建议采用后者的方式,微软的做法是:选择核心(Server Core)安装的模式,没有用户界面,可直接通过命令来进行操作。这样做的好处就是使得安装的内容最少,减少服务器的维护需求和攻击表面。Red Hat Linux 5也建议这种方式更为安全和可靠。
在操作系统的文字版本上,绝大多数的厂商都提供了简单中文和英文版本,同时还提供包括多语种的免费自选安装方式。在这一方面,各家的系统设计基本相似。
三、最低硬件支持和平台要求
在最低的硬件支持上,内存的基本要求都在512M,但在实际的表现中,往往对于CPU性能、内存容量,以及I/O速度要求也是很高,这些因素的影响都是极为关键的。在支持平台上,微软的Windows Server 2008的应用范围最广,Novell SUSE Linux Sever 10可运行在大部分x86、x64、PowerPC、Itanium 2和z9(IBM大型机)服务器上;Red Hat Linux 5也可以在大部分的Intel和AMD x86/x86-64架构上运行。
四、产品性能
五大厂商的操作系统,分别代表三种不同类型,直接比较相对困难。因此,我们一方面阐述各自产品的性能;另一方面以第三方的业界基准测试来证明其性能。在产品的性能上,从易用性、管理性、安全性和兼容性四个方面概述说明。
在比较OS的性能时,另外一个可以参考的因素就是,应仔细了解性能基准测试结果,在多项行业标准基准测试中,如TPC-C、TPC-H和SPECjbb2005。相比而言,Windows认为是高性能的操作系统,其中有两个Windows系统进入前500强名单;Red Hat的RHEL在TPC-H性能基准测试中最具竞争力;SUSE Linux 10是理想的基于x86的操作系统,在大部分领先的硬件供应商的服务器平台上都实现了这一点:Dell、HP和IBM。这意味着采用SUSE Linux Enterprise Server的客户可以始终确保得到最佳的性能,无需考虑其硬件平台供给商;Solaris 10在x86上的SPECjbb2005基准测试中进入了前10名。
五、产品特性
不同操作系统都具有其各自的特性,经过比较,我们发现虚拟化是这些OS所共有的特性。其次,如节能、降低成本也是厂商所追求的方向之一。当然除此之外,如具有存储功能、Web、审核特性、可观察性在这些OS中,表现出来的各自所属特性。
六、升级与服务
操作系统的升级分为两种情况,各厂商的方式大体一致。一种是打补丁和自动更新等服务,在采购期内不限次数,免费升级;另一种是从一个小版本升级到下一个版本的升级,这种情况也是免费的。各厂商会在一定的时期内,不断更新的以往的OS,这是会再网站上或者以邮件方式,通知到以前购买使用权的客户,即可进行升级的。
在服务上,厂商会根据服务的时间来收取费用,一般以年度为一个服务周期。在服务期内,也会有响应时间上的不同,最基础的服务包括电话支持、邮件支持和工程师的技术解答。这部分服务费用,有的厂商会根据OS的产品价格上增加一个百分比来收取,如Red Hat和微软就是按软件产品价格来收费,微软是按25%收取年费,2年为一期限。另一类厂商是直接给出服务的价格,如Novell和SUN,对于基础服务,SUSE Linux Sever 10为期一年的技术支持是$449,SUN的Solaris基础服务每年费用$324起。

\”雪豹\”服务器操作系统分析=操作系统分析

苹果历代的Mac OS X操作系统命名非常有意思,从2001推出的Mac OS X10.0开始,均用大型猛兽来命名,和苹果产品细致精巧的外观形成了鲜明对比。2001年苹果推出Cheetah(猎豹)和Puma(美洲狮)、2002年推出Jaguar(美洲虎)、2003年推出Panther(黑豹)、2005年推出Tiger(老虎)、2007年推出Leopard(美洲豹),Mac OS X的版本从10.0升级到10.5。
苹果Mac OS X操作系统发展历程
今年8月下旬,苹果正式推出了最新的Mac OS X10.6,命名为"Snow Leopard",即"雪豹°±操作系统,而"雪豹°±的服务器版本Server Snow Leopard也在同期推出。Server Snow Leopard是一个基于开放标准的全64位Unix服务器操作系统,并包括多项创新的新功能,如具有将创作和发布播客流程化的Podcast Producer 2等。此外,Server Snow Leopard非常简单易用,服务器的部署和应用快速简洁,在15分钟内就可建立好服务器。
下面我们来了解一下Server Snow Leopard都有哪些令人激动的特性:
全64位系统:Server Snow Leopard是一个全64位系统,这样内存的寻址空间可达16TB,用户完全不用再为升级内存而担心,并且兼容32位应用程序。此外,64位系统具有更好的进程扩展能力,在32位系统下,入程数量最高只能达到3000个左右,即使添加内存也于事无补,但64位系统下随着内存的增加,进程数量最高可以达到3万个。Server Snow Leopard的性能相对上一代的10.5版本性能提升了2倍。
苹果Server Snow Leopard系统包装盒
价格实惠、无客户端限制:Server Snow Leopard并没有繁杂的版本,正式版售价只有3998人民币,并且没有客户端授权限制,无论你应用的是Mac客户端,还是Windows,或者Linux,都没有客户端的限制。此外苹果为2009年6月8日到12月26日期间所有从苹果零售店或授权经销商处购买新Xserve系统的用户提供Server Snow Leopard升级包,安装和手续费只需88元,非常实惠。
包装盒上标注了价格,3998人民币
具有多项创新功能:Server Snow Leopard增加了多项创新功能,如Podcast Producer 2和Mobile Access Server。其中Podcast Producer 2是一个可以让创作、发布播客流程自动化的工具,只需点击几下鼠标,就可以创作出个性化高品质的播客,并可以添加标题、过渡效果和特效,保存为你希望的格式并分享至wikis、博客、iTunes、Final Cut Server或其他播客资源库。
全新的Mobile Access Server是一种方便、简单的方式,让iPod touch和Mac用户访问受保护的网络服务,包括公司网站、在线商业应用、邮件、日历和联络人。无需额外的软件,Mobile Access Server就能够为iPhone或Mac用户与专属网络间提供强大的加密和认证。
除上述这两个新功能外,Server Snow Leopard新功能还包括:
·Wiki Server 2,增加了让用户在网上更方便的沟通协作新功能,现可通过iPod touch浏览wiki内容,以及通过网络浏览器使用Quick Look功能浏览附件;
·新的Address Book Server,使用CardDAV开放标准,让用户在多台Mac及iPod touch之间存储,和使用个人联络资料;
·iCal Server 2,使用CardDAV开放标准,可以从网页浏览日程表,或使用运行iPhone OS 3.0的iPod touch查看会议邀请细节;
·全新Mail Server引擎,支持邮件推送功能,让用户即时接受最新消息;QuickTime XHTTP Live Streaming,允许根据网络速度对播放视频的质量进行动态调整;
·NetRestore,System Image Utility的新功能之一,允许通过网络轻松还原定制的系统镜像。
简单快速的部署过程:上面提到的这些新功能和服务在Server Snow Leopard中都是内置的,也就是说你不需要额外的去安装这些功能和服务,非常便捷。Server Snow Leopard服务器的部署非常简单,一台新的服务器建立只需要15分钟,十分快速。下面我们来观一下一台安装了Server Snow Leopard的服务器建立过程。
新系统启动后会进入欢迎界面,在这里需要选择国家和区域
选择建立一台新服务器还是从其他的Mac服务器传输信息
输入管理用户名和密码
入行网络配置,IP地址、网关等信息
输渗透DNS名称和计算机名称
选择需要启用的服务
随后系统会列举出服务器可以提供的功能和服务
点击"Setting Up"即可完成服务器的部署过程,寥寥数布,简单而快速
至此,一台Server Snow Leopard服务器就建立成功了,步骤简单,15分钟左右就能完成,操作非常方便。
便捷的管理:服务器建立成功后,我们就可以应用前文提到过的Podcast Producer 2、iCal Server 2、Mail Server等功能和特性了。Server Snow Leopard中提供了一个"Server Preferences"管理控制台,在这个控制***可以对用户、组进行管理,并可以对文件共享、iCal、地址簿、iChat、Mail、Web、VPN等服务进行管理,并可以查看系统信息等,操作起来也非常简便。
Server Preferences管理控制台
管理用户帐户
此外,用户还可以通过"Server Admin"控制台对服务器所提供的服务进行管理,在控制***可以便捷的进行添加和删除服务器特性和服务。
通过Server Admin管理服务器特性
通过上面的演示,我们可以感受到Server Snow Leopard称得上是一个简单易用的服务器操作系统,再加上无客户端授权限制和低廉的价格,非常切合注重成本和追求便捷管理的中小企业的需求,当然,Server Snow Leopard所内置的无授权限制邮件服务和Podcast Producer、iCal等特性同样适合大型企业,Server Snow Leopard为Windows、Linux、Unix用户提供了一个新的选择。不过,虽然Server Snow Leopard支持Windows、Linux客户端,并没有授权限制,但只有Mac客户端的用户,才能获得最佳的用户体验,这也是不可避免的。
摘自中关村在线

Page 1 of 212»