中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档 | 网通镜像
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 未整理篇
对API发展的简单认识
作者:putongren 时间:2003-02-13 11:09 出处:互联网 责编:chinaitpower
              摘要:对API发展的简单认识

对 API 发展的简单认识

lu_yi_ming(_at_)sina.com   2004.11.5

  一、Windows 用户端

  微软对 Windows 的若干部分进行了升级(Longhorn 中会看到),之后只提供 CLR 类库 API ,并且 Intel 又把 CPU 的速度提高若干倍后,我们只能写托管应用了。

  C 语言大概只能用来写底层驱动,C++ 只能用来写 CLR,忘了 COM 吧,IL 一统江湖,x86 汇编彻底退出程序员的视野,IL 之上衍生出各种新语言... IE 开始支持 IL(比 ASP 支持 IL 可怕多了),互联网上的应用程序会爆炸性出现(不是现在的 DHtml + JavaScript 或 ActiveX 那些),n 多现在的应用程序将来会从 IE 中启动(每天都是最新版、没有病毒、及时修复Bug),微软干脆把 IE 作为桌面...

  开始想象:当托管应用成为主流,并且互联网传输速度达到硬盘访问速度的时候,在本地安装应用程序就毫无意义了。当互联网私有数据存储安全性与本地存储相当的时候,在本地保存个人文件就无意义了。这之后本地文件系统就会被人们遗忘,只要那里有个 Windows 就行了。微软开始设计 IL CPU,Intel 低三下四向微软申请此 CPU 的设计许可。


  二、Windows 服务器端

  C/C++ 还是要保留的,那些运行效率要求高的服务器端平台程序(ASP、数据库)用 IL 来写、在 CLR 中运行可能会有问题,所以基本 C/C++ 语言 API 还是会保留的。

  服务器端平台之上的应用程序还是各自的语言,数据库用SQL,JVM 用 Java,ASP 用 IL 。


  三、开源的应对

  开源社区也开发 IL 的虚拟机,运行在Linux、BSD、Hurd,以及 FireFox 之上;也可以嵌入 Apache,就像当初 Java 的道路。

  开源 IL 虚拟机的类库中,关于内存、进程、设备、文件、用户、网络等方面的 API,可以封装 Linux 等操作系统的 API 来实现;关于窗口、消息、绘图等方面的 API,可以封装 XWindow 的 API 来实现;其余类似。

  如果微软确实实现了更好更强的 API,那么开源社区也将跟随升级 API。

  对于开源社区,只是针对 IL 托管多了一个新项目而已,原来的所有项目都将继续进行,现有的 API 都将继续支持。集市对大教堂的模式竞争将继续。开源社区的 IL 虚拟机长大后,SUN 的 Java/JVM 也会感到巨大的压力。


  四、API 发展的限制

  内存 API :虽然托管代码自己管理内存,但也只是对操作系统内存 API 的调用。内存 API 的发展受限于 CPU/MMU 或操作系统的升级。

  进程 API :托管应用被作为普通进程调度。进程 API 的发展受限于操作系统的升级。

  设备 API :标准接口受限于操作系统的升级。特殊调用受限于设备的发展。托管只是这二者的封装。

  文件 API :受限于文件系统的升级。托管 API 只是文件系统 C API (或系统调用)的封装。

  用户 API :受限于操作系统用户管理的升级。托管 API 也只是封装。

  网络 API :受限于网络协议与应用的发展。IPv4 到 IPv6 的升级与托管没有直接关系。托管应用可能导致新高级协议的出现。

  图形 API :托管是对窗口、消息、绘图等 API 的封装,绘图 API 受限于显卡的升级,这几年这方面进步较大。

  组件 API :组件的寻找、通讯会因为托管应用发展而发生很大变化。

  综合起来看,基本 API 还在各自的轨道上发展。托管可以视为基本 API 的另一种调用方式,好处是加强安全控制,为代码流动作准备。


  五、API 发展带来的变化及竞争

  1. 传统个人应用程序

  微软虽然新 API 只提供 IL 类库,但不会马上停止老 API 的支持,所以应用开发商可以在适当的时候迁移到 IL 上来。应用程序的核心算法不会有太大变化,但用户界面可能需要尽快升级,带来的问题是升级的成本、风险与竞争、收益之间的权衡与把握。开源社区会在自己的平台上快速仿制。

  2. 服务器端应用程序

  变化不大,无论是技术还是竞争,现有的 J2EE / .Net 模式可以继续下去,即使开源社区的 IL 虚拟机真正成熟了也只是多了一个同类的选择。

  3. 托管代码流动带来的新应用

  高风险与大机遇并存,现在还看不清楚。

  4. 微软、开源社区与 IBM

  托管会让微软取得几年的领先时间。开源社区依然蓬勃发展,追赶超越微软的脚步时刻不停。IBM 会以商人的做法告诉最终用户开源的软件非常好,特别是运行在自己的服务器上,并提供可靠周到的,随需应变的服务保证。


  六、附图

  Linux 平台技术结构

  Window 平台技术结构


关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有