兼容性(compatibility)是指硬件之间、软件之间或是软硬件组合系统之间的相互协调工作的程度,是评价计算机性能的一个指标。兼容条件是指计算机系统之间软件或硬件能相互适用应满足的条件。一般兼容条件分为两大类:软件兼容条件和硬件兼容条件。

中文名

兼容条件

外文名

compatibility condition

学    科

计算机分    类

软件兼容条件和硬件兼容条件

有关术语

兼容性

领    域

计算机系统

兼容条件简介

编辑

语音

兼容条件是指计算机系统之间软件或硬件能相互适用应满足的条件。兼容条件对于软件或硬件能在不同平台上运行是十分重要的。根据系统中资源的分类方法,兼容条件分为软件兼容条件和硬件兼容条件。对于单个硬件或软件,兼容条件可以分为向下兼容和向上兼容。

兼容条件兼容性

编辑

语音

评价计算机性能的一个指标。指计算机设备或程序能兼用于多种不同系统的性能。下面分别说明硬件兼容性和软件兼容性。

硬件兼容性指一种机器的目标码可以在另一种机器上执行,所得结果与原机器的执行结果完全相同。实现硬件兼容性有两种途径:一是两种机器采用完全相同的指令系统;二是在第二种机器中设置一些专用指令,遇到该机器所没有的指令时,就将其翻译成对应的指令,使执行结果完全相同。经过少许调整或不需调整就能用于其他系统中的部件、外部设备或其他设备,称为兼容硬件[1]

软件兼容性指用某种语言编写的源程序可在两种不同的机器上分别进行翻译并加以执行,所得的结果基本相同,但两种机器的指令系统可能有很大差异。

兼容性很少表现为完全互相兼容(完全互相兼容称为双向兼容)。一般为单向兼容,即一台机器的程序可移植到另一台机器上,反之,则不行。单向兼容又可分为向上兼容和向下兼容两种。前者是指老机器的程序一定能移植到新机器上使用;后者则指新机器的程序一定适用于老机器.在同一计算机系列中,通常为向上兼容,即在较低档计算机上编写的程序可在较高档计算机上运行,而在较高档计算机上编写的程序往往不能在较低档计算机上运行。计算机硬设备(如某插件、某外接部件等)与所连用的系统(如不同型号的计算机)之间也有兼容性问题,在概念上和软设备与系统的兼容性类似。

兼容条件向上兼容

编辑

语音

在较低档计算机上编写的程序,可以在同一系列的较高档计算机上运行,或者在某一平台的较低版本环境中编写的程序可以在较高版本的环境中运行,都称为向上兼容,前者是硬件兼容,而后者是软件兼容,例如,基于Intel386的PC兼容机上所有的软件也可以运行在486或更高的机型上。向上兼容具有非常重要的意义,一些大型软件的开发,工作量极大,如这些软件都能做到兼容,则无需在其它机器上重新开发,就可节省庞大的人力和物力[2]

兼容条件向下兼容

编辑

语音

向下兼容(downward compatibility),又称向后兼容(backward compatibility)、回溯兼容,在计算机中指在一个程序和/或库更新到较新版本后,用旧版本程序创建的文档或系统仍能被正常操作或使用(包括写入),或在旧版本库的基础上开发的程序仍能正常编译运行的情况。

在文件系统中,ext4文件系统的设计就是向后兼容的,ext3的文件系统可以被当作ext4文件系统挂载。

通常更新一个软件时,应该为向下兼容性做出一定的考虑,这往往能给用户带来方便并更好地留住用户。Microsoft特别强调维持软件的向下兼容性。为了实现此一目标,有时微软甚至不惜支持使用了非官方乃至误用的 API 的软件。

但情况并不总是这样,有时为了考虑向下兼容会带来一些累赘,尤其是进行过较多升级后。Python3.0 便是放弃向下兼容的一个例子。

如果一个软件的旧的版本保存的文档不能被新版本读取,即使厂商提供了额外工具对旧文档进行不可逆转的转换,这也不能称作向下兼容。这可能是软件厂商的一种市场战略,强迫用户购买升级软件,随着升级用户逐渐增加,逐渐地使得旧软件能读取的文档越来越少。

兼容条件软件兼容条件

编辑

语音

软件兼容条件包括很多方面,如机器语言程序兼容,汇编语言程序兼容,高级语言程序兼容,系统软件兼容,软件系统兼容等。

兼容条件机器语言程序兼容

实现机器语言编写的程序兼容条件对计算机体系结构有非常苛刻的要求,需要实现兼容的两台计算机的体系结构和操作系统的用户程序接口等完全相同,即使略有不同,也可用软件模拟或硬件仿真实现兼容。

兼容条件汇编语言程序兼容

汇编语言程序兼容是指要在实现兼容的计算机上配有兼容的汇编语言文本及其汇编程序。如果实现兼容的计算机体系结构差别较大,则汇编语言程序兼容难以实现。

兼容条件软件系统兼容

软件系统兼容是指在软件的发展过程中,新的软件系统不断出现,因此也产生了各种软件系统之间的兼容性问题。为了使在某种软件系统环境下开发的软件能在新的软件系统环境下正确运行,就需要新开发的软件系统与以前的软件系统兼容,如要求与某操作系统兼容,与某数据库管理系统兼容等。各种计算机上配置的UNIX操作系统在外层上也有不同程度的兼容性[3]

兼容条件硬件兼容条件

编辑

语音

兼容条件设备或部件兼容

设备或部件兼容是指一种设备或部件可不加改动地用于多种机器。这要求设备或部件符合某种标准化设计,包括设备或部件的功能、接口、约定、规范,规程等。

兼容条件系列机

系列机是指基本指令系统相同、基本体系结构相同的一系列不同型号的计算机。系列机的概念就是指先设计好一种系统结构,而后就按这种系统结构设计它的系统软件,按器件状况和硬件技术研究这种结构的各种实现方法。并按照速度、价格等不同要求,分别提供不同速度、不同配置的各档机器。系列机必须保证用户看到的机器属性一致。如IBM370系列机有370、115、125、135、145、158、168等一系列从低速到高速的各种型号。它们具有形同的系统结构,而采用不同的组成和实现技术,有不同的性能和价格。它们有相同的指令系统,但在低挡机上指令的分析和指令的执行顺序进行,而在高档机上采用重叠、流水和其他并行处理方式。从程序设计者来看,各档机器却具有相同的32位字长,但从低档到高档机器,其数据通道的宽度分别为8位、16位、32位、甚至64位。

兼容条件兼容机

一些计算机厂家为了利用别人的软件成果,研制了兼容机。这些计算机体系结构可能不同,厂家各不相同,但软件兼容,有的还实现了插件兼容。这种兼容机是选择市场前景较好的计算机作为兼容对象,按住这种计算机体系结构设计出可利用其软件资源的计算机。这种兼容机不但体系结构与兼容对象相同,甚至部件也是一样的。

参考资料

1.

《数学辞海》编辑委员会.数学辞海:中国科学技术出版社,2002

2.

应红霞 著.计算机应用技术基础 :中国水利水电出版社,2008-06-30

3.

张效祥.计算机科学技术百科全书:清华大学出版社,2005

计算机兼容,兼容条件相关推荐

  1. 浏览器兼容--条件样式,选择符前缀,样式属性前缀

    浏览器兼容--条件样式,选择符前缀,样式属性前缀 2012-12-05 09:20 by greenal, 1570 阅读, 0 评论, 收藏, 编辑 原文地址-- http://www.w3cplu ...

  2. 浏览器兼容--条件样式,选择符前缀,样式属性前缀(转)

    浏览器兼容--条件样式,选择符前缀,样式属性前缀 2012-12-05 09:20 by greenal, 1570 阅读, 0 评论, 收藏, 编辑 原文地址-- http://www.w3cplu ...

  3. 微信小程序IOS sticky 兼容写法

    项目场景: 1.自定义导航头信息: 2.sticky在组件内配置在安卓有效.IOS无效的情况: 问题描述: IOS监听机制问题导致sticky在组件内的机制失效 //导航栏吸顶效果 .bar-stic ...

  4. 三、如何手动实现一个微前端框架雏形

    如何手动实现一个微前端框架雏形 一.了解微前端 1. 什么是微前端 为了解决一整块儿庞大的前端服务所带来的变更和拓展方面的限制,将整体前端服务拆分成一些更小.更简单的,能够独立开发.测试部署的小块儿. ...

  5. html背景图片 纵向拉伸,背景图片拉伸(CSS方法)_html/css_WEB-ITnose

    在布局现在的网站首页的时候,发现一个问题.我使用了一张1440*900的png图片作为背景图片.页面内的Div使用了较多的百分比自适应框体大小,原body元素的CSS如下 html { width: ...

  6. 数据库原理及应用(东南大学)笔记——第二章 数据模型

    第二章 数据模型(data model) 2.1 层次数据模型 2.1.1 基本思路: 现实世界中很多事物之间本就存在层次关系,该模型尝试用树状结构描述这种关系. 2.1.2 基本概念: 记录reco ...

  7. Kubernetes 学习15 kubernetes 认证及serviceaccount

    一.概述 1.通过此前描述可以知道k8s是以后运行我们生产环境中重要应用程序的尤其是无状态程序的一个非常重要的平台.这里面能托管一些核心应用以及核心数据,很显然对于k8s对应接口的访问不是任何人都可以 ...

  8. 【Vulkan】RenderPass(一)【Basic】

    Vulkan RenderPass(一)[Basic] RenderPass 简介 IMR 与 TBR RenderPass 结构 RenderPass 兼容性 RenderPass 简介 Graph ...

  9. 【Visual C++】游戏开发笔记二十四 由DirectX的几个版本说开去

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 本系列文 ...

最新文章

  1. ASP。NET 中SQL防注入攻击
  2. Spring 基于xml配置方式的AOP
  3. 「Githug」Git 游戏通关流程
  4. Entity Framework在WCF中序列化的问题
  5. 数字系统设计学习之QuartusII9的安装
  6. 2.第一个HTML页面
  7. sqlplus 执行sql文件_详解sqlplus设定行大小、页大小、字符列格式、数字列格式、清屏...
  8. Neuralog.v2013.06 1CD (测井曲线智能矢量化软件)
  9. html 图片放大保证不失真,图片放大不失真的几种方法
  10. JAVA空间换时间以及时间换空间的例子
  11. 程序员到高级程序员,只需要10个步骤!
  12. STM32串口中断接收一帧数据
  13. 浅析Marshmallow在flask中的应用
  14. fluent当中的梯度宏和VOF梯度的获取【转载】
  15. 单字节的乘法指令设计汇编程序11*12
  16. iOS苹果相册“地点”相簿效果实现浅谈
  17. 下拉刷新、上拉获取更多、左右滑动的ListView
  18. 有哪些小巧舒适的蓝牙耳机?推荐几款小巧且舒适的蓝牙耳机
  19. 七、享元模式与门面模式详解
  20. CF1284E·New Year and Castle Construction

热门文章

  1. 2021,买基金还是买房?
  2. 【NOI2015】BZOJ4199品酒大会题解(SAM+树形DP)
  3. 一位华裔复活了美国奥数国家队:掌舵 6 年 4 次夺冠,打破中国队“垄断”
  4. Android调试工具ADB
  5. apache服务器安装以及使用passenger插件部署rails应用,基于ubuntu 12.04 LTS
  6. 联发科p60和骁龙710哪个好_骁龙710、麒麟710和联发科P60哪个好 性能对比测试 (全文)...
  7. 天刀手游服务器维护11月7号,天涯明月刀手游11月11日正式服维护公告
  8. 【YOLOV5-5.x 源码解读】train.py
  9. root过的安卓机器,安卓机怎样root
  10. 喜欢游戏学计算机,我喜欢电脑游戏小学作文