应用系统性能指标要求|系统性能评价的指标包括哪几个方面
绝绝子42人阅读

㈠ 系统性能评价的指标包括哪几个方面
管理信息系统性能评价的指标包括:第一: 直接经济效益评价,它是指企业运行MlS之后,使用计算机管理所节约的开支与企业在MIS实施过程中一次性投资(包括软件、硬件投资)的折旧和运行费用相比较的结果。管理信息系统的应用,增加了投资和一些费用,但可以减少管理人员,这就减少了工资及劳动费用,通过实现管理现代化,节约物资消耗,降低成本消耗,减少库存资金,节约管理费用,还能够堵塞资金漏洞等。科学的计划决策更能带来难以估价的经济效益。第二: 间接经济效益的评价,它是指企业在运行MIS之后,在提高管理效率方面和数据集中管理方面,以及在建立网络系统之后数据的共享和数据传递的及时性、准确性方面,可以实现实时、定量的管理方面,提高了企业竞争力而带来的效益的评价。其主要表现在通过管理手段,由于整体管理工作水平的提高所带来的综合经济效益,这类综合性的效益,往往要经过一段时间才能反映出来,而且越是向高级阶段发展,这类效果就越显著,并能对企业产生质的战略性的影响。它主要反映在能够使企业管理工作自动化、基础数据现代化、管理体制合理化、管理决策科学化、管理效果最优化等方面。
㈡ 软件性能指标有哪些
近年来,软件在整个电脑系统中的作用已越来越重要,其所占费用的比重也越来越大。评价电脑软件的性能,应注意以下几点:
实际性能购买软件时应根据工作的需要,充分了解该软件的适用范围和实际性能,不能只听商家或广告的介绍,而应向已经使用过的用户请教。经销同类软件的部门很多,要多方比较鉴别,尽可能选购功能齐全、运行可靠、人机界面友好、维护方便的软件。有些软件在作粗略测试时表现不错,但作深入运行后,便会出现无故死机等异常现象,显然该类软件是无法实际应用的。
兼容性在选购软件时特别要考虑它的兼容性,不仅要兼容已有的和即将有的硬件设备,还要适用已有的和即将有的软件系统。这说明要了解所购软件适用于什么机型,需在任何操作系统支持下工作,和其它系统软件和应用软件的数据通信能力如何,是否可以在多用户或网络环境下使用,最多可以处理多大的问题,响应速度如何,以及运行该软件时实际所需的最大内存空间与所占磁盘空间等。除此之外,还需考虑软件与实际工作的适用程度,能否满足本单位的特殊使用要求,因为某些商品软件的适用性往往与某个单位的具体工作要求是有距离的。
用户友好性优秀的软件对用户应该是友好的,例如提供菜单驱动的命令输入方式,直观形象的图形用户界面和对话框等,并支持方便的鼠标操作。大多软件还应有在线帮助,这样,配合可显示的软件说明文本和应用实例教程,使用户可在不需记忆太多的东西、不必查阅手册的情况下,便能迅速学会使用该软件。
安全性与容错能力软件的安全保密问题近年来已越来越被人们所重视,在选购时要了解该软件有没有安全保密措施,如口令或密码的设置、使用权限的划分等功能,此外,安全性还包括一旦数据丢失后的恢复能力。容错处理能力是指软件在运行过程中,如果用户不小心而误操作,系统能否有效地制止,或作最简单的处理便可恢复被误修改或被误删除的信息,并使系统继续运行而不必从头开始。
可维护性与升级性软件也存在可维护性与升级性问题。一般说来,采用结构化程序设计方法编写的软件具有较好的修改、除错和功能扩展等维护能力。随着硬件性能的提高和软件技术的成熟与进步,各种软件的版本也会作不断得更新和升级,当然只有购买由信誉卓著的软件公司编写的并大量销售的软件,才能保证这种维护与升级能力,从而保障用户的利益。
资料齐全商品化的软件应有完整详尽的使用安装说明资料和用户手册,没有资料的软件,不是完整的软件。
㈢ 软件性能的指标是什么
近年来,软件在整个电脑系统中的作用已越来越重要,其所占费用的比重也越来越大。评价电脑软件的性能,应注意以下几点:(1)实际性能购买软件时应根据工作的需要,充分了解该软件的适用范围和实际性能,不能只听商家或广告的介绍,而应向已经使用过的用户请教。经销同类软件的部门很多,要多方比较鉴别,尽可能选购功能齐全、运行可靠、人机界面友好、维护方便的软件。有些软件在作粗略测试时表现不错,但作深入运行后,便会出现无故死机等异常现象,显然该类软件是无法实际应用的。(2)兼容性在选购软件时特别要考虑它的兼容性,不仅要兼容已有的和即将有的硬件设备,还要适用已有的和即将有的软件系统。这说明要了解所购软件适用于什么机型,需在任何操作系统支持下工作,和其它系统软件和应用软件的数据通信能力如何,是否可以在多用户或网络环境下使用,最多可以处理多大的问题,响应速度如何,以及运行该软件时实际所需的最大内存空间与所占磁盘空间等。除此之外,还需考虑软件与实际工作的适用程度,能否满足本单位的特殊使用要求,因为某些商品软件的适用性往往与某个单位的具体工作要求是有距离的。(3)用户友好性优秀的软件对用户应该是友好的,例如提供菜单驱动的命令输入方式,直观形象的图形用户界面和对话框等,并支持方便的鼠标操作。大多软件还应有在线帮助,这样,配合可显示的软件说明文本和应用实例教程,使用户可在不需记忆太多的东西、不必查阅手册的情况下,便能迅速学会使用该软件。(4)安全性与容错能力软件的安全保密问题近年来已越来越被人们所重视,在选购时要了解该软件有没有安全保密措施,如口令或密码的设置、使用权限的划分等功能,此外,安全性还包括一旦数据丢失后的恢复能力。容错处理能力是指软件在运行过程中,如果用户不小心而误操作,系统能否有效地制止,或作最简单的处理便可恢复被误修改或被误删除的信息,并使系统继续运行而不必从头开始。(5)可维护性与升级性软件也存在可维护性与升级性问题。一般说来,采用结构化程序设计方法编写的软件具有较好的修改、除错和功能扩展等维护能力。随着硬件性能的提高和软件技术的成熟与进步,各种软件的版本也会作不断得更新和升级,当然只有购买由信誉卓著的软件公司编写的并大量销售的软件,才能保证这种维护与升级能力,从而保障用户的利益。(6)资料齐全商品化的软件应有完整详尽的使用安装说明资料和用户手册,没有资料的软件,不是完整的软件。
㈣ 电脑软件性能指标有哪些特点
近年来,软件在整个电脑系统中的作用已越来越重要,其所占费用的比重也越来越大。评价电脑软件的性能,应注意以下几点:
(1)实际性能
购买软件时应根据工作的需要,充分了解该软件的适用范围和实际性能,不能只听商家或广告的介绍,而应向已经使用过的用户请教。经销同类软件的部门很多,要多方比较鉴别,尽可能选购功能齐全、运行可靠、人机界面友好、维护方便的软件。有些软件在作粗略测试时表现不错,但作深入运行后,便会出现无故死机等异常现象,显然该类软件是无法实际应用的。
(2)兼容性
在选购软件时特别要考虑它的兼容性,不仅要兼容已有的和即将有的硬件设备,还要适用已有的和即将有的软件系统。这说明要了解所购软件适用于什么机型,需在任何操作系统支持下工作,和其它系统软件和应用软件的数据通信能力如何,是否可以在多用户或网络环境下使用,最多可以处理多大的问题,响应速度如何,以及运行该软件时实际所需的最大内存空间与所占磁盘空间等。除此之外,还需考虑软件与实际工作的适用程度,能否满足本单位的特殊使用要求,因为某些商品软件的适用性往往与某个单位的具体工作要求是有距离的。
(3)用户友好性
优秀的软件对用户应该是友好的,例如提供菜单驱动的命令输入方式,直观形象的图形用户界面和对话框等,并支持方便的鼠标操作。大多软件还应有在线帮助,这样,配合可显示的软件说明文本和应用实例教程,使用户可在不需记忆太多的东西、不必查阅手册的情况下,便能迅速学会使用该软件。
(4)安全性与容错能力
软件的安全保密问题近年来已越来越被人们所重视,在选购时要了解该软件有没有安全保密措施,如口令或密码的设置、使用权限的划分等功能,此外,安全性还包括一旦数据丢失后的恢复能力。容错处理能力是指软件在运行过程中,如果用户不小心而误操作,系统能否有效地制止,或作最简单的处理便可恢复被误修改或被误删除的信息,并使系统继续运行而不必从头开始。
(5)可维护性与升级性
软件也存在可维护性与升级性问题。一般说来,采用结构化程序设计方法编写的软件具有较好的修改、除错和功能扩展等维护能力。随着硬件性能的提高和软件技术的成熟与进步,各种软件的版本也会作不断得更新和升级,当然只有购买由信誉卓著的软件公司编写的并大量销售的软件,才能保证这种维护与升级能力,从而保障用户的利益。
(6)资料齐全
商品化的软件应有完整详尽的使用安装说明资料和用户手册,没有资料的软件,不是完整的软件。
可处理汉字的中文平台
人类活动最常遇到的信息是文字信息。因此,电脑应有的一个基本功能就是文字处理功能;而在我国,则要求电脑能处理汉字信息。如果电脑不能处理汉字,其作用就很有限,也就很难推广普及了。所以,我国的电脑工作者一直致力于电脑的汉化工作。特别是20世纪80年代微机在我国推广应用以后,如何在微机的操作系统(主要是DOS)上处理汉字,越发引起了科技开发人员的重视。1983年电子工业部六所在PCDOS的基础上增加了汉字输入、输出方面的功能模块,推出了我国第一代汉系统CCDOS。随后,各种汉字系统层出不穷:从晓军213、金山SPDOS、联想汉字、方正汉卡、巨人汉卡、王码汉字到当今的希望UCDOS、天汇汉字系统、中国龙汉字系统等,而且每种汉字系统还在不停地升级换代。经过科研机构和实业界的开发人员的艰苦探索,现在的汉字系统虽不敢说非常成熟,但的确是今非昔比了。
汉字系统的说法很多,早期叫汉字操作系统,现在流行的说法是中文平台(Chinese Platform)及中文支撑环境等。究竟哪个更科学,至今没有定论。1993年10月电子工业部牵头组织了中文平台技术委员会,该委员会的组成人员大多来自科研机构和一些著名的汉字系统的生产厂家,这显示出政府和企业界对“中文平台”这种叫法的认可。实际上,中文平台、汉字系统、中文支撑环境的说法含义是一致的。
那么,到底什么是中文平台呢?我们经过总结现有的多种中文平台的特点,给出一粗略的定义:中文平台是建立在操作系统之上,具有中文处理能力,用以支持中西文应用软件,提供中西文处理实用工具的软件或硬件系统。它为用户提供汉字输入、汉字编辑、汉字储存、汉字输出(显示和打印)、汉字造字等功能。
在电脑内部,西文和中文只不过被人为地定义成不同的符号,用不同的代码表示而已,汉字信息处理系统的关键在于电脑对汉字代码的数据处理,使得人们在电脑上使用汉字和使用西文一样方便。从所用的技术手段上看,有的中文平台是通过修改西文操作系统的代码,使之能显示、输入和打印中文;有的不改动操作系统的文件,只是在操作系统上加一个外壳;有的两种方法兼而用之。人们把第一种中文平台称之为内核汉化,第二种为外挂式汉化,第三种为半外挂式汉化。
中文平台是依赖于操作系统的,目前常用的几种操作系统,如DOS、UNIX、Windows等,都有了相应的中文平台,如Windows上的中文之星等。
㈤ 操作系统的主要性能指标有哪些
微型计算机的主要性能指标和基本系统配置(1)微型计算机主要性能指标字长:CPU能够同时处理的比特(bit)数目。它直接关系到计算机的计算精度、功能和速度。字长越长,计算精度越高,处理能力越强。常见的微型机字长有8位、16位、32位。主频(时钟频率):时钟脉冲发生器所产生的时钟信号频率(MHz)。它在很大程度上决定了计算机的运行速度。内存容量:内存储器中能够存储信息的总字节数,一般以KB、MB为单位,反映了内存储器存储数据的能力。运算速度:计算机每秒运算的次数(MIPS-每秒百万条指令)。系统的可靠性:系统在正常条件下不发生故障或失效的概率。外设配置:外设是指计算机的输入、输出设备以及外存储器等,其中,显示器有单色、彩色之分,也有高、中、低分辨率之分,,磁盘有软盘与硬盘之分,软盘有高密、低密之分。软件配置:软件配置包括操作系统、计算机语言、数据库管理系统、网络通信软件、汉字软件及其他各种应用软件等。存取周期:对内存进行一次访问(存取)操作所需的时间。
㈥ 显示系统 性能指标
硬件 “计算机硬件”的简称。与“软件”相对。电子计算机系统中所有实体部件和设备的统称。从基本结构上来讲,电脑可以分为五大部分:运算器、存储器、控制器、输入设备、输出设备等。 一般我们看到的电脑都是由:主机(主要部分)、输出设备(显示器)、输入设备(键盘和鼠标)三大件组成。 而主机是电脑的主体 ,在主机箱中有:主板、CPU、内存、电源、显卡、声卡、网卡、硬盘、软驱、光驱等硬件。其中,主板、CPU、内存、电源、显卡、硬盘是必须的,只要主机工作,这几样缺一不可。 下面我们将一步一步的来揭开它们的神秘面纱。 (一) 机箱 首先来看看机箱,机箱除了给计算机系统建立一个外观形象之外,还为计算机系统的其它配件提供安装支架。另外,它还可以减轻机箱内向外辐射的电磁污染,保护用户的健康和其它设备的正常使用,真可称的上是计算机各配件的“家”。目前市场上的主流产品是采用ATX结构的立式机箱,AT结构的机箱已经被淘汰了。机箱内部前面板侧有用于安装硬盘、光驱、软驱的托架,后面板侧上部有一个用来安装电源的位置,除此之外,其风部还附有一些引线,用于连接POWER键,REST键,PC扬声器,以及一些指示灯。 (二) 主板 主板(英文名Mainboard 或 Motherboard)是计算机系统中最大的一块电路板,主板又叫主机板、系统板、或母板,它安装在机箱内,也是微机最重要的部件之一,它的类型和档次决定整个 微机系统的类型和档次。它可分为AT主板和ATX主板。主板是由各种接口,扩展槽,插座以及芯片组组成。主板选购的基本策略: 速度、稳定性兼容性、扩充能力、升级能力主板中的芯片组是构成主板的核心,其作用是在BIOS和操作系统的控制下规定的技术标准和规范通过主板为微机系统中的CPU、内存条、图形卡等部件建立可靠、正确的安装、运行环境,为各种IDE接口存储以及其他外部设备提供方便、可靠的连接接口。 (三) CPU CPU(Central Processing Unit,中央处理器)是计算机最重要的部件之一。是一台电脑的核心,相当于人的大脑,它的内部结构分为控制单元、逻辑单元和存储单元三大部分。CPU的接口标准分为两大类:一种是Socket类型,另一种是Slot类型。它的主要性能指标:主频、前端总线频 率、L1 和L2Cache的容量和速率、支持的扩展指令集、CPU内核工作电压地址总线宽度、CPU的选 购。CPU的生产厂商现在主要有Intel、AMD两家,其中Intel公司的CPU产品市场占有量最高。目 前市场上主流的CPU有:Intel公司的Pentium III 系列、Pentium 4 系列、Celeron系列;AMD 公司的K7系列。 (四)内存 内存泛指计算机系统中存放数据与指令的半导体存储单元。按其用途可分为主存储器和辅助 存器。按工作原理分为ROM和RAM。ROM可分为只读ROM、可编程可擦除ROM和可编程ROM.而RAM可RAM为静态 和动态RAM。内存(RAM)是CPU处理信息的地力,它的计算单位是兆字节MB,即Million Bytes。1个字节又 由8位(bit)二进制数(0、1)组成。存储1个英文字母需要占用1个字节(Byte)空间。而存储1个汉字则需占2个字节空间。 早期的计算机主要运行D05系统和DOS程序。那时内存的价格是很贵的,DOS对内存的要求也不高,只 需640KB(1KB=1024B),所以那时的计算机内存配得都不大,1MB或2MB就很好。 现在内存价格大大降低了,而Windows和一些新的应用软件对内存的需要是贪得无厌的,内存越大, 它工作得就越好,所以现在的汁算机64MB内存已算是最低配置,有钱的话,配上128MB乃至512MB也都不 等过。目前比较知名的品牌有Hyundai(现代原厂)、Kingstone(金仕顿)、Kingmax(胜创)、Samsung(三星)、Transcend(创见)和CEIL(金邦)等。 (五)硬盘 硬盘(Hard Disk)是计算机系统的重要存储设备,其性能直接影响计算机的整体性能。硬盘是一种 固定的存储设备,它的存储介质是若干个钢性磁盘片,其特点:速度快、容量大、可靠靠性高几乎不存在磨损问题。目前常见的硬盘接口有二种,分别是IDE接口和SCSI接口。口碑不错的硬盘有迈拓(Maxtor)、希捷(Seagate)、IBM、西部数据(Western Digtal)等。 (六)光盘驱动器 光盘驱动器(CD-ROM)就是读取光盘上数据的工具,而光盘的特点:容量大、速度快兼容性强、盘片成本低。具前的主流为52倍速的IDE接口光驱。 (七)软驱 软盘驱动器(Floppy Disk)是电脑一个不可缺少的部件,在必要的时候,它可以为我们启动计机,还能用它来传递和备份一些比较小的文件。现在一般都用3.5英寸的,古老年代用5.25英寸的,现在我们去买人家都不卖了。 (八)显卡 显卡是显示器与主机通信的控制电路和接口,其作用是将主机的数字信号转换为模拟信号, 并在显示器上显示出来。显卡的基本作用就是控制图形的输出,它工作在CPU和显示器之间它的 主要部件有:显示芯片、RAMDAC、显示内存、VGA BIOS VGA插座、特性连接器等。显卡的三 项重要指标:刷新频率、分辨率、色深。从总线类型分,显示卡有ISA、VESA、PCI、AGP四种。 现在AGP显示卡已非常普遍。 (九)声卡 声卡,想听音乐可少不了它,电脑就是通过这个玩意传送声音给音箱的哦。声卡是多媒体电脑的主要 部件之一,它包含记录和播放声音所需的硬件。声卡的种类很多,功能也不完全相同,但它们有一些共同的基本功能:能录制话音(声音)和音乐,能选择以单声道或双声道录音,并且能控制采样速率。声卡上有数模转换芯片(DAC),用来把数字化的声音信号转换成模拟信号,同时还有模数转换芯片(ADC),用来把模拟声音信号转换成数字信号。声卡上有音乐数字接口(MIDI),能使用MIDI乐器,诸如钢琴键、合成器和其MIDI设备。声卡有声音混合功能,允许控制声源和音频信号的大小。好的声卡能对低音部分和高音部分进行控制。声卡上还有一个或几个CD 音频输入接口,用以接收CD-ROM的声音采集信号。根据总线的不同声卡分为两大类,一种是ISA声卡,另一种是PCI声卡。 (十)显示器 显示器(Monitor)是计算机的主要输出设备,没有它,我们和计算机打交道的时候,将变成睁眼瞎。也许您的工作每天都需要面对计算机的屏幕,可是您是否真正的了解它呢?正因为这样很多人在购买电脑时,只关心显示器是14寸还是15寸的,而并不关心显示器的其它性能,其实购买一台电脑最不应该省钱的就是显示器了。目前显视器品牌繁多,市场上常见的品牌有:三星(Samsung)、索尼(Sony)、LG、优派(Viewsonic)、飞利浦(Philips)、宏基(Acer)、美格(MAG)、EMC等不下几十种。根据显像原理划分,显视器可以分为CRT显视器(阴极射线管显视器)、LCD显视器(液晶矩阵平面显示器)和等离子显视器等。其中常见的是CRT显视器和LCD显视器,而LCD显视器为未来几年的主流。 ... 显示器由监视器(Monitor)和显示适配器(俗称显卡Adapter)2部分组成. 显示器的种类有很多,如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)、等离子显示器(DDP)、场发射显示器(PED)等等。但最具实用与商品化的是CRT和LCD。 1)CRT显示器的主要性能指标: A。分辨率; B。扫描频率; C。带宽; D。TCO认证。 2)LCD显示器主要性能指标: A。响应时间; B。可视角度; C。点距; D。分辨率; E。刷新率; F。亮度; G。对比度。 3)显示卡:又称图形适配器。目前个人计算机采用PCI显示卡和AGP显示卡,一般都带有3D加速功能 (十一)键盘 键盘(Keyboard)我想大家应该不陌生,我只简单作一些介绍。键盘是最常用也是最主要的输入设备,通过键盘,可以将英文字母、数字、标点符号等输入到计算机中,从而向计算机发出命令、输入数据等。自IBM PC推出以来,键盘经历了83键、84键和101/102键,Windows95面世后,在101键盘的基础上改进成 了104/105键盘,增加了两个Windows 按键。 为了使人操作电脑更舒适,于是出现"人体键盘",键盘的形状非常符合两手的摆放姿势,操作起来就特别的轻松。 (十二)鼠标 鼠标(Mouse)首先应用于苹果电脑。随着Windows操作系统的流行,鼠标变成了必需品,更有些软件必须要安装鼠标才能运行,简直是无鼠寸步难行。从接口来讲,鼠标有两种类型:PS/2型鼠标和串行鼠标。从鼠标的构造来讲,有机械式和光电式。光电鼠标是利用光的反射来确定鼠标的移动,鼠标内部有红外光发射和接受装置,要让光电式鼠标发挥出强大的功能,一定要配备一块专用的感光板。光电鼠标的定位精度要比机械鼠标高出许多。另外鼠标还有单键、两键和三键之分,苹果电脑通常都使用单键鼠标,两键鼠标通常叫做MS鼠标,三键鼠标叫做PC鼠标。但鼠标用于两键或三键主要决定于软件,比如对于Windows 98和Windows95及其应用软件,鼠标只能用于两键状态,否则电脑不认,但有些软件可支持第三键,比如AutoCAD 广义的硬件不是特指计算机硬件,而是指泛指一些设施、设备、材料等有形物质及无形的精神物质。 硬件:构成电脑的物质实体,称为硬件。如主机、显示器、键盘、鼠标。
㈦ 如何提高系统性能指标
前言当我写下这个标题后,我被自己吓啦一大跳,怎么取个这么大的题目。要知道这可是无数人一生的舞台!我在这里不想也不可能针对提高系统性能的方方面面一一讲解,只是想结合具体的个案来谈谈我们在进行系统移植过程中对提高 J2EE 系统性能指标的一些思考和设计方案,主要是关于数据缓存技术的应用,但愿不会给大家带来太大的误会。说明:本文所有的讨论都是基于 Windows 平台,至于其他主流平台比如 Unix、Linux 等也有类似于 MMF 的实现机制,在此不再赘述。回页首概念-- 什么是 MMF ? (1)从现在开始,MMF 一词将在本文中大量出现。所以,我在此先对 MMF 做一个简单的描述。MMF,全称 Memory Mapped Files,从宏观上看,它是一种数据内存映射的技术或者说管理动态内存的一种方法,Randy Kath 这样定义到 MMF:Memory-mapped files(MMFs) offer a unique memory management feature that allows applications to access files on disk in the same way they access dynamic memory-through pointers。从微观的角度,它主要具有以下几个特性:概念:MMF 是一个 Windows 对象,你可以通过 Windows API 创建和访问它。本质:你可以把 MMF 当成一个普通的文件,只不过它贮存在系统内存中。图一:MMF 在各个进程间实现共享(来自 MSDN Online)特性:MMF 可以被任何进程、线程所访问,这说明 MMF 具有可在进程间共享的特性,这也正是它的最大"魅力"所在。当然,因为所有的存取操作都在内存中进行,它也同时具备快速的特点。实现原理:MMF 是基于现代操作系统都普遍采用的虚拟内存(virtual memory)技术,而虚拟内存是基于一种被称作 Paging 的机制之上的(2)。所以可以这样认为,只要某个操作系统采用了基于 Page 的虚拟内存管理系统,它就可以实现 MMF 这种功能特性。生存周期:MMF 一直存在直到对它的最后一个引用被断开。MMF 其实是 Windows 平台下的一个基本特性,所有关于它的操作都可以通过 Windows API 获得,它使得 DNA 架构下 COM 跨进程访问数据成为可能。利用它,可以将数据库端的业务数据缓存到应用服务器端或者客户端的 MMFs 中,省去频繁访问数据库的开销,极大地提高系统访问性能。对于 java,我们也在 Jdk1.4 的 NIO 规范下找到了利用 MMF 的类集合,虽然在 Jdk1.4 的 API 文档中并没有明确地提出这样一个概念,但是我们在 FileChannel 和 ByteBuffer 类的文档中了解到 FileChannel 对象具有映射文件至内存的功能,从上面的介绍中我们可以看出这实际上就是创建了 MMF。回页首背景-- 我们遇到什么困难?我们希望对某个购买系统进行升级开发,自然就会涉及到平台的选型。原来的系统是基于微软的 DNA 架构,我们现在倾向于将之移植到 J2EE 平台。在此之前自然要进行必要的可行性分析,除去其他方面的考虑之外,我们最关心的自然落到关键技术的可行性上面,因为我们希望最大限度地利用原有系统的架构设计。由于该系统基于微软的 DNA 架构,采用 DCOM 远程访问组件的方式,系统性能自然成为一个非常重要的考虑。所以,在原有系统中最大的亮丽之处在于花费大量工作来提高整个系统的性能指标,使得整个系统无论在系统响应速度,还是大数据量并发操作方面都有很杰出的表现。在这其中尤以数据缓存技术 MMF 的应用最为关键,通过服务器端和客户端的数据缓存,有效地提升了整个系统的性能。图二:应用 MMF 后的系统图图示说明:图中的"Server Cache(Business Rules)"部分即为利用 MMF 进行的数据缓存;另外,在客户端也大量利用到 MMF,在图中并未标出。整个系统沿着这样一个思路来利用 MMF:每次系统启动的时候,程序访问数据库,获取表中数据,通过一系列步骤将之缓存至应用服务器端 MMFs,见下图中黑线所示。以后客户端每次请求数据,将直接访问应用服务器端 MMFs,见图中红线所示,并且同时将数据缓存到客户端。此后,如果有任何配置数据的改变,可以重新装载数据到 MMFs。当然,与之配套的还有一套比较合理的定时数据比较机制。图三、系统与 MMF 的交互图以上这些就是我们所要实现的 MMF 缓存机制,简单地说,我们就是要在 Java 中找出与之对应的缓存机制解决方案。回页首解决方案 -- 我们想到了什么?明确了目标之后,我们就开始了在 Java 中寻找的征程。可以说几乎涵盖了现有的所有可行的方案,下面就是我们探索和思考的点点滴滴。一、 利用 JNI我们首先想到的就是 JNI(Java Native Interface,Java 本地接口 ),毕竟这是最直观和最省事的解决方案。在 Java 中利用 JNI 直接调用已有的 VC 或者 VB 代码,不需要重新编写这些代码,节省了时间,而且程序执行效率也相当不错。但是,利用 JNI 也存在着诸多的问题:不同程序代码之间的兼容性和可协调性,不易维护性。总之,对于这种夹生饭可以作为一时的权宜之计,在项目时间紧迫的情况下可以考虑使用,但是从长远考虑还是不宜采用。(3)二、 利用 XML这其中我们也想到了利用 XML,作为时下非常流行和实用的一门技术,Jdk1.4 中提供了一整套比较完整的 XML API,使得产生以及解析 XML 文件变得非常的容易。但是,个人觉得 XML 最大的优势在于为不同系统间的数据交换提供一种通用的格式,在于数据存储、解析和转换方面,作为数据缓存的候选虽然也未尝不可,但是从最优系统性能和充分继承原有系统架构考虑,还不是最优解决方案。三、 利用 MMF因为原有系统是使用的 MMF,所以我们也自然而然想到了 JAVA 中是否也存在 MMF。经过对 Jdk1.4 的仔细研究,我们也如愿找到了我们希望的功能。经过各方面的讨论,我们决定在新系统中采用该技术。回页首解决方案 -- 我们做了些什么?在做出决定之后,我们就需要对 Java 中的 MMF 做一个详细的研究。在 Jdk1.4 中,关于 MMF 的 API 主要位于 java.nio 和 java.nio.channels 包下。在新的 JAVA NIO 中着重提到两个概念 Buffer 和 Channel,MMF 其实是作为它们的一个附属品被提出来的。其中的 FileChannel 类的 map 方法能够完成这样一种功能"Maps a region of this channel's file directly into memory",返回一个 MappedByteBuffer 对象。由此我们可见在 Jdk1.4 中,MMF 的表现形式为 MappedByteBuffer 类及其父类 ByteBuffer,你可以通过这些类提供的一些方法来操纵 MMF 对象,而创建 MMF 的功能主要由 FileChannel 类来完成。(4)在使用类 MappedByteBuffer 之前,你必须弄清楚这样几个概念:capacity, limit, position,这在所有 Buffer 类中都是非常关键的。这里我直接引用 Jdk1.4 文档中的解释:A buffer's capacity is the number of elements it contains. The capacity of a buffer is never negative and never changes.A buffer's limit is the index of the first element that should not be read or written. A buffer's limit is never negative and is never greater than its capacity.A buffer's position is the index of the next element to be read or written. A buffer's position is never negative and is never greater than its limit.也许这样一个数学公式更加直观:0 <= position <= limit <= capacity。在进行大规模的系统应用之前,我们建立个简单的应用模型。今天,我们介绍一下这其中关于 MMF 最简单的一些操作。1、 创建 MMF上面我们已经提到,调用 FileChannel 类的 map() 方法可以创建 MMF,详细的方法说明如下: abstract MappedByteBuffer map(FileChannel.MapMode mode, long position, long size) 通过设置不同的 MapMode 类型,可以分别得到只读的、可读写的和私有的 MMF,因此可以视情况而定创建不同的 MMF。同时通过设置参数 position 和 size 可以指定文件的某一部分映射至内存,该特点对于大文件是非常有用的。 // 清单一:创建不同类型的 MMF try { File file = new File("filename"); // 创建一个只读的 memory-mapped file FileChannel roChannel = new RandomAccessFile(file, "r").getChannel(); ByteBuffer roBuf = roChannel.map(FileChannel.MapMode.READ_ONLY, 0, (int)roChannel.size()); // 创建一个可读写的 memory-mapped file FileChannel rwChannel = new RandomAccessFile(file, "rw").getChannel(); ByteBuffer wrBuf = rwChannel.map(FileChannel.MapMode.READ_WRITE, 0, (int)rwChannel.size()); // 创建一个私有的 (-on-write) memory-mapped file. // Any write to this channel results in a private of the data. FileChannel pvChannel = new RandomAccessFile(file, "rw").getChannel(); ByteBuffer pvBuf = roChannel.map(FileChannel.MapMode.PRIVATE, 0, (int)rwChannel.size()); } catch (IOException e) {} 2、 向 MMF 中插入数据你可以利用类 MappedByteBuffer 的 capacity 来得到它里面包含的字节数,这是个常量。你可以利用方法 put() 来向 MMF 中插入数据,它有两种不同的版本:绝对位置插入 put(int index, byte b),为此你必须指定 index(0<=index<=capacity-1);相对位置插入 put(byte b),它是利用了 position 和 limit 属性。利用相对位置插入数值后,position 也相应地加 1,直至达到 limit 的限制。而且,针对不同的数据类型,有各自相对应的 put 方法,比如 putChar, putDouble 之类。 // Create an empty MappedByteBuffer with a 10 byte capacity ByteBuffer bbuf = MappedByteBuffer.allocate(10); // Get the buffer's capacity int capacity = bbuf.capacity(); // 10 // Use the absolute put(). // This method does not affect the position. bbuf.put(1,(byte)0xFF); // position=0 // Set the position bbuf.position(5); // Use the relative put() bbuf.put((byte)0xFF); // Get the new position int pos = bbuf.position(); // 6 // Get remaining byte count int rem = bbuf.remaining(); // 4 // Set the limit bbuf.limit(7); // remaining=1 // This convenience method sets the position to 0 bbuf.rewind(); // remaining=7 3、 从 MMF 中获得数据与上述的过程相反,你可以通过不同的 get 方法来从 MMF 中获得数据。 // Create an empty MappedByteBuffer with a 10 byte capacity ByteBuffer bbuf = MappedByteBuffer.allocate(10); // Get the MappedByteBuffer's capacity int capacity = bbuf.capacity(); // 10 // Use the absolute get(). // This method does not affect the position. byte b = bbuf.get(5); // position=0 // Set the position bbuf.position(5); // Use the relative get() b = bbuf.get(); // Get the new position int pos = bbuf.position(); // 6 // Get remaining byte count int rem = bbuf.remaining(); // 4 // Set the limit bbuf.limit(7); // remaining=1 // This convenience method sets the position to 0 bbuf.rewind(); // remaining=7 回页首解决方案 -- 需要注意的地方上面我们给出的只是一个非常简单的读写 MMF 的例子,在实际的使用过程中会复杂得多,下面几个因素可能是你要好好考虑的:1、 数据与 MMF 的对应关系既然是要将数据缓存到 MMF 中,那我们就必须确立数据库表与 MMF 的对应关系。我们推荐使用的方式是每一张表对应一个 MMF 文件。2、 MMF 文件长度的设计确立了对应关系之后,我们需要分析一下如何设定 MMF 文件的初始长度。文件长度不能太小,否则就不能容纳所有的数据,同时文件也不能太长,那样一来浪费系统内存,二来也会使创建 MMF 的开销急剧增大。那刚好能容纳所有的记录呢?听起来是个不错的主意,但是如果这个时候需要添加一条记录呢?麻烦就来啦,由于原有长度不够。系统需要重新 re-map MMF 文件,造成系统内频繁地创建 MMF,反而使性能下降。经过我们研究后得出,这个比例在 1.1-1.3 之间比较合适,也就是 MMF 文件略大于表中现有记录的总和。3、 针对不同性质的数据进行不同的处理明确以上两点,我们还需要对数据本身做一番研究。有些数据趋于固化,一般不会有什么改变,比如国家、省份等,而有些数据则会经常变化,比如产品等,对于这两种不同类型的数据,你可以采取不同的处理方式,以达到最优的系统性能。回页首可能存在的问题 -- 我们需要预防些什么?1、 MMF 不是万能灵药千万不要以为有了 MMF,你就可以高枕无忧,可以轻轻松松搞定系统的缓存机制。事实远非如此,MMF 只不过是一把利刃,更重要的是你自己要仔细认真地设计好系统的缓存机制。要知道,解决交通堵塞问题的关键不是把路修得多么宽,而是要合理地规划整个交通路线。要知道在某些操作系统中,使用 MMF 的代价是非常昂贵的,失去好的规划,你可能会适得其反,系统反而会更加的拥挤不堪。况且,使用 MMF 还会带来很多的副作用。2、 性能与数据差错容忍度之间的平衡我们知道,随着数据缓存的大量使用,不可避免地会产生某种程度上的数据不一致,也就可能会产生某些数据差错。所以说,数据缓存使用的力度决定于系统客户对这些错误的容忍程度有多大。在某些非常关键的业务数据应用数据缓存技术时,必须格外地小心。3、 需要额外的 MMF 支持代码如上所述,为了最大限度地减少数据的不统一,我们必须提供一套非常合理和有效的数据同步机制,某种程度上甚至可以认为数据同步机制的好坏决定了数据缓存技术的成败。而这些是我们在使用 MMF 的过程中需要额外提供的代码。4、 MMF 与平台的相关性现在大部分编程语言中使用 MMF 的方法都是,提供相应的接口创建和操作 MMF 或者系统 API,而底层的具体 MMF 细节则由相应的操作系统去决定。这样每种操作系统中 MMF 不同的实现细节也在某种程度上影响着我们对 MMF 的使用。5、 使用 MMF 必须十分的小心既然MMF 是贮存在系统内存中,所以对于某些错误必须时刻警惕,比如"Array Out of Bound"等。要是您的系统没有很好地捕获这些错误,您的系统可能会彻底崩溃。每当你编写这些 MMF 代码的时候,你必须时刻牢记在心:我是在与系统内存打交道,这家伙可是娇贵的很。6、 由于 Jdkl1.4 的推出时间不长,基于 MMF 的现有应用几乎没有,所以没有真正能够在现实环境中检验 MMF 的使用情况,可能会存在一些不可预知的风险。回页首总结通过以上的介绍,相信大家对 MMF 在 Java 中的应用都有了一个初步的印象。实际上,提高应用系统的性能一直是所有应用系统开发人员追求的目标。除去本文谈到的缓存技术之外,在 J2EE 中,你还可以通过各种池技术的应用,EJB 组件的优化来提高系统性能(5)。但愿,本文能够给你带来这方面的一些启示。参考资料 关于MMF,微软 MSDN 站点 Randy Kath 的文章"Managing Memory-Mapped Files in Win32"不可不读。另外关于 MMF 的应用实例,可以参考 Zhefu Zhang 的文章"High Performance Solution Ini File Class with MMF"。关于这一点,可以参考文章"What are Memory Mapped Files?"。利用JNI 来访问 MMF 的实例可以参考 Stanley Wang 的文章"Using Memory Mapped Files and JNI to communicate between Java and C++ programs"。关于Java NIO 新功能的详细讲解,请参考 Jdk1.4 的 API 文档,而 Richard G. Baldwin 的在线教学文档也不可不读。关于这些技术的应用,可以参考 developerWorks Java 技术专区相关的文章。关于作者王和全,毕业于南昌大学。现主要在J2EE平台上从事广电行业运营系统的开发工作,擅长组件技术,多层架构下的编程。喜欢钻研新的技术,最近又迷上了Linux。除了写程序,平生最大的爱好就是旅游,梦想有一天能开着自己的宝马去郊游。您可以通过 [email protected]与我联系,我期待着朋友们的来信。 关闭[x]关于报告滥用的帮助报告滥用谢谢! 此内容已经标识给管理员注意。关闭[x]关于报告滥用的帮助报告滥用报告滥用提交失败。 请稍后重试。关闭[x]developerWorks:登录IBM ID:需要一个 IBM ID?忘记IBM ID?密码:忘记密码?更改您的密码 保持登录。单击提交则表示您同意developerWorks 的条款和条件。 使用条款 当您初次登录到 developerWorks 时,将会为您创建一份概要信息。您在developerWorks 概要信息中选择公开的信息将公开显示给其他人,但您可以随时修改这些信息的显示状态。您的姓名(除非选择隐藏)和昵称将和您在 developerWorks 发布的内容一同显示。所有提交的信息确保安全。关闭[x]请选择您的昵称:当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。昵称:(长度在 3 至 31 个字符之间)单击提交则表示您同意developerWorks 的条款和条件。 使用条款. 所有提交的信息确保安全。为本文评分评论回页首
㈧ 计算机系统的主要性能指标有哪些
计算机的主要性能指标有以下几项:
1、字长:字长是CPU能够直接处理的二进制数据位数,它直接关系到计算机的计算精度、功能和速度。字长越长处理能力就越强。常见的微机字长有8位、16位和32位。
2.运算速度:运算速度是指计算机每秒中所能执行的指令条数,一般用MIPS为单位。
3.主频:主频是指计算机的时钟频率,单位用MHz表示。
4.内存储器的容量:内存储器是CPU可以直接访问的存储器,需要执行的程序与需要处理的数据就是存放在主存中的。内存的性能指标主要包括存储容量和存取速度。
5.外设配置:外设是指计算机的输入/输出设备。
6.CPU主频:CPU是决定笔记本电脑的性能的最主要因素,计算机运算速度是指计算机在每秒钟所能执行的指令条数,即中央处理器在单位时间内平均运行的次数。
(8)应用系统性能指标要求扩展阅读
衡量计算机系统性能可采用各种尺度,但最为可靠的衡量尺度是时间。时间可根据计算方法给以不同的定义,如响应时间、CPU 时间等。
响应时间是指用户向计算机系统送入一个任务后,直到获得他所需要的结果所需的等待时间。其中包括了访问磁盘和访问主存器时间、CPU 运算时间、I/O动作时间以及操作系统工作的时间开销等。
㈨ 软件性能的软件性能的指标
响应时间是指系统对请求作出响应的时间。直观上看,这个指标与人对软件性能的主观感受是非常一致的,因为它完整地记录了整个计算机系统处理请求的时间。由于一个系统通常会提供许多功能,而不同功能的处理逻辑也千差万别,因而不同功能的响应时间也不尽相同,甚至同一功能在不同输入数据的情况下响应时间也不相同。所以,在讨论一个系统的响应时间时,人们通常是指该系统所有功能的平均时间或者所有功能的最大响应时间。当然,往往也需要对每个或每组功能讨论其平均响应时间和最大响应时间。对于单机的没有并发操作的应用系统而言,人们普遍认为响应时间是一个合理且准确的性能指标。需要指出的是,响应时间的绝对值并不能直接反映软件的性能的高低,软件性能的高低实际上取决于用户对该响应时间的接受程度。对于一个游戏软件来说,响应时间小于100毫秒应该是不错的,响应时间在1秒左右可能属于勉强可以接受,如果响应时间达到3秒就完全难以接受了。而对于编译系统来说,完整编译一个较大规模软件的源代码可能需要几十分钟甚至更长时间,但这些响应时间对于用户来说都是可以接受的。 虽然软件性能指标本身只涉及软件性能的度量,但考虑到软件性能测试的主要目的是测试和改善所开发软件的性能,对于复杂的网络化的软件而言,简单地用响应时间进行度量就不一定合适了。考虑一个普通的网站系统。开发该网站系统时,软件开发实际上只集中在服务器端,因为客户端的软件是标准的浏览器。虽然用户看到的响应时间时使用特定客户端计算机上的特定浏览器浏览该网站的响应时间,但是在讨论软件性能时更关心所开发网站软件本身的“响应时间”。也就是说,可以把用户感受到的响应时间划分为“呈现时间”和“系统响应时间”,前者是指客户端的浏览器在接收到网站数据时呈现页面所需的时间,而后者是指客户端接收到用户请求到客户端接收到服务器发来的数据所需的时间。显然,软件性能测试更关心“系统响应时间”,因为“呈现时间”与客户端计算机和浏览器有关,而与所开发的网站软件没有太大的关系。如果仔细分析这个例子,还可以把“系统响应时间”进一步分解为“网络传输时间”和“应用延迟时间”,其中前者是指数据(包括请求数据和响应数据)在客户端和服务器端进行传输的时间,而后者是指网站软件实际处理请求所需的时间。类似的,软件性能测试也更关心“应用延迟时间”。实际上,这种分解还可以继续下去,如果该网站系统使用了数据库,我们可以把“数据库延迟时间”分离出来,如果该网站系统使用了中间件,还可以把“中间件延迟时间”也分离出来。以上的时间分解实际上有两方面的目的。首先,人们通常希望把与所开发软件直接相关的延迟时间和与所开发软件不相关的延迟时间分离开,因为改善前者往往需要开发人员修改程序代码,而改善后者不需要开发人员修改代码,很多时候,开发人员对后者甚至是无能为力的。其次,详细的分解有助于开发人员分析哪些部分是影响软件性能的主要因素,以便于实时性能改善方案。 吞吐量是指系统在单位时间内处理请求的数量。对于无并发的应用系统而言,吞吐量与响应时间成严格的反比关系,实际上此时吞吐量就是响应时间的倒数。前面已经说过,对于单用户的系统,响应时间(或者系统响应时间和应用延迟时间)可以很好地度量系统的性能,但对于并发系统,通常需要用吞吐量作为性能指标。对于一个多用户的系统,如果只有一个用户使用时系统的平均响应时间是t,当有你n个用户使用时,每个用户看到的响应时间通常并不是n×t,而往往比n×t小很多(当然,在某些特殊情况下也可能比n×t大,甚至大很多)。这是因为处理每个请求需要用到很多资源,由于每个请求的处理过程中有许多步骤难以并发执行,这导致在具体的一个时间点,所占资源往往并不多。也就是说在处理单个请求时,在每个时间点都可能有许多资源被闲置,当处理多个请求时,如果资源配置合理,每个用户看到的平均响应时间并不随用户数的增加而线性增加。实际上,不同系统的平均响应时间随用户数增加而增长的速度也不大相同,这也是采用吞吐量来度量并发系统的性能的主要原因。一般而言,吞吐量是一个比较通用的指标,两个具有不同用户数和用户使用模式的系统,如果其最大吞吐量基本一致,则可以判断两个系统的处理能力基本一致。 开发人员的视角与管理员的视角基本一致,但开发人员需要更深入地关注软件性能。在开发过程中,开发人员希望能够尽可能地开发出高性能的软件。
评论 | 0 条评论
登录之后才可留言,前往登录