计算机软件的发展与新技术

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

计算机软件的发展与新技术北京东方瑞威科技发展有限公司2007.03.17计算机软件培训讲座计算机系统硬件软件主机外设CPU内存主板输入/输出设备外存系统软件应用软件操作系统语言处理程序服务性程序通用应用软件特定应用软件软件技术发展趋势新的软件体系架构——WebService与SOA应用需求,网络服务,面向服务架构(SOA,Service-orientedarchitecture)新的软件编程模型——构件技术与软件工厂网络构件:流动的是构件,应用和实现分离,提供标准接口和框架,构件组合;软件工厂:一是批量自动生产,二是生产、下载、组装、使用、销毁等重要环节。新的软件运行方式——点击运行与按需下载点击运行:先启动应用,再启动服务的软件模型,用户不需维护;按需下载:关卡收费,等待时间最少;滚动下载(运行时不断下载/加载必要的构件)异构环境下的网络构件互操作性一般应用程序的二进制互操作;构件互操作(JAVA、.Net、C/C++、CAR、COM)Wine、Cgywin、JAVA、VS.Net、Windows/Linux/Elastos。安全性与版本管理越来越重要网络安全,系统安全,构件安全,应用安全、版本管理、WinVistaBata1安全讲座内容一、网络促进软件发展二、软件平台最新技术三、高级软件应用技术一、网络促进软件发展互联网促成了一个全球化的市场,信息技术是全球化进程中的主要推动力。网上订货货比三家市场透明性新的服务新的体验用户参与设计地理界限的结束快速响应24/7服务按照客户的要求做直接的销售渠道以客户为中心因特网的发展对市场的影响为客户创造需求DNA,ASP,三层结构IE/Netscape,IIS/Apache个性化服务,电子商务FTP,E-mail,基本信息动态网页第二代互联网(1996-2000)静态网页第一代互联网(1994-1996)Microsoft:ASP.NET;Sun:Java网络服务(WebServices)(ProgramtheWeb)第三代互联网(2000+)网络促进软件技术的发展Internet资源的共享,提供软件服务;不同设备的互联、互通、互操作;软件的兼容、互操作;XML、SOAP,平台的标准化网络服务带来的软件革命:固定计算分立计算单一模块移动计算网络计算软件“零件”TenProblemsinWeb1.Seamlesscomputingproblem:c:\windows\system32\drivers\tcpip.syssolution://problem:registrysolution:manifest3.Binarycodeversioningproblem:allocatingmemoryonstacksolution:allocatememoryonheap4.Binarymoduleinteroperabilityproblem:nakedbinaryorincompatiblesymbolssolution:contract/interfacebasedprogrammingandmeta-class5.TCP/IPisirrelevanttoprogrammingparadigmproblem:X-Windowdiedsolution:WEBServicesanddynamicproxyTenProblemsinWeb6.Windowsasawrongprogrammingparadigmproblem:WinProc()assumessourcecodeavailabilitysolution:functioncallbacktable7.Messagepassingisoutofquestionproblem:pollingcan'textendtodistributedcomputingsolution:asynchronouspushingevents8.ScriptingGUIvs.codecenginesproblem:scriptsareflexiblebutslowsolution:directlyscriptingcodecengineswithreflection9.Unifiedstoragemodelproblem:applicationdatafilesareisolatedsolution:XMLanddatabase10.Softwaremanufacturingatruntimeproblem:C/C++objectsbasedonsourcecodesolution:componentaggregatesaspectstoformassemblyincontextTheProgressof3G3rdgenerationInternet(1st-Email,2nd-Browser,3rd-WEBServices)3rdgenerationprogrammingparadigm(1st-structureoriented,2nd–objectoriented,3rd–WEBServices)3rdgenerationoperatingsystem(1st-DOS,2nd-Windows,3rd–WEBServices)Applications3rdgenerationmobilephone(1stanalog,2nd-digital,3rd–wirelessbroadband)3rdgenerationdigitalTVmarkets.(1st–Black&white,2nd-Color,3rd–DigitalHDTV)WebservicesCARWeb服务代理解析和转发SOAP请求数据包,返回SOAP结果或错误数据包;自动生成和返回WSDL文件;互联网Web服务器进程0命名服务0命名服务1......进程N命名服务M......进程1命名服务K......中间件平台提供的远程方法调用机制WSDL文件下载请求SOAP请求数据包网络就是手机、数字电视“网络就是计算机”软件无需事先安装:用户点击运行代码自动加载代码自动删除面向服务的软件平台给用户带来的服务体验SoftwareAppliancesMultimediaOfficePublic服务(daemon)按需启动不同设备互联,即插即用不需用户安装设备驱动程序Home按需计算的软件平台软件平台不能因为下载越多软件运行越慢随机删除下载的软件不能影响软件的可用性3G用户的无限需求按需加载服务:限制病毒作案时间动态分配运行环境:限制病毒作案地点文件系统控制:限制病毒作案条件CPU地址空间:限制病毒作破坏范围软件点击运行:极大改善病毒损坏预后可信赖的软件运行平台移动用户移动运营商内容服务商终端设备商应用软件提供商2.5G/3G手机市场价值链增值服务的软件平台3C融合的网络软件平台(Computer,Communication,ConsumerElectronic)新闻、游戏、音乐、电影、软件共享现在转播构件化的软件开发平台安全机制通信多媒体应用认证机制电子助理WAP浏览器J2ME彩信……构件运行环境文件系统网络系统图形系统设备驱动专用系统构件库嵌入式实时操作系统构件化灵活内核OS硬件平台操作系统的集成开发环境软件分析工具系统建模工具硬件仿真工具代码自动生成调试工具动态链接构件库Linux发展概况Linux发展现状:Linux特点:开放源码、桌面应用迅速发展支持形式:政府采购、基金支持、嵌入式领域行业推广构件技术:Wine:部分实现WinDLL,不支持远程构件;XPCOM:提供自己的API,与COM不兼容,不支持进程间、远程构件;UNO:(UniversalNetworkObjeets)通用网络对象,兼容JAVA/C/C++,但效率比COM差。网络时代Linux发展面临的问题:Linux与Windows/Elastos应用程序的二进制兼容问题(Wine)Linux上的.Net、JAVA、CAR、COM、XML构件相互调用问题(Mono)在Linux上开发在其它系统上运行的网络构件的开发环境问题(eclipse)Linux上对网络构件的点击运行与按需下载问题(Elanix)Linux系统对网络构件的安全验证与版本管理问题(Elanix)二、软件平台最新技术清华大学.国家信息技术实验室硬件连接模型传统计算机网络计算机软件漫游模型与连接技术无关TCP/IP是连接技术InternetHardDiskMemoryRegisters南桥、北桥、…IDE、SCSI、PCI、…传统计算机网络计算机层次化存储TCP/IP、NETBIOS、HTTP、…2.1网络操作系统与软件漫游程序数据基于URL的可执行二进制代码无需安装软件按需的增量下载浏览器模型(包含URL的HTML文件)数据本机存储数据移动计算模型(包含URL的程序和数据)2.23G业务平台关键技术数据程序程序本机存储数据数据程序程序2.3WebService文件lib操作系统图形lib应用程序网络lib传统计算模型:操作系统排版服务软件服务MP3服务其他服务WEB服务模型:2.4CAR构件技术CAR构件技术和欣构件运行平台面向构件编程的应用软件集成开发环境CAR构件技术已经应用于Elastos中ElastosWindowsLinuxCAREngineCAREngineApplicationWebServicesCAR构件技术CAR:ComponentAssemblyRuntimeCAR构件,二进制代码可动态加载、跨平台运行SDKandIDE由于下载的软件可以是不同厂家写的软件模块,模块间的配合、协同需要标准。安全机制通信多媒体应用认证机制电子助理WAP浏览器J2ME彩信……构件运行环境文件系统网络系统图形系统设备驱动通讯服务支持操作系统内核硬件平台动态链接构件库2.5软件工厂采用命名服务技术可根据需要替换为第三方的系统构件Java虚拟机做到了源代码级别的兼容构建于NGWSRUNTIME基础上,废除了我们习惯使用的COM体系实现了二进制级别的代码兼容2.6网络时代的“三个代表”:JVM、.NET、CAR的比较JAVA.NETCAR需要在其他平台上再次编译Runtime的基本运作方式是中途截取代码,并将它转译为普通机器语言真正实现了“编译一次,到处运行”Java虚拟机在多平台上对外提供相同的API.NET是多语言兼容性可以运行在Elastos、Windows系列操作系统和Linux操作系统之上(Elastos)基于CAR的构件化网络操作系统,既是操作系统又是业务平台同类手机OS同类手机业务平台CDMA2000WCDMATD-SCDMABREWSymbianElastosElastos+TD-SCDMA=Chinese3G2.73GMobileSoftwarePlatforms网络中间件LRPCLRPC采用LRPC实现跨进程客户进程用户程序RPCRPC采用RPC实现跨网络CAR系统支持远程组件进程本地组件对象本身远程组件对象远程组件Stub本地组件Stub本地组件代理远程组件代理进程内组件RPC:RemoteProcedureCallLRPC:LocalRPC2.8Marshaling/Unmarshaling2.9构件模块间的依赖关系(滚动下载、按需加载)进程Modulec.dll引用到的模块ModuleViewb.dllModuleViewc.dll映射a.dll到进程中Moduleb.dll引起B的装载引起C的装载映射b.dll到进程中映射以c.dll到进程中Modulea.dll请求装载a.dllModuleViewa.dll2.10命名服务机

1 / 53
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功