软件评测师知识点整理(根据大纲)2015
- 格式:docx
- 大小:7.08 MB
- 文档页数:90
软件测评师基础知识软件测评师是进行软件产品质量评估的专业人员。
他们的任务是测试软件的功能、性能和稳定性,以确保软件产品符合用户需求并具备良好的用户体验。
以下是软件测评师需要掌握的基础知识:1. 软件开发过程:了解软件开发的各个阶段,如需求分析、设计、编码、测试和部署等,并了解不同开发方法论(如瀑布模型、敏捷开发等)的特点和流程。
2. 测试方法和策略:熟悉各种测试方法,包括黑盒测试、白盒测试、灰盒测试等,并了解测试用例设计技巧和覆盖率评估方法。
掌握测试策略的制定,包括功能测试、性能测试、安全测试、兼容性测试等。
3. 测试工具和平台:了解常用的测试工具和平台,如自动化测试工具、性能测试工具、缺陷管理工具等,并熟悉它们的使用方法和功能特点。
掌握使用命令行工具进行测试和分析的技巧。
4. 缺陷管理:理解缺陷管理的流程和原则,包括缺陷的发现、跟踪、修复和验证等,并了解如何编写高质量的缺陷报告,以便开发人员能够准确理解和解决问题。
5. 软件测试标准和规范:熟悉软件测试的标准和规范,如ISO 29119、IEEE 829等,并了解各种软件质量模型和评估方法(如CMMI、SPICE等)的基本概念。
6. 数据库和SQL:熟悉数据库的基本概念和操作,了解SQL语言的基本语法和常用操作,以便进行数据库测试和数据验证。
7. 故障排除和调试:掌握故障排除和调试的基本方法和技巧,能够追踪问题源头、分析日志和进行错误定位。
8. 统计学基础:了解统计学的基本概念和方法,掌握测试结果的分析和统计处理技巧,能够进行测试数据的可靠性分析和效果评估。
以上是软件测评师需要掌握的基础知识。
通过深入学习和实践,软件测评师可以不断提升自己的技能和能力,为软件质量的提升做出贡献。
软件评测师知识点总结作为一名软件评测师,深入了解软件的各个方面,包括功能、性能、用户体验等方面是必不可少的。
以下是软件评测师需要了解的知识点总结:软件开发流程了解软件开发的整个流程是软件评测师的基础。
这包括需求分析、设计、编码、测试和发布等各个环节。
软件评测师需要了解每个环节的工作内容和流程,从而能够在评测过程中更好地理解软件开发背后的原理和逻辑。
测试方法与技术软件评测师需要了解各种测试方法和技术,包括黑盒测试、白盒测试、性能测试、安全测试等。
对于一些常用的测试工具和框架也需要有一定的了解,比如Selenium、JMeter等。
软件测试流程了解软件测试的整个流程,包括测试计划制定、测试用例设计、测试执行、缺陷管理等。
软件评测师需要对测试流程有清晰的认识,从而能够在评测过程中更加系统地进行工作。
缺陷管理软件评测师需要了解缺陷管理的基本原则和流程。
这包括如何发现、记录和跟踪缺陷,如何进行缺陷的分析和分类等。
软件测试工具软件评测师需要了解各种测试工具的使用方法和特点,比如LoadRunner、JIRA等。
对于一些常用的自动化测试工具也需要有一定的了解,比如Selenium、Appium等。
软件开发技术软件评测师需要有一定的编程基础和软件开发技术知识,以便更好地理解软件的内部结构和工作原理。
对于一些常用的编程语言和开发框架也需要有一定的了解,比如Java、Python等。
用户体验软件评测师需要对用户体验有一定的认识。
这包括对于界面设计、交互设计、可用性等方面的了解。
软件功能软件评测师需要对软件的各项功能有深入的了解。
对于软件中各个模块和功能点的工作原理和逻辑需要有清晰的认识。
软件性能软件评测师需要了解软件的性能测试方法和技术,以便对软件性能进行评测和优化。
安全性软件评测师需要对软件的安全性有一定的认识,了解各种安全漏洞和攻击手段,以便对软件的安全性进行评测和提出改进建议。
总结软件评测师需要具备全面的软件测试和软件开发知识,才能更好地进行软件评测工作。
软件评测师知识点
以下是软件评测师需要掌握的一些知识点:
1. 软件测试基础知识:了解软件测试的基本概念、方法、流程和原则,熟悉各种测试技术和工具。
2. 软件开发生命周期:了解软件开发过程中不同阶段的任务和活动,如需求分析、设计、编码、测试和维护等。
3. 软件质量管理:了解质量管理的基本原理和方法,包括质量标准、质量保证、质量控制、缺陷管理等。
4. 编程知识:具备一定的编程能力,能够理解和修改源代码,熟悉至少一种编程语言。
5. 系统架构和基础设施:了解不同操作系统、数据库、网络协议等的基本原理和运行机制。
6. 测试工具和技术:掌握常用的测试工具,如静态代码分析工具、自动化测试工具、性能测试工具等,熟悉不同的测试技术,如黑盒测试、白盒测试、灰盒测试等。
7. 缺陷管理和跟踪:能够识别、记录和跟踪软件缺陷,并能够与开发人员有效地沟通和协调解决问题。
8. 常见的软件开发方法和框架:了解敏捷开发、瀑布模型、迭代开发等常见的开发方法和框架,熟悉它们的优缺点和适用条
件。
9. 业务领域知识:根据具体的软件项目,了解相关的业务领域知识,以便更好地理解用户需求和进行测试。
10. 沟通和协作能力:与开发人员、产品经理、用户等进行有效沟通和协作,能够准确理解需求,并提供准确的测试结果和建议。
以上是软件评测师需要掌握的一些知识点,希望对你有帮助。
软件评测师考试知识点软件评测师考试呀,那可有点意思呢。
这考试的知识点就像一个装满宝藏的大箱子,我们得一个一个把宝贝掏出来看看。
先说软件评测的基本概念吧。
这就像是给软件做一个全面的体检,看看它有没有啥毛病。
你得知道啥是软件评测,它可不是简单地玩一玩软件就完事儿了。
它要从好多方面去检查,像软件的功能对不对呀,性能好不好呀。
比如说,一个购物软件,它的下单功能得顺畅吧,要是点个下单半天没反应,那这软件的功能就有问题了。
再讲讲软件评测的流程。
这流程就像做菜一样,有一道道工序。
最开始呢,得先确定评测的目标,就好比你要做一道红烧肉,你得先知道你想做出啥样的红烧肉,是甜口的还是咸口的。
然后就是设计评测方案,这就像准备食材和调料,你得想好要用啥方法去评测这个软件,用哪些工具呀。
接下来就是执行评测了,这时候就像开始做菜,按照方案一步一步来。
最后呢,得给出评测结果和报告,就像把做好的菜端出来,告诉大家这菜做得咋样。
软件评测师还得懂软件的质量特性。
比如说可靠性,这软件得稳定呀,不能老是崩溃。
就像我们人一样,要是身体老是出毛病,那可不行。
还有易用性,软件得让大家用着顺手,不能搞得特别复杂,像那种让人看一眼就头疼的操作界面,肯定不符合易用性的要求。
软件评测的方法也不少呢。
有黑盒测试,这就像给软件一个黑盒子,你只看它的输入和输出,不关心它里面是咋运作的。
还有白盒测试,这就是把软件的盒子打开,看看里面的代码逻辑啥的。
这两种方法都有自己的用处,就像不同的工具,在不同的情况下用不同的工具才能把活干好。
学习这些知识点呀,就像在一个神秘的软件世界里探险。
有时候会觉得有点难,就像在迷宫里找路,但是一旦搞懂了,就会特别有成就感,感觉自己就像一个软件世界的小侦探,能把软件的问题都找出来呢。
软件评测师下午题知识点总结
下午题主要包括以下几个方面的知识点:
1. 软件评测的基本概念和流程:了解什么是软件评测,评测的目的和重要性,评测的基本步骤和流程。
2. 软件评测的指标和标准:了解评测中常用的指标和标准,如性能指标、功能指标、易用性指标等,以及评测中的注意事项和常见的评价标准。
3. 软件评测的方法和技巧:了解评测中常用的方法和技巧,如功能测试、性能测试、用户体验测试等,以及评测中的常见技巧和注意事项。
4. 软件评测的工具和平台:了解评测中常用的工具和平台,如测试工具、测试环境等,以及评测中的常见工具和平台选择原则。
5. 软件评测的报告和分析:了解评测报告的写作和分析方法,如如何撰写评测报告、如何进行数据分析等,以及评测报告中的常见问题和注意事项。
6. 软件评测中的常见问题和挑战:了解评测中常见的问题和挑战,如如何处理软件Bug、如何对软件进行定量评价等,以及评测中常见的解决方法和技巧。
以上是软件评测师下午题的主要知识点总结,希望对你有所帮助。
软件评测师教程考点梳理软件评测师是一个新兴的职业领域,随着互联网和科技的发展,软件评测师的需求也越来越多。
作为一个软件评测师,需要具备一定的技术和专业知识。
本文将对软件评测师的考点进行梳理,包括测试方法、测试工具、测试报告等方面。
1.测试方法软件评测师需要掌握常用的测试方法,包括黑盒测试、白盒测试、灰盒测试等。
黑盒测试是指不考虑内部结构,只关注功能和接口的测试方法;白盒测试是指通过分析程序的内部结构和逻辑来设计测试用例;灰盒测试是黑盒测试和白盒测试的结合。
软件评测师需要了解这些测试方法的优缺点和适用场景,能够根据具体情况选择合适的测试方法。
2.测试工具软件评测师还需要熟练掌握各种测试工具,包括性能测试工具、自动化测试工具、缺陷管理工具等。
性能测试工具可以用来测试软件在不同负载下的性能表现;自动化测试工具可以用来自动执行测试用例;缺陷管理工具可以用来记录和跟踪软件中的缺陷。
软件评测师需要了解不同测试工具的功能和使用方法,能够根据需要选择合适的工具。
3.测试用例设计测试用例是软件评测师进行测试的基本单位,一个好的测试用例可以有效地发现软件中的缺陷。
软件评测师需要学会如何设计有效的测试用例,包括正常情况测试、边界条件测试、异常情况测试等。
正常情况测试是指对软件的正常功能进行测试;边界条件测试是指对软件的边界情况进行测试;异常情况测试是指对软件的异常输入和操作进行测试。
软件评测师需要充分了解软件的需求和设计,能够设计出全面且有效的测试用例。
4.测试报告撰写测试报告是软件评测师对测试结果进行总结和归纳的文件,也是软件开发团队进行问题修复和改进的依据。
软件评测师需要学会如何撰写清晰、准确的测试报告,包括测试环境的描述、测试用例的执行情况、发现的缺陷以及对缺陷的评估和建议等。
测试报告需要包含足够的信息,以便软件开发团队能够及时处理和改进软件。
5.用户体验评估软件评测师还需要对用户体验进行评估,包括界面设计、操作流程、交互性、响应速度等方面。
软件测试工程师职业知识点软件测试工程师是在软件开发过程中负责确保软件质量的重要角色。
他们需要具备全面的职业知识点,以便能够有效地进行软件测试工作。
本文将介绍一些软件测试工程师需要掌握的关键知识点。
一、软件测试概述软件测试是指为了评估和改进软件质量而使用的一种系统化过程。
它包括测试计划、测试设计、测试执行和缺陷跟踪等多个步骤。
软件测试工程师需要了解软件测试的基本概念和原则,以及测试的目的和好处。
二、软件测试方法软件测试工程师需要熟悉各种软件测试方法,包括黑盒测试、白盒测试、灰盒测试等。
黑盒测试是基于功能和需求规格进行的测试,白盒测试是基于代码内部结构的测试,而灰盒测试结合了黑盒测试和白盒测试的优点。
三、测试设计技巧测试设计是软件测试工程师非常重要的工作环节之一。
测试设计技巧包括等价类划分、边界值分析、状态转换图、决策表等。
软件测试工程师需要根据不同的测试需求来选择合适的测试设计技巧,并为软件编写有效的测试用例。
四、自动化测试自动化测试可以提高软件测试的效率和准确性。
软件测试工程师需要学习使用自动化测试工具,如Selenium、Junit等。
他们需要能够编写自动化测试脚本,并进行自动化测试的执行和结果分析。
五、缺陷管理缺陷管理是软件测试工程师必备的技能之一。
他们需要能够准确地识别和记录软件缺陷,并与开发人员进行沟通和协调。
软件测试工程师还需要能够对缺陷进行分类和优先级排序,以确保缺陷及时得到修复。
六、性能测试性能测试是指评估软件在不同负载情况下的性能表现。
软件测试工程师需要了解性能测试的基本概念和方法,以及性能测试工具的使用。
他们需要设计和执行性能测试,并对测试结果进行评估和优化。
七、安全测试安全测试是为了评估软件系统的安全性而进行的测试活动。
软件测试工程师需要学习和掌握各种安全测试技术,如渗透测试、代码审计等。
他们需要深入了解安全漏洞和攻击手段,并进行相应的漏洞修复和安全优化工作。
八、软件开发方法论软件测试工程师还需要了解软件开发的各种方法论,如瀑布模型、敏捷开发、DevOps等。
软件评测师100条知识点速记软件评测师需要具备的知识点非常丰富,以下是其中一些重要的知识点速记:1. 软件测试方法,黑盒测试、白盒测试、灰盒测试等。
2. 测试用例设计技巧,等价类划分、边界值分析、因果图等。
3. 软件测试工具,如Selenium、JIRA、LoadRunner等。
4. 缺陷管理流程,缺陷报告、跟踪、验证和关闭。
5. 自动化测试技术,脚本编写、执行和结果分析。
6. 软件开发模型,瀑布模型、敏捷开发、迭代开发等。
7. 质量保证标准,ISO 9000、CMMI等。
8. 测试报告撰写,测试结果、问题分析、建议改进等。
9. 用户体验测试,界面设计、易用性评估等。
10. 软件安全测试,漏洞分析、安全防护等。
11. 性能测试,负载测试、压力测试、稳定性测试等。
12. 移动应用测试,Android、iOS平台特点及测试方法。
13. 数据库测试,数据一致性、完整性、性能等方面。
14. 软件测试标准,IEEE 829、ISO/IEC/IEEE 29119等。
15. 测试管理工具,TestLink、TestRail等。
16. 软件配置管理,版本控制、变更管理等。
17. 软件测试文档,测试计划、测试用例、测试报告等。
18. 软件质量度量指标,缺陷密度、覆盖率、可靠性等。
19. 面向对象测试,继承、多态、封装等概念。
20. 软件测试的基本原则,全面性、经济性、有效性等。
21. 软件测试的生命周期,需求分析、设计、执行、验收等阶段。
22. 软件测试的风险管理,识别、评估、应对风险。
23. 软件测试的自动化工具选择,根据项目需求选择合适的工具。
24. 软件测试的持续集成与持续交付,CI/CD流程及工具。
25. 软件测试的云端化,云测试平台、虚拟化技术等。
26. 软件测试的人工智能应用,机器学习、自然语言处理在测试中的应用。
27. 软件测试的区块链应用,智能合约、数据不可篡改性等。
28. 软件测试的物联网应用,设备互联、数据安全等。
第一部分:软件评测知识1.软件质量与软件测试软件测试:在规定条件下对程序进行操作,以发现错误,对软件质量进行评估,包括对软件形成过程的文档、数据以及程序进行测试软件质量:软件特性的总和,软件满足规定或潜在用户需求的能力2.软件测试与质量保证软件测试只是质量保证工作中的一个环节,软件质量保证与软件测试是软件质量工程的两个不同层面的工作;质量保证:通过预防、检查与改进来保证软件质量,采用全面质量管理和过程改进的原理来开展质量保证工作,主要关注软件质量的检查与测试,主要着眼于软件开发活动的过程、步骤和产特软件测试:通过执行软件来,对过程中的产物(开发文档和程序)进行走查,发现问题,报告质量3.软件测试的目的测试是程序的执行过程,目的在于发现错误;一个好的测试用例在于发现了至今未发现的错误;一个成功的测试是发现了至今未发现的错误的测试;4.软件测试原则所有的软件测试都应追溯到用户需求应当把“尽早地和不断地进行软件测试"作为测试者的座右铭完全测试是不可能的,测试需要终止测试无法显示软件潜在的缺陷;充分注意测试中的群集现象程序员应避免检查自己的程序尽量避免测试的随意性5.软件测试对象程序开发过程中的各个文档、源程序6.软件测试过程模型-V模型是软件开发瀑布模型的变种,主要反映测试活动与分析和设计的关系;局限性:把测试作为编码之后的最后一个活动,需求分析等前期产生的错误直到后期的验收测试才能发现7.软件测试过程模型-W模型在V模型的基础上,增加千开发阶段的同步测试,形成W模型;测试与开发同步进行,有利用尽早的发现问题局限性:仍把开发活动看成是从需求开始到编码结束的串行活动,只有上一阶段完成后,才可以开始下一阶段的活动,不能支持迭代,自发性以及变更调整8.软件测试过程模型-H模型在H模型中,软件测试过程活动完全独立,贯穿于整个产品的周期,与其他流程并发地进行,某个测试点准备就绪时,就可以从测试准备阶段进行到测试执行阶段;软件测试可以进行尽早的进行;软件测试可以根据被测物的不同而分层次进行9.测试模型使用14.验收测试测试内容:根据任务书或合迥、供需双方约定的验收依据文档进行对整个系统的测试与评审,确认是否接收或拒绝系统;15.开发方测试通常也叫‘验收测试’或‘a测试’,在软件开发环境中,开发者检测与证实软件的实现是否满足软件设计说明或软件需求说明的要求16.用户测试在用户的应用环境下,用户检测与核实软件实现是否符合自己预期的要求。
软件评测师知识点整理(根据大纲)2015目录第一篇理论篇第1章软件测试概论1.1 概述1.2 国内外现状1.3 软件测试与软件项目的关系1.4 软件测试的发展趋势1.5 第三方测试第2章软件测试基础2.1 软件测试与软件质量2.2 软件测试目的2.3 软件测试原则2.4 软件测试对象2.5 软件测试分类2.6 软件测试过程模型2.7 软件生命周期测试策略2.8 软件失效分类与管理2.9 白盒测试2.10 黑盒测试2.11 自动化测试第3章软件质量与评价(软件测试标准)3.1 质量的定义3.2 测度与度量3.3 软件质量模型3.4 标准的发展3.5 GB/T 18905产品评价3.6 GB/T 16260.1产品质量3.7 软件测试国家标准第4章软件测试过程与管理4.1 软件测试过程4.2 评价过程的特性4.3 评价过程4.4 评价与生存周期的关系4.5 评价过程的要求4.6 配置管理4.7 测试的组织与人员4.8 软件测试风险分析4.9 软件测试的成本管理第二篇测试技术第5章黑盒测试案例设计技术……第6章白盒测试技术第7章面向对象的软件测试技术第8章应用负载压力测试第9章Web应用测试第10章网络测试第11章安全测试与评估第12章兼容性测试第13章标准符合性测试第14章易用性测试第15章可靠性测试第16章文档测试第三篇测试案例第17章功能测试第18章白盒测试第19章数据库测试第20章负载压力测试及故障附录测试工具介绍一、计算机系统构成及硬件基础知识(科 1 大纲 1.1)计算机系统各组成部分的基本概念及存储器等内容的出题频率比较高有关存储器的容量计算和系统可靠性的计算等需要重点掌握1、计算机体系结构分类、按Flynn、冯氏分类Flynn 分类:指令流、数据流、多倍性三方面进行分类。
单指令流单数据流(SISD):控制器1、处理器1 主存模块1单指令多数据流(SIMD):控制器1、处理器N 主存模块N多指令流单数据流(MISD):没有这种计算机多指令流多数据流(MIMD):控制器N、处理器N 主存模块N 代表:多计算机冯氏:以计算机系统在单位时间内所能够处理的最大二进制位数分类。
2、处理机运算器和控制器组成中央处理器CPU。
(1)运算器负责完成算术、逻辑运算功能。
通常由ALU(算术逻辑单元)、寄存器、多路转换器、数据总线组成。
(2)控制器负责方位程序指令,进行指令译码,并协调其他设备。
控制器通常由程序计数器(PC)、指令寄存器、指令译码器、状态/ 条件寄存器、时序发生器、微操作信号发生器组成。
✓程序计数器,也叫IP(EIP)(PC),用来存储下一条指令的地址。
可以通过call,jmp 等跳转指令间接改变,可以用Move,push 等读出其值,但是不可写(程序员可以访问)✓指令寄存器(IR )用来保存当前正在执行的一条指令。
当执行一条指令时,先把它从内存取到内存数据寄存器(MDR)中,然后再传送至IR。
指令寄存器的位数取决于指令的子长。
对用户是透明的,用户不能访问。
✓指令译码器:对当前指令进行译码✓状态/条件寄存器:保存在计算过程中的状态和条件✓定时与控制电路PLA:产生各种微操作控制信号。
✓标志寄存器FR:记录运算器重要状态或特征。
✓专用寄存器:有特定功能和用途,例如程序计数器,标志寄存器都为专用寄存器✓通用寄存器:存放运算中间结果。
存取数据—>用户(3)主存与CPU 之间的硬连接:主存与CPU 的硬连接有三组连线:地址总线(AB)、数据总线(DB)和控制总线(CB)。
把主存看作一个黑盒子,存储器地址寄存器(MAR)和存储器数据寄存器(MDR)是主存和CPU 之间的接口。
MAR 可以接收由程序计数器(PC)的指令地址或来自运算器的操作数的地址,以确定要访问的单元。
MDR 是向主存写入数据或从主存读出数据的缓冲部件。
MAR 和MDR 从功能上看属于主存,但通常放在CPU内。
CPU 特性:指令周期:取出并执行一条指令所需的时间,也称机器周期总线周期:指从CPU 存储器或I/O 端口存取一个字节所需的时间,也称为主振周期时钟周期:指CPU 处理动作的最小单位,通常我们说的I5,2.6GHZ (处理一个动作花费1/2.6GHZ)关系:一个指令周期可以划分为一个或多个总线周期,一个总线周期又可以划分为几个时钟周期字长:CPU 进行运算和数据处理的最基本、最有效的信息位长度。
参见数据总线3、基本输入/出设备纸带机、卡片机——大型计算机的输入设备;键盘、鼠标;显示器;——触摸屏实际上是显示器与鼠标的结合外存——是主存的辅助和延伸,主要有软盘、硬盘、光存储器、磁带机、闪存打印机图形图像摄影输入设备——包括扫描仪、数码相机、数字摄像机外设的访问1、程序查询方式:由cpu 执行程序控制数据的输入输出过程2、中断方式:外设准备好输入数据或接受数据时向CPU 发出中断请求信号,若CPU 决定相应该请求,则暂停正在执行的任务,转而执行中断服务程序进行数据的输入和输出处理,之后再回去执行原来被中断的任务。
3、DMA:CPU 只要想DMA 控制器下达指令,让DMA 控制器来处理数据的传送。
数据传送完毕后再把信息反馈给CPU,这样就很大程度上减轻的CPU 的负担4、计算总线数据传输速率总线数据传输率=时钟频率/每个总线包含的时钟周期x 每个总线周期传送的字节数例如:某系统总线的一个总线周期包含3 个时钟周期,每个总线周期中可以传送32 位数据。
若总线的时钟频率为33MHz,则总线的带宽(即传输速度)应该是多少?根据上述公式得出:33MHz/3×32b=11M×4=44MB/S5、计算机系统速度(指令/秒、事物项/秒)每秒指令数=时钟频率/每个总线包含的时钟周期/指令平均占用总线周期数Ps:时钟频率很大程度上决定了计算机的运算速度总线:是cpu、内存、输入、输出设备传递信息的公用通道。
数据总线DB:用于传送数据信息、(双向)地址总线AB:用来传送地址、单向CPU 指向内存或者其他寄存器。
控制总线CB:用来传送控制洗脑和时序信号、(双向)总线复用:减少总线中信号线的数量(1)、地址总线宽度地址总线宽度决定了CPU 可以访问的物理地址空间,简单地说就是CPU 到底能够使用多大容量的内存。
1KB=1024B;1MB=1024KB=1024×1024B。
其中1024=210。
1B(byte,字节)= 8 bit(见下文);8 位为一个字节1KB(Kibibyte,千字节)=1024B= 2^10 B;1MB(Mebibyte,兆字节,百万字节,简称“兆”)=1024KB= 2^20 B;1GB(Gigabyte,吉字节,十亿字节,又称“千兆”)=1024MB= 2^30 B;地址线的宽度为32 位,最多可以直接访问4096 MB(4GB)的物理空间。
2^32 B=4GB(2)、数据总线宽度负责整个系统的数据流量大小、如果数据总线的宽度为32,则字长为32控制总线6、存储系统(1)存储器分为:主存储器、辅存储器、Cache 三种。
存储器存取方式:顺序存取(磁带)、直接存取(磁盘)、随机存取(主存储器)、相联存取(Cache:根据内容来寻址)。
【1】存储器的性能➢存储时间:对随机存取,就是完成一次读写所花时间。
对非随机存取,就是将读写装置移动到目的位置所花的时间。
➢存储器带宽:每秒能方位的位数。
通常存储器周期是纳秒级。
计算公式:1/存储器周期X 每周期可访问的字节数➢数据传输率:每秒输入/输出的数据位数。
随机存取:传输率R=1/存储器周期非随机:读写N 位所需的平均时间=平均时间+N 位/数据传输率(2)主存储器(内存储器)1、RAM:随机存储器:只能暂时存数据,断电后数据无法保存。
SRAM:静态随机存储器:在不断电时信息能够一直保存(Cache 材料)DRAM:动态随机存储器,需要定时刷新以维持信息不丢失(内存材料)2、ROM:只读存储器,出厂前用掩膜技术写入,常用于存放BIOS 和微程序控制。
3、PROM:可编程ROM,只能够一次写入,需用特殊电子设备写入4、EPROM:可擦除的PROM,用紫外线照射15-20 分钟可擦除信息,可写入多次5、E2PROM:电可擦除EPROM,可以写入,但是速度很慢6、闪存存储器:速度介于EPROM 和E2PROM。
但是不能机型字节级别的删除2.1主存储器的组成实际存储器是由一片或多篇存储器配以控制电路构成。
其容量为W*B,W 是存储单元(word 字)的数量,B 表示每个word 由多少bit 组成,如果一个芯片规格为w*b,则组成W*B 的存储器需要(W/w)*(B/b)个芯片。
⏹主存储器的地址编码主存储器(内存)采用随机存取方式,需对每个数据块进行编码,而在主存储器中,数据块是以word 为单位来标识的,即每个字一个地址,通常采用十六进制表示。
按字节编址,地址从A4000H-CBFFFH 。
则地址表示CBFFF-A4000+1 字节,即28000H 字节,也就是16340 字节,等于160KB Ps:编址的基础是可以字节,也可以是字。
要计算地址位数,首先应计算要编址的字或字节数,然后求得对数即可得到⏹Cache(硬件来实现)Cache 高速缓冲存储器是存在于主存(内存)与CPU 之间的一级存储器,由静态存储器芯片(SRAM)组成,容量比较小但速度比主存高得多,接近于CPU 的速度。
但其成本更高,比内存小得多。
使用Cache 改善系统性能的主要依据是程序的局部性原理。
时间局部性原理:程序访问某条指令不久的将来还会访问这条指令。
空间局部性原理:程序访问某条指令,它的附近指令可能会被访问到。
⏹Cache 的访问的命中率为h(通常1-h 就是Cache 的是效率),Cache 的方位周期时间是t1,主存储器的方位周期时间害是t2,整个系统的平均访存时间就是t3=h*t1+(1-h)*t2①Cache存储器的映射机制分配给Cache 的地址存放在一个相联存储器(CAM)CPU 发生访存请求时,如果命中就直接使用。
这个判断的过程就似乎Cache 地址映射。
主存的块和Cache 块大小是一致的常见的映射3 种:【1】直接映射:一种多对一的映射关系,但一个主存块只能够复制Cache 的一个特定的位置上去。
Cache 的行号i 和主存的块号j 有函数关系i=j/m(m 为Cache 的总行数)某Cache 容量为16KB (可用14 位表示),每行的大小为16B (即可用4 位表示),则说明其可分为1024 行(可用10 位表示),主存的低4 位为Cache 的行内地址,中间10 位为Cache 行号。
如果内存地址为1234E8F8H,那么最后4 位就是1000(对应十六进制数的最后一位),而中间10 位,则对应E8F(111010001111)中获取,得1010001111.【2】全相联映射:将主存中一个块的地址与块的内容一起存于Cache 的行中,任一主存块能映射到Cache 中任意行。