20XX操作系统概念学习总结Word格式.docx
《20XX操作系统概念学习总结Word格式.docx》由会员分享,可在线阅读,更多相关《20XX操作系统概念学习总结Word格式.docx(9页珍藏版)》请在冰豆网上搜索。
3.可移植性好;
4.网络通信功能强。
linux是网络时代的产品,继承于unix,并做了很多改进。
第一章总领了全书,后面的二三四五六章都是讲的计算机的各种管理,总结如下图:
在这里我把每章中的重点用红色的颜色标记出来了,这样在精读的时候就可以有重点的向外扩散,抓住考点,征服考试。
第一遍阅读画的有点粗糙,在精读的时候再大大的丰富下。
1.什么是计算机性能
所谓计算机的性能(performance)通常是指计算机的速度,它是程序执行时间的倒数。
而程序执行时间是指用户向计算机送入一个任务后,直到获得他需要的结果这一段等待时间。
包括:
1.访问磁盘和访问存储器的时间
2.cpu运算时间
#url#动作时间
4.操作系统的开销时间等。
2.linux桌面操作系统性能分析意义
1.操作系统的性能直接影响了其上应用系统的性能
2.性能评估结果是用户在操作系统选购过程中的重要参考指标
3.为开发者优化操作系统的性能提供指导
4.为操作系统的评测提供依据3.linux桌面操作系统性能分析难点
1.应用千差万别
2.测试点过多
3.依赖多种因素和特征
4.没有针对性
5.没有实际应用前景4.如何评测计算机的性能
1.机器级的性能评测
机器级的性能评测,包括cpu和存储器的某些基本性能指标,计算机的可用性与有效性以及机器成本、价格与性/价比等,它是引进和购买计算机时最主要的选择依据。
2.算法级的性能评测
算法级的性能评测方法主要用于并行机评测,最初大都是为了评价并行算法的性能提出的,后来这些评测方法也被推广到并行程序上。
3.程序级的性能评测
程序级的性能评测主要是使用一组基准测试程序(benchmark)测试和评价计算机系统的各种性能。
5.测试程序准确度层次
1.真实程序
通过运行实际应用程序,例如c语言的各种编译程序、tex文本处理软件、cad设计工具spice等
2.核心程序
它是从实际程序中抽取少量但很关键的代码段,并以此来评估程序性能
3.小测试程序
这些测试程序的代码长度一般在100行之内,用户可以根据自己的目的随时编写一些小段程序,并按已预知的输出结果(如皇后问题、排序问题、求素数等)来判断机器的性能。
4.综合测试程序
它是首先对大量的应用程序中的操作进行统计,得到各种操作比例,再以此比例人为制造出测试程序。
6.基准测试6.1含义
基准测试程序用于测试和预测计算机系统的性能,揭示不同结构机器的长处和短处,为用户决定购买或使用哪种机器最适合他们的应用要求提供决策。
基准测试程序试图提供一个客观、公正的评价机器性能的标准。
6.2分类
宏观微观:
宏观基准测试程序(macro-benchmark)和微观基准测试程序(micro-benchmark)两大类。
前者将计算机系统作为一个整体来测试其性能,它相对于某一应用类来比较不同的计算机系统,所以对机器买主很有用,但它不能揭示计算机系统性能好、坏的原因。
后者是测试机器的某一特定方面的性质,如cpu速度、存储器速度、i/o速度、os性能、网络特性等。
应用类别:
定点性能
浮点性能
web服务性能
数据处理性能
系统软件性能
科学与工程计算性能
6.3主要的基准测试工具
lmbench
是由sgi的larrymcvoy所维护,是一种用于测试不同unix平台上os开销以及处理器、高速缓存、主存、网络和磁盘之间数据传输能力的可移植的基准测试程序。
whetstone
比较不同的计算机的浮点性能而设计的综合性基准测试程序。
lmbench着重测量以下内核组件:
调度程序、进程管理、通信、联网、内存映射和文件系统。
dhrystone
主要为测试整数与逻辑运算性能而设计的综合型基准测试程序whetstone,dhrystone不能预测用户程序性能,这些基准程序的主要缺点是对编译程序比较敏感。
linpack
测试的基准是用全精度64位字长的子程序求解100阶线性方程组的速度,测试的结果以mflops(每秒百万次浮点运算)作单位给出。
spec
原主要是测试cpu性能的,现在强调开发能反映真实应用(如实际负载等)的基准测试程序,并已推广至客户/服务器计算、商业应用、i/o子系统等。
unixbench
应用比较广泛的unix类操作系统性能测试工具之一,它属于微观基准测试程序,它主要从cpu浮点运算能力,以不同缓冲区大小拷贝不同大小文件,管道吞吐量,进程生成速度,系统调用开销等方面来测试linux相关性能。
xbench
主要测试xwindow图形界面的性能。
iozone
文件系统的评测工具,对read,write,re-read,re-write,readbackwards,read
strided,fread,fwrite,randomread,pread,mmap,aio-read,aio_write等一系列文件i/o性能进行了评测,是十分有用的文件系统性能分析工具。
ltp
最大的linux性能测试团体linuxtestproject开展的开源测试项目,这个团体专门从事linux性能测试研究。
这个项目收集了各种linux内核测试工具和相关资料,它的目标就是为了通过把自动化测试引入到linux内核测试以提高linux内核性能。
6.4现状和不足
linux基准测试程序都是微观基准测试程序,都是在测试机器的某一特定方面的性质,分别着重于cpu速度、存储器速度、i/o速度、网络特性等等某一方面或多个方面,偏重于硬件。
把linux操作系统作为一个整体,针对linux的操作系统性能的宏观基准测试程序目前还没有。
现有的linux测试工具都是基于微观基准测试程序,对于操作系统而言微观可测点实在是太多,写一个全面的基于自顶向下三层的全面测试工具工作量大,并且也没有太大实用价值。
毕竟应用是千差万别的,不利于在有限的时间内快速的得出linux版本性能优劣结论。
7.性能评测方法学
如何进行性能评测,一般一个性能评测的实际解决方案应该包括以下三个方面:
1.让被评测系统处于压力负荷下;
2.测量系统执行有效特定任务的能力,执行特定任务的耗时,执行特定任务的cpu利用率;
3.基于性价比考虑进行改进。
进行性能评测分析的目的是为了帮助开发人员更好更深层次的理解系统,找出系统瓶颈,并作出相应的改进。
8.三种性能评价技术
1.分析技术(modeling)
分析技术也叫建模分析,在一定假设条件下,计算机系统参数与性能指标参数之间存在着某种函数关系,按其工作负载的驱动条件列出方程,用数学方法求解。
2.模拟技术(simulation)
模拟技术按被评价系统的运行特性建立系统模型;
按系统可能有的工作负载特性建立工作负载模型;
语言编写模拟程序,模仿被评价系统的运行;
设计模拟实验,依照评价目标,选择与目标有关因素,得出实验值,再进行统计、分析。
该技术的特点是可应用于设计中或实际应用中的系统,可与分析技术相结合,构成一个混合系统。
3.测量技术(measurement)
测量技术只能对已投入使用的系统进行测量,通常采用不同层次的基准测试。
9.工作量选区(workload)
工作量就是模拟实际工作的工作任务,一个工作量它要产生针对该被评测系统实际工作应用的典型的工作任务,并且该工作任务应该对系统产生相应的压力负荷,一个好的性能评测工作量应该包括以下基本特征。
可测量性
可反复性
不变性
典型性10.自顶向下分析法
1.系统层(systemlevel):
包括处理器、内存、硬盘、网络等;
(硬件资源)
2.应用层(appalicationlevel):
包括锁、线程、堆、api等;
(程序资源)1
3.微结构层(micro-achitecture):
包括数据队列、循环结构、cache优化等。
11.衡量linux桌面系统性能评价的主要标准和参数
1.响应时间(elapsedtime)
内核完成某一任务(程序)所花费的时间,如磁盘访问、存储器访问、输入/
输出等待。
2.cpu时间
程序在cpu中的执行时间。
以秒为单位。
3.cpu利用率12.衡量linux桌面操作系统性能评价的主要标准
提供一个统一的、客观的、公正的和可相互比较的评价计算机的标准。
1.权威性
不是自己凭空想象,要有可靠的理论及事实依据支撑,业界广泛认可。
2.系统化
不是现有benchmark和工具的简单组合,而是能够系统化评估整机性能的方案。
它能够反映出整个计算机软件及硬件的综合处理能力,而不单纯是软件或者硬件,也就是说同一个硬件平台上测试,能够反映出不同操作系统性能不同,且在同一个操作系统,在不同的硬件平台上,性能测试也应该有所不同。
3.全面性
是对整机的整体性能测试,不是单纯的某个硬件或者某一方面能力的测试。
4.实用
要求该方法有实用价值,参考意义。
5.公正性
不一某些利益为目的的。
13.如何确定测试负载
从微观基准理论的角度来看,操作系统的基本性能参数实在是太多,基本性能参数测试包括cpu、内存、i/o、网络、操作系统、文件系统、编译器、数据库的性能指标。
从宏观基准测试理论出发就简单多了,主要是要确定合适的工作量来模拟有代表性的用户作业。
工作量的确定需要一定的理论依据,可以借鉴现有各种linux测试工具实践结果。
14.如何测试linux操作系统性能
linux桌面操作系统是近几年来基于linux内核发展起来的面向用户桌面应用的操作系统,内核还是基于linux,只是在其上添加了很多窗口程序,并且在用户界面和友好度上作出了很大的改进,更加易用和实用。
测试linux性能的关健在于测试linux内核性能,而测试linux内核性能又可以细化成五大子系统的测试。
可以针对内核这五大子系统设计工作量负载。
linux操作系统学习总结
(一)
最近粗略地看了一遍linux操作系统的书籍,主要讲的都还是一些概念上的知识,并没有深入地去了解内核以及内部机制。
现在总结一下看了书后的一些知识上的收获:
linux最大的魅力是支持gpl,并且以网络为核心。
其实操作系统的作用就是有效地整合软、硬件资源而为用户工作。
操作系统提高了开发的效率,我学习linux,关键也是在于研究了解其内核构造。
说到linux