您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 经营企划 > 计算机软件的发展与新技术
计算机软件的发展与新技术北京东方瑞威科技发展有限公司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.Seamlesscomputingproblem:c:\windows\system32\drivers\tcpip.syssolution://problem:registrysolution:manifest3.Binarycodeversioningproblem:allocatingmemoryonstacksolution:allocatememoryonheap4.Binarymoduleinteroperabilityproblem:nakedbinaryorincompatiblesymbolssolution:contract/interfacebasedprogrammingandmeta-class5.TCP/IPisirrelevanttoprogrammingparadigmproblem:X-Windowdiedsolution:WEBServicesanddynamicproxyTenProblemsinWeb6.Windowsasawrongprogrammingparadigmproblem:WinProc()assumessourcecodeavailabilitysolution:functioncallbacktable7.Messagepassingisoutofquestionproblem:pollingcan'textendtodistributedcomputingsolution:asynchronouspushingevents8.ScriptingGUIvs.codecenginesproblem:scriptsareflexiblebutslowsolution:directlyscriptingcodecengineswithreflection9.Unifiedstoragemodelproblem:applicationdatafilesareisolatedsolution:XMLanddatabase10.Softwaremanufacturingatruntimeproblem:C/C++objectsbasedonsourcecodesolution:componentaggregatesaspectstoformassemblyincontextTheProgressof3G3rdgenerationInternet(1st-Email,2nd-Browser,3rd-WEBServices)3rdgenerationprogrammingparadigm(1st-structureoriented,2nd–objectoriented,3rd–WEBServices)3rdgenerationoperatingsystem(1st-DOS,2nd-Windows,3rd–WEBServices)Applications3rdgenerationmobilephone(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命名服务机
本文标题:计算机软件的发展与新技术
链接地址:https://www.777doc.com/doc-547955 .html