文档库 最新最全的文档下载
当前位置:文档库 › 基于预测缓存的低功耗TLB快速访问机制

基于预测缓存的低功耗TLB快速访问机制

基于预测缓存的低功耗TLB快速访问机制
基于预测缓存的低功耗TLB快速访问机制

收稿日期:2010-12-13;修回日期:2011-03-02

基金项目:国家“863”高科技研究发展计划资助项目(2004AA1Z1020)

作者简介:武淑丽(1987-),女,河南周口人,硕士,主要研究方向为数字IC 前端设计和验证(fadeaway1000@163.com );孟建熠(1982-),男,博士后,主要研究方向为高性能低功耗嵌入式处理器的设计与研究;王荣华(1985-),男,博士研究生,主要研究方向为嵌入式处理器的设计以及验证;严晓浪(1947-),男,教授,博导,主要研究方向为超大规模集成电路设计、VLSI 设计自动化;葛海通(1972-),男,高级工程师,主要研究方向为嵌入式处理器设计与验证.

基于预测缓存的低功耗TLB 快速访问机制

*

武淑丽,孟建熠,王荣华,严晓浪,葛海通

(浙江大学超大规模集成电路设计研究所,杭州310027)

要:基于存储器访问局部性原理,提出了一种基于预测缓存的低功耗转换旁置缓冲器(TLB )快速访问机

制。该机制采用单端口静态随机存储器(SRAM )代替传统的内容寻址存储器(CAM )结构,

通过匹配搜索实现全相连TLB 的快速访问,

在两级TLB 之间设计可配置的访问预测缓存,用于动态预测第二级TLB 访问顺序,减少第二级TLB 搜索匹配的延时,并有效降低第二级TLB 访问功耗。采用该机制明显降低了TLB 的缺失代价,当第一级TLB 缺失时访问第二级TLB 的平均访问延时接近1个时钟周期,约为原有平均访问延时的20%,增加的面积开销仅为原内存管理单元的1.81%左右,

具有低成本、低功耗的特征。关键词:内存管理单元;两级转换旁置缓冲器;内容寻址存储器;静态随机存储器;预测缓存;快速访问;低功耗中图分类号:TP393.08

文献标志码:A

文章编号:1001-3695(2011)08-2964-03

doi :10.3969/j.issn.1001-3695.2011.08.045

Fast and low power TLB access mechanism with prediction buffer

WU Shu-li ,MENG Jian-yi ,WANG Rong-hua ,YAN Xiao-lang ,GE Hai-tong

(Institute of VLSI Design ,Zhejiang University ,Hangzhou 310027,China )

Abstract :This paper proposed a fast and low power TLB access mechanism with prediction buffer based on memory access lo-cality principle ,and designed a two-level TLB structure implemented by SARM instead of CAM to achieve fast access of the full associated TLB.Between the two levels of the introduced TLB ,an independent and hardware configurable prediction buff-er was designed to dynamically predict the access sequences of the second level TLB ,which could reduce its access penalty when the first level TLB missed and significantly reduce the dynamic power consumption with little control logic.Experiment shows that compared with the traditional two-level TLB structure ,the average access cycles of the second level TLB are about

20%of the traditional one ,with only 1.81%area increment ,which support low power and low cost embedded application.Key words :MMU ;two-level TLB ;CAM ;SRAM ;prediction buffer ;fast access ;low-power

0引言

当前的高端嵌入式处理器均在片内集成了内存管理单元

(MMU ),它是支持虚拟处理器的核心部件,实现虚拟地址到物理地址的映射、

存储访问权限的控制以及地址属性的设置等功能。其中,转换旁置缓冲器(translation look-aside buffer ,TLB )是MMU 的核心部件,完成虚拟地址到物理地址的实时转换。

目前的TLB 架构主要基于内容寻址存储器(content addressable memory ,CAM ),其基本原理是对输入内容与存储单元中的每个表项进行并行比较获得匹配信息,在一定程度上提升了TLB 表项匹配速度。CAM 的缺点是:它是定制的,因此其工艺跃迁

性差,

设计和维护的成本高,并且大量数据的并行比较所产生的功耗是十分明显的。如文献[

1]TLB 耗能约占缓存总功耗的20% 25%,而在Strong ARM [2]

和Hitachi SH-3这两款嵌入式处理器中,

TLB 耗能分别占总功耗的17%和15%[3]

之多。目前常见的措施是在CAM 结构的前提下,通过优化TLB 访问机制,实现性能提升、功耗降低的目的。如Banked TLB [4,5]

提出将整个TLB 分成几路相联的块,通过部分信息比较获得当前访问的TLB 区块,但是该机制的TLB 页面缺失率

较高,空间使用率低,会引起较大的性能损失。支持多种页面大小的TLB

[6,7]

,通过在硬件上支持两种或多种页面大小来获

得高性能,但是该方法需要额外的硬件资源来创建大页TLB ,增加了较大的硬件开销。当前实际工程中,嵌入式处理器常采用分层结构的TLB 访问机制,这是因为嵌入式应用具有较强

局部性特征,在面向嵌入式应用的MMU 设计中可通过挖掘数据访问局部性的方法,将最频繁访问的页面集中在若干的TLB 内,实现了TLB 性能的提升和CAM 地址比较转换功耗的降

低,如Victim-TLB [8]和Filter-TLB [9,10]

等。在两级TLB 访问机

制中,第一级TLB 表项较少,查询速度很快,第二级表项多,查询速度较慢。由于程序访问的空间特性,第一级TLB 能够完

成绝大部分地址转换工作,避免了对第二级TLB 存储器的频繁访问,不仅节约了匹配时间,同时显著降低了第二级TLB 的动态功耗

[11]

。但是当第一级TLB 发生缺失时,则需多个时钟

周期访问第二级TLB ,性能和功耗损失严重。第二级TLB 访问延时和功耗成为两级TLB 架构功耗的重要组成部分。本文提出的低功耗TLB 快速访问机制是分层结构的,第二级TLB 基于普通单端口SRAM ,使用SRAM 可避免CAM 的成本和功耗问题,并且可增加TLB 工艺跃迁的灵活性。

第28卷第8期2011年8月计算机应用研究

Application Research of Computers Vol.28No.8Aug.2011

1基于预测缓存的快速搜索机制

基于SRAM 的两级TLB 架构通常通过搜索匹配实现全相连

的TLB ,其动态功耗与访问延时成正比[12]

。当对第二级TLB 进行访问时,需要对每个TLB 表项进行匹配比较,这容易造成较大的访问延时和较高的访问功耗。显然,减少第二级TLB 访问表项的比较次数可以有效地降低TLB 的访问延时和访问功耗。本文提出的基于预测缓存的TLB 快速访问机制基本原理

是在第一级TLB (u -TLB )与第二级TLB (j -TLB )之间设计有限宽度的预测缓存,动态记录和调整j -TLB 表项的历史访问信息,并通过首先访问预测结果指向的j -TLB 表项的方式,达到节省j -TLB 表项的访问比较次数的目的,从而降低功耗。其机制的基本硬件结构如图1所示

在改进后的两级TLB 分层结构中,当u -TLB 缺失需要访问j -TLB 时,首先访问预测缓存,并从预测缓存中获得相应的

索引信息,直接索引j -TLB 的表项。通过充分利用程序对存储器访问的局部性原理,

本方法能够有效减少对j -TLB 表项的访问次数,降低j -TLB 表项的平均访问延时。图2是处理器访问TLB 实现虚拟地址到物理地址映射的流程

a )当u -TLB 命中,可直接实现虚拟地址到物理地址的映射。

b )当u -TLB 缺失,则首先访问预测缓存,根据缓存的访问信息预测j -TLB 访问索引。利用预测索引读取对应j -TLB 表项进行匹配,若匹配成功,则完成地址映射,无须遍历查找j -TLB ;若匹配不成功,预测缓存则按照传统两级TLB 机制遍历查找整个j -TLB 表项。

c )当遍历查找整个j -TLB 后仍然没有发现目标TLB 表项,则产生TLB 页面缺失异常请求,从片外载入TLB 映射信息。

2预测缓存设计空间分析

图3是本文提出预测缓存的基本结构。其中k 、

m 、n 是预测缓存的三个主要设计参数,

k 表示预测缓存项的深度,m 表示虚拟地址宽度,

n 表示第二级TLB 索引的宽度。vld 是1bit 有效位,标志该表项是否有效,可见预测缓存中每个表项的宽

度是m +n +1位。pIndex 是j-TLB 表项地址的索引信息,其宽度n 是由j-TLB 表项个数(2n )所决定的。假如pVPN 命中,则根据该信息直接索引到对应的j-TLB 表项。k 是预测缓存的深度,

在理想情况下,k 值越大(<2n 的情况下),参与预测比较的表项地址越多,即命中率越高,j-TLB 平均参与比较的表项就越少。pVPN 是低m 位的虚拟地址信息,用来实现虚拟地址的比

较,之所以选取低位比较,也是根据程序的空间局部性原理,程序执行访问的页面在较短时间内是比较靠近的,即VPN 的高位相同或者相近,而低位的区别比较大,因此选择低位就能更准确地预测相应的TLB 表项。在不考虑其他因素的理想情

况下,当m (m <2n

的情况下)增加1,预测缓存的命中率就增加了一倍。因此,

不同预测缓存的参数配置会带来不同的预测结果,

而设计预测缓存的考虑就集中在m 、k 的取值上,尽量达到性能和硬件开销的双赢

目前嵌入式处理器缓存常用的替换策略有先进先出

(FIFO )策略、最近最少使用(LRU )策略等。选择替换策略的主要目标是获得最优的命中率。在很多种情况下,

FIFO 替换策略与LRU 替换策略的命中率相差不大[13]

,但是LRU 实现逻辑复杂,

硬件开销也很大,需要缓存的每一项都要引入一个称为年龄计数器的硬件或软件计数器。本文提出的预测缓存要实现小硬件开销的目的,在性能相差不大的基础上,

FIFO 替换策略是比较优的选择。

3预测缓存资源的优化配置

不同预测缓存参数的选择对于访问功耗所造成的影响是不同的,因此需要选择最佳配置方案以获得最好的性能。由于SRAM 的动态功耗与访问延时成正比关系,因此预测缓存的参数选择可以用j -TLB 的平均访问周期来衡量。根据分析得[14]

T average =T hit ?R predict_hit +T miss ?R predict_miss

(1)

其中:T average 是j -TLB 的平均访问周期;T hit 是命中查找周期;R predict_hit 是预测缓存命中率;T miss 是失配查找周期;R predict_miss 是

预测缓存失配率。

一般情况下,当预测缓存命中时只需一个单位周期就可以得到j -TLB 表项,而当预测缓存失配时,则需遍历查找整个j -TLB ,要经过多个单位周期才能完成。由式(1)可知,提高预测缓存的命中率可以有效地减少j -TLB 访问表项的比较次数,减小平均访问周期T average ,

进而降低TLB 动态访问功耗。本文以基准测试程序powerstone 和dhrystone 作为目标程序进行分析,分别在预测缓存深度k 固定的情况下(理想情况

下为了消除深度的影响,

k 值应为无穷大,本文设置k 值为j-TLB 组最大表项的数值)统计分析得到宽度m 与j-TLB 平均访

问周期的关系,以及在宽度m 一定(小于等于虚拟地址VPN 的宽度)的情况下统计分析得到深度k 与j-

TLB 平均访问周期·

5692·第8期武淑丽,等:基于预测缓存的低功耗TLB 快速访问机制

T average 的关系,得到关系如图4、

5所示

。由图可以分析得到预测缓存的参数设置:

a )在理想的情况下,j-TLB 平均访问周期会随着预测缓存宽度m 的增加或者深度k 的增加而不断减小,

直到预测缓存每次均预测正确,即j-TLB 平均访问周期T average 为1,如图4、5关系曲线的变化趋势所示。

b )从图4、5可以发现,当预测缓存宽度m 一定时,随着深度k 的增加,

j -TLB 平均访问周期减小;当深度k 一定时,随着预测缓存宽度m 的增加,

j -TLB 平均访问周期随之减小。但是当宽度和深度增大到一定数值时,

j -TLB 平均访问周期基本上稳定了。造成这种现象的主要原因有两个:(a )程序访问的局部性原理,

在特定时间范围内程序频繁访问的页面是基本固定的;(b )采用的基准测试程序powerstone 和dhrystone 的TLB 访问的地址空间大小有限,u -TLB 发生缺失的页面范围也是有限的,当m

或者k 增大到某一值时,每次查找预测缓存基本都会被命中,因此,

此时j -TLB 的平均访问周期变化幅度很小,接近1。4实验数据与分析

本文以32位高性能嵌入式处理器CK510[15]

及其平台为基础,在原有两级TLB 的基础上设计实现预测缓存及其控制

逻辑。为了直观地了解本文提出的低功耗TLB 快速搜索机制的优势,对比CK510原有的TLB 结构的性能与增加了预测缓存之后的TLB 性能,用式(1)所示的j -TLB 的平均访问周期T average 来衡量。

基于CK510的测试环境采用两级TLB 结构,2entry 全相连u -TLB ,64entry 全相连j -TLB ,因此(k ,m ,n )预测缓存索引信息宽度n 取6bit 。首先在深度k =8、宽度m =5(简称8-5)预测缓存的情况下,运行powerstone 和dhrystone 基准程序,测试原有的两级TLB (这里简称A-TLB ),然后测试增加了(8,

5,6)预测缓存后的TLB (这里简称B-TLB )平均访问周期T average 。对各个结果进行统计,如表1所示。结果显示,原有的TLB 结

构,

当第一级TLB (u -TLB )缺失时,j -TLB 平均访问周期约为5,而增加了预测缓存之后,j -TLB 访问周期明显小了很多,甚至接

近了理想中的1个周期。TLB 增加了预测缓存后的j -TLB 平均访问周期T average 仅为原来的20%左右,不仅实现了快速搜

索,而且低功耗的效果也很明显。

表1

A-TLB 与B-TLB 性能比较

测试基准u -TLB 缺失次数A-TLB /B-TLB

j -TLB 访问总周期A-TLB B-TLB T average A-TLB B-TLB adpcm 1600180173182585.0101.041compress 79160425543894595.3761.190enginee 27364113684063138665.0011.147g3fax 28334918372063737366.4831.319jpeg 43306919794515370054.5701.540pocsag 877144506138145.0741.105dhrystone

414

2076

463

5.014

1.016

基于预测缓存的TLB 的低功耗效果明显依赖于预测缓

存的命中率,不同应用场合的处理器运行程序的大小、缺失页面地址等也各不相同,选择恰当的预测缓存参数可以取得

更加优越的低功耗性能。本文测试了B-TLB 在预测缓存参数为2-1、

4-2、8-3、8-5、16-5、32-5、64-6时运行powerstone 基准程序的u -TLB 缺失次数和j -TLB 访问的总周期数,得到了j -TLB 的平均访问周期在不同预测缓存的参数设置下的结果,如表2所示。

表2

不同预测缓存参数下的B-TLB 低功耗对比测试

基准j -TLB 平均访问周期T average

2-14-28-38-516-532-564-6adpcm 3.4332.3252.1011.0411.0021.0011.000compress 3.4522.2112.1501.1901.0231.0031.003enginee 2.2312.0122.0191.1471.1061.0841.001g3fax 3.6212.4131.4831.3191.1101.0331.002jpeg 2.4252.1692.1021.2401.1271.0121.002pocsag 2.8412.6432.2321.1051.2311.0421.003dhrystone

2.328

2.214

2.121

1.016

1.103

1.072

1.050

结果显示,对于指令数相对较少的程序,如dhrystone 、

poc-sag 等,当预测缓存参数为8-5时,TLB 的低功耗效果已经很明显了;而对于指令数相对较多的程序,如g3fax 和jpeg 等,TLB 低功耗效果在预测缓存参数改变时仍有较大提升。采用预测缓存参数为32-5的B-TLB ,当u -TLB 缺失时对j -TLB 的平均访问周期约为1.035,仅为A-TLB 的20%,很接近理想情况下的1个周期。

(k ,m ,n )的预测缓存增加了k 个(m +n +1)位寄存器以

及k 个比较器,采用Design Compiler 对实现了(32,5,6)预测缓存的B-TLB 的CK510内存管理单元(MMU )进行物理综合,在

TSMC0.13μm 工艺下与未采用该低功耗方法的嵌入式处理器CK510内存管理单元相比,面积仅增加1.81%。

5结束语

本文基于嵌入式储存器访问的时间和空间局部性原理,提

出了一种基于预测缓存的低功耗TLB 快速搜索访问机制。该TLB 快速访问机制在独立可配置的预测缓存表项中,记录最近若干j -TLB 表项的部分历史访问信息,在对全相连的j -TLB 访问时可以有效地减少访问表项次数,从而降低动态访问功耗。并且利用预测缓存表项可配置的特点,根据具体应用情况,使

用简单的控制逻辑和少量的硬件资源,

可以进一步优化降低TLB 的功耗。基于预测缓存的低功耗TLB 快速访问机制在嵌

入式处理器CK510的应用中取得了优越的低功耗效果,且硬件开销极小。参考文献:

[1]EKMAN M ,DAHLGREN F ,STENSTROM P.TLB and snoop ener-gy-reduction using virtual caches in low-power chip-multiprocessors [C ]//Proc of the 2002International Symposium on Low Power Elec-tronics and Design.New York :ACM Press ,2002:245-246.[2]SRIBALAN T ,SANTHANM.StrongARM SA110,a 160Mhz 32b

0.5w CMOS ARM processor [C ]//Hot Chips 8:A Symposium on High-Performance Chips.1996:119-130.

[3]LEE J H ,WEEMS C ,KIM S D.Selective block buffering TLB sys-tem for embedded processors [J ].IEEE Proceedings Computers and Digital Techniques ,2005,152(4):507-516.

[4]LEE J H ,LEE J S ,JEONG S W ,et al .A banked-promotion TLB for

high performance and low power [C ]//Proc of International Confer-ence on Computer Design.2001:118-123.

[5]MANNE S ,KLAUSER A ,GRUNWALD D ,et al .Low power TLB

design for high performance microprocessors [R ].[S.l.]:University of Colorado ,1997.

(下转第2996页)

表2

优化后的预热工艺参数

热源

功率/W 热源移动速率/

(mm ·min -1)预热次数标准值(Gray_S )误差阈值(E )1000

100 150

2 4

177

3

实际自动化加工时,如果上下两层轮廓差异较大,造成这两层的激光加工时间相差很大,则预热次数也会跟着相差变大;有时上一层的激光加工轨迹相当短,则当前粉层预热1次即达到误差要求,这是因为上一层粉层的热量传至当前层所致。本例零件每层轮廓较平均,粉床散热程度相差不大,加工过程中的预热次数为2 4次。有若干层的预热热源移动速率需要自动调整以适应预热效果。对比图7和8,

采用预热优化方法后获得的样件在尺寸精度、

曲面轮廓完整度等方面均保持在较好的水平,机械强度具有较大的提高,并且两个样品均一次性加工成型完成,取消了试制阶段。

3结束语

提出了一种基于图像分析的快速成型预热优化方法,利用

Windows API 函数,采用VB 编程和二次开发技术,实现了对快速成型过程中预热程度的实时控制。该方法的核心原理是基于图像分析技术,对成型过程中的粉层图像进行实时获取与分析,根据分析结果反馈控制预热工艺参数。系统软/硬件方面均实现了模块化功能,

软件系统具有接口程序,可嵌入已有的快速成型设备及控制程序中。实例分析表明,基于图像分析的

预热优化控制系统有利于提高成型件的曲面精度及机械强度,并可有效提高成型效率,减少失败次数。参考文献:

[1]PAN Hai-peng ,ZHOU Tian-rui.Generation and optimization of slice

profile data in rapid prototyping and manufacturing [J ].Journal of Materials Processing Technology ,

2007,187/188:623-626.[2]STARLY B ,LAU A ,SUN W ,et al .Direct slicing of STEP based

NURBS models for layered manufacturing [J ].Computer-Aided De-sign ,2005,37(4):387-397.

[3]赵吉宾,刘伟军.快速成型技术分层算法的研究与进展[J ].计

算机集成制造系统,

2009,15(2):209-221.[4]胥光申,赵万华,卢秉恒.动态优化刮刀速度的新型涂层工艺

[J ].机械工程学报,2007,43(7):1-5.

[5]叶嘉楠,姚山,叶昌科,等.SolidWorks 环境下快速成型工艺的

虚拟评价方法[J ].计算机集成制造系统,2008,14(2):412-416.

[6]郭开波,陈立平,史玉升,等.选择性激光烧结设备管式辐射加

热数值建模与计算[

J ].中国机械工程,2009,20(8):996-999.[7]黄小毛,叶春生,吴思宇,等.并行栅格扫描填充路径及其规

划算法[J ].计算机辅助设计与图形学学报,2008,20(3):326-331.

[8]HUANG You-min ,LAN Hsiang-yao.Path planning effect for accura-cy of rapid prototyping system [J ].International Journal of Ad-vanced Manufacture and Technology ,

2006(30):233-246.[9]闫旭日,颜永年,张人佶,等.分层实体制造中层间应力和翘曲

变形的研究[

J ].机械工程学报,2003,39(5):40-44.[10]YANG Tong ,YAO Shan ,ZENG Feng.Profile invalidation approac-hing rapid prototyping [J ].Rapid Prototyping Journal ,2010,16(2):146-155.

[11]张宇红,曾俊华,洪军.大型零件光固化快速成型工艺研究[J ].

计算机集成制造系统,

2007,13(3):553-557.[12]闫春泽,史玉升,杨劲松,等.高分子材料SLS 中次烧结试验

[J ].华中科技大学学报:自然科学版,2008,36(5):86-89.[13]胥橙庭,沈以赴,顾冬冬,等.选择性激光烧结成形温度场的研

究进展[J ].铸造,

2004,53(7):511-515.[14]姚山,曾锋,叶昌科,等.热像仪建立覆膜砂SLS 过程激光能量

输入模型研究[

J ].大连理工大学学报,2007,47(3):349-352.(上接第2966页)

[6]TALLURI M ,HILL M D.Surpassing the TLB performance of superp-ages with less operating system support [C ]//Proc of International Conference on Architectural Support for Programming Languages and Operating Systems -ASPLOS.San Jose ,CA :ACM Press ,1994:171.[7]LEE J-H ,JEONG S-W ,KIM S-D ,et al .A banked-promotion trans-lation lookaside buffer system [J ].Journal of Systems Architec-ture ,2002,47(14-15):1065-1078.

[8]JOUPPI N P.Improving direct-mapped cache performance by the ad-dition of a small fully associative cache and prefetch buffers [C ]//Proc of the 17th ISCA.New York :ACM Press ,1990:364-373.[9]CHOI J H ,LEE J H ,PARK G H ,et al .An advanced filtering TLB

for low power consumption [C ]//Proc of the 14th Symposium on Com-puter Architecture and High Performance Computing.Washington DC :IEEE Computer Society ,2002:93-99.

[10]KIN J ,GUPTA M ,MANGIONE-SMITH W H.The filter cache :an

energy efficient memory structure [C ]//Proc of the 30th Annual IEEE International Symposium on Microarchitecture.Washington DC :IEEE Computer Society ,

1997:184-193.[11]刘坤杰,游海亮,严晓浪,等.面向嵌入式应用的内存管理单元

设计[J ].浙江大学学报:工学版,

2007,41(7):1078-1082.[12]葛海通.32位高性能嵌入式CPU 及平台研发[D ].杭州:浙江大

学,

2009.[13]CHEN J B ,BORG A ,JOUPPI N P.A simulation based study of TLB

performance [C ]//Proc of the 19th International Symposium on Com-puter Architecture.New York :ACM Press ,1992.

[14]HENNSSY J L ,PATTERSON D A.Computer architecture :a quanti-tative approach [M ].4th ed.USA :Morgan Kaufmann Publishers ,2007:188-247.

[15]C-SKY Microsystems.32-bit high performance and low power embed-ded processor [EB /OL ].http ://www.c-sky.com.

通用技术设计分析题

23道设计分析题 1、有人设计了一款前卫的女鞋(见右图),请根据你所学的知识和你的感受对这款女鞋 作出设计评价(提示:可从产品的功能、形态、创新性、安全性、市场应用前景等方面进行)。 答:这款鞋标新立异、前卫时尚,创新性好,但它失去了鞋的最基本功能——保护脚的 功能,不考虑设计中的人机关系,且穿着费时费力,如同刑罚,长时间穿着不利于身体健康。 对绝大多数人来说是不实用的,因此市场前景不好,只能用于某些特殊场合,如时装表演等。 (答案合理即可) 2、设计一个中学生随身携带的水壶,该如何进行设计分析?请写出影响设计的主要因素 答:对于一个中学生随身携带的水壶,我们应该从三个方面入手:即人、物、环境, 这里的人——中学生;物——水壶;环境——随身携带。从水壶分析,水壶壁需要能隔热,避免烫伤学生;这就要求在选材时选用既环保安全的材料而且隔热性能好,或者在水壶壁上增加隔热层;壶盖需要选择隔热的,由于中学生好运动,壶盖和壶身要连在一起,不容易丢失;而且水壶需要有背带,壶的容量不要太大,易于携带。 3、李明同学要设计一张椅子,请你帮他想想应该考虑那些人机关系 答:1手臂与椅子扶手;2背与椅子靠背;3臀与椅子坐垫;4腿与椅子高度;5脚与椅子脚。 4、同学们的书桌上通常都有5-6本常用书和工具书,7-8支各种笔,3-4本练习本,直尺,圆规,三角板……以及其他学习用具.为了放好这些用具方便拿取,请同学们设计一个多功能学习用品架.要求: 画出草图,并说说设计的一般过程。 答:1.发现与明确问题——学习用品太杂乱,需一用品架来摆放.自己有能力制作一个用 品架。 2.制定设计方案——选定材料,确定大小,颜色形状……分析遇到的问题,解决的方 法 3.制作原形或模型——画出草图 4.测试,评估.优化 5.使用和维护 5、有一次,兰兰同学家来了几个客人,兰兰同学用一次性塑料杯给客人倒了热茶水,过了一会兰兰发现了两个问题一是塑料杯受热变软不好拿,二是客人走动后杯子容易混淆,过后兰兰写信给了塑料杯厂家,提出了对杯子改进的方案.如果你是兰兰你明确了什么问题?说说你能向厂方提出怎么样的方案? 答:1.明确问题的要点:①杯子变软的原因:一是杯壁太薄,二是所用塑料材料不耐热②杯子易混淆是因为杯子上没有识别标记.③现有的材料和技术可以解决以上问题

缓冲溶液及其作用机制的教案

缓冲溶液及其作用机制(教学教案) 授课人:张瑞林 授课时间:20分钟 【教学目标】: 通过缓冲溶液的定义、作用、组成及作用机制的介绍,使学生对缓冲体系有一个基本的了解,为以后学习人体缓冲体系打下理论基础。 【教学方式】:多媒体结合板书进行讲解式教学 【教学内容】: 1、缓冲溶液的定义 2、缓冲溶液的作用 3、缓冲溶液的组成 4、缓冲溶液的作用机制 【教学重点及难点】:缓冲溶液的组成、缓冲溶液的作用机制 【教学过程】: 引言: 通过医学常识我们知道正常人的血液pH范围为7.35 ~ 7.45,pH值不因代谢过程中产生酸、碱性物质而变化。为什么血液的pH的范围能保持在7.35 ~ 7.45? 知识准备: 1.弱电解质的电离平衡 2.盐类水解 一、缓冲溶液的概念(由实验引出) 缓冲溶液:能抵抗外加少量强酸或强碱,而维持pH基本不发生变化的溶液。 缓冲作用:缓冲溶液所具有的抵抗外加少量强酸或强碱的作用。 【提问】:1.缓冲溶液的组成是怎样的? 2.缓冲溶液为什么能对抗外来少量强酸、强碱或适当稀释,而保持溶液的pH几乎不变的? 二、缓冲溶液的组成和作用机制 1.缓冲溶液的组成 根据缓冲对不同,缓冲溶液分为三种: 弱酸及其盐 弱碱及其盐 多元弱酸的酸式盐与其次级盐

2.缓冲溶液的作用机制 以HAc — NaAc为例 HAc、NaAc足量 HAc + H 2O H 3 O+ + Ac- + 左移 H 3 O+抗酸成分 + 抗碱成分右移 OH- 2H 2 O 共轭酸—抗碱成分共轭碱—抗酸成分三、讨论: NH 3—NH 4 Cl的缓冲原理 四、练习: 五、小结: 概念:缓冲溶液 缓冲溶液组成和缓冲作用 缓冲原理 六、作业: 搜集资料: 缓冲溶液在日常生活中的应用。

android文件功能释义

01.frameworks: 02../bin/am am命令来发送Intent 03../bin/app_process 系统进程 04../bin/audioloop 多媒体框架读取缓存内容 05../bin/bmgr adb shell命令下对Android Device所有package备份和恢复的操作。 06../bin/bootanimation 显示开机画面命令 07../bin/bu 系统backup manager 08../bin/bugreport bugreport命令,里面包含了各种log信息,大部分log也可以通过直接运行相关的程序来直接获得. bin/mpdecision 智能开核 09../bin/decoder decoder命令 10../bin/drmserver video protected 11../bin/dumpstate 状态抓取器 12../bin/dumpsys 系统抓取器 13../bin/ime ime命令所需jar包,用于查看当前话机输入法列表、设置输入法 14../bin/input input命令所需的jar包,用于模拟按键输入。 15../bin/installd android apk安装最后使用服务installd 来实现 16../bin/keystore keystore服务是加解密储存键值的服务。它主要作用就是验证应用程序与签名文件是否一致。 17../bin/keystore_cli keystore命令行 18../bin/mediaserver 是整个android中media部分的核心和灵魂。几乎所有与多媒体播放相关的内容都放在这里。包括了音视频的编解码以及显示输出 19../bin/omx_tests 多媒体框架omx接口测试 20../bin/pm 包管理器 21../bin/record 多媒体核心及插件record命令 22../bin/recordvideo 多媒体核心及插件 recordvideo命令 23../bin/screencap framebuffer service则调用截屏工具screencap来截屏。那些同步软件也是调用screencap实现截屏的 24../bin/screenshot 系统screenshot命令 25../bin/sensorservice 在Java层Sensor的状态控制由SensorService来负责 26../bin/service 配合libandroid_servers.so在话机启动时通过SystemServer以循环闭合管理的方式将各个service添加到ServiceManager中。 27../bin/servicemanager servicemanager服务的作用主要是服务管理,所谓的服务管理其实就是获取服务、检查服务、添加服务、枚举所有服务。 28../bin/sf2 多媒体核心及插件 recordvideo命令 sf2命令 29../bin/stagefright 多媒体框架 30../bin/stream 多媒体核心及插件stream命令 31../bin/surfaceflinger 触摸感应驱动

Android客户端缓存方案

概述: 客户端缓存机制是android应用开发中非常重要的一项工作,使用缓存机制不仅仅可以为用户节省3G流量,同时在用户体验方面也是非常好的选择. 缓存机制分为两部分,一部分是文字缓存,另一部分是多媒体文件缓存. 缓存文件保存策略: 1.文字缓存: 文字缓存应该分为两种,一种是更新比较频繁的区域,一种是更新不频繁的区域. 根据两者的更新频率区分它们的过期时间. 更新比较频繁的区域,它的缓存过期时间应该为应用程序内(即应用程序从打开到关闭的这段时间).这种情况会有专门的缓存文件夹存放该类缓存文件,以及专门的缓存数据库表存放信息.每次应用程序启动的时候都会先将该类数据清空. 另一种很少更新的区域,它的缓存不设置过期时间,而是提供一个按钮或者Menu可以让用户选择手动更新(如我的好友列表,我的订阅,我的分享.等等….) 具体的文字缓存划分,详见附录1. (1)通常情况下,我们与服务器交互都是采用JSON格式获取数据的,获取的JSON数 据仅仅是一段字符串,我们可以考虑将这些字符串使用文件流写入一个TXT,保存到 SD卡中,在数据库添加该数据的记录.添加数据库记录时,提供两个关键字段,一个是 请求的URL,另一个则是本地保存后的文件地址.日后每次向服务器发起请求之前都会根据URL在数据库中检索. 该方法好处:降低系统数据库数据量,不会出现数据库满了的现象. 缺点:IO操作频繁,有时代码书写有误会造成内存泄露等状况. (2)将JSON数据解析后装入List对象中,然后遍历List,将数据统统写入相应的 数据库表结构中,以后每次向服务器发起请求之前可以先在数据库中检索,如果有直接返回. 该方法好处:如果本地存在文字缓存,那么读取缓存速度快. 缺点:增加数据库数据量. 2.多媒体文件缓存 (1)图片缓存 图片的缓存可以根据当前日期,时间为名字缓存到SD卡中的指定图片缓存目录, 同时数据库中做相应记录,记录办法可以采用两个关键字段控制,一个字段是该图片 的URL地址,另一个字段是该图片的本机地址.取图片时根据URL在数据中检索, 如果没有则连接服务器下载,下载之后再服务器中作出相应记录. (2)视频文件缓存 考虑到视频文件就是动画片,每一集的大小应该超过20MB,如果边播放边下载的话 用户的3G流量负担是很大的,而且用户看完一集动画片,基本上不会再去看第二遍. 从这个状况来看,建议不要对视频文件进行下载缓存.另外也能降低程序员的编码负 担.

数据库习题与答案

一.选择题: 1、数据库分析与设计中,其设计对象称客观世界的( ) A、逻辑对象 B、目标对象 C、实体对象 D、需求对象 答案:B (150) 2、数据库物理设计完成后,进入数据库实施阶段,下列各项中不属于实施阶段的工作就是 ( ) A、建立库结构 B、扩充功能 C、加载数据 D、系统调试 答案:B (150) 3、通常用以下的顺序来完成数据库的设计工作( ) A、概念设计、物理设计、逻辑设计 B、逻辑设计、概念设计、物理设计 C、概念设计、逻辑设计、物理设计 D、物理设计、逻辑设计、概念设计 答案:C (150) 4、在数据库设计中,在概念设计阶段可用E-R方法,其设计出的图称为( ) A、实物示意图 B、实用概念图 C、实体表示图 D、实体联系图 答案:D (153) 5、 E-R图就是数据库设计的工具之一,它适用于建立数据库的( ) A、概念模型 B、逻辑模型 C、结构模型 D、物理模型 答案:A (155) 6、在关系数据库设计中,完成设计关系模式的任务就是属于( ) A、需求分析阶段 B、概念设计阶段 C、逻辑设计阶段 D、物理设计阶段 答案:C (157) 7、数据库逻辑设计的主要任务就是( ) A、建立E-R图与说明书 B、创建数据库说明 C、建立数据流图 D、把数据送入数据库 答案:B (158) 二.填空题 1、数据库概念设计就是在数据需求分析基础上进行的,其目的就是分析数据间的内在语义 关联,在此基础上建立一个数据的______________。 答案:抽象模型(152) 2、数据库的逻辑设计的基本方法就是将E-R图转换成指定RDBMS中的______________, 此外还包括关系的规范化以及性能调整,最后就是约束条件设置。 答案:关系模式(156) 3、数据库的逻辑设计的基本方法就是将E-R图转换成指定RDBMS中的关系模式,此外还 包括______________以及性能调整,最后就是约束条件设置。 答案:关系的规范化(156) 4、数据库的逻辑设计的基本方法就是将E-R图转换成指定RDBMS中的关系模式,此外还

吉林省高中通用技术-系统与设计-测试题

吉林省高中通用技术系统与设计测试题 通用技术 2018.9 本试卷共10页,100分。考试时长60分钟。考生务必将答案答在答题卡上,在试卷上作答无效。考试结束后,将本试卷和答题卡一并交回。 一、选择题共50小题,每小题2分,共100分 1.如图所示为滑台的运动系统示意图,由电机控制子系统和机械传动子系统组成。在电机控制子系统中,传感器检测电机的转动角度,并反馈到控制装置与设定值比较,控制装置根据偏差值发出运动信号,驱动器将运动信号转变成相应的电流驱动电机转动,在机械传动子系统中,电机带动丝杆转动,丝杆通过螺母驱动滑台移动。系统根据电机的转动角度和丝杆的螺纹间距计算出滑台移动的距离,从而实现对滑台 A.驱动器 B.控制装置 C.电机 D.丝杆 2.如图所示为一款内置锂电池的智能投影虚拟键盘,可在桌面上投影出虚拟键盘,用以输入中文、英文等多种语言,还可充当便携式充电器使用。以下关于该系统的说法中, 不正确 ...的是() A.锂电池损坏后,键盘将无法使用,体现了系统的整体性 B.可充当便携式充电器使用,体现了系统的目的性 C.可随时切换多种输入语言,体现了系统的动态性 D.光线过强的场所使用时不易看清键盘按键,体现了系统的环境适应性 3.电信、移动、联通三大通信公司各自埋设通信光纤,造成了巨大的资源浪费,国家从大局出发,考虑长远利益,经科学决策,决定联合成立铁塔公司,负责统一架设通信光纤,然后提供给三大运营商使用。该决策主要体现了系统分析的哪一原则 A.整体性原则 B.相关性原则 C.综合性原则 D.科学性原则4.某品牌智能手环,能记录佩带者的健身数据,进行计步、测距、记录卡路里燃烧量等操作,帮助佩带者健身,同时还有睡眠监测、设定闹钟、支持通话等功能。这款手环支持与大部分智能手机匹配,在待机方面充电5小时即可工作5天。关于该系统,以下说法中正确的是 1 / 18

缓存机制

3.1、缓存策略 3.1.1、一级缓存 之前每一个数据库操作都是一个Session,那么对于Session来说本身是存在着缓存,可以保留之前的查询结果。 但是对于Session的缓存只针对于一个Session有效,那么如果现在想针对于多个Session 有作用,则必须在SessionFactory上配置缓存,那么这样的缓存称为二级缓存。 在Hiernate按ID查询有两个方法:load、get 那么下面使用以上的查询方法,查询两次 程序虽然调用了两次load方法,但是只发出了一条的查询命令,证明,第一次的查询结果被保存下来了,那么这就是一级缓存。

与之前的相比,查询了两次操作,所以此时,证明一级缓存只是针对于一个Session起作用的。但是一级缓存是无法关闭的,始终会存在。

从运行结果可以发现,如果之前先进行了保存操作,那么之后再查询的话也不会重新发出查询语句。证明实体被缓存下来。 问题: 如果现在要求使用程序插入100000万条记录?该怎么办? 如果使用Hibernate处理的话,则可能会出现内存的溢出,所以在这种情况下首先是绝对不建议使用Hibernate完成的,就使用最基本的JDBC操作完成即可。 如果非要使用Hibernate做,则必须使用到Session中关于缓存的一些操作方法:·清空Session中的所有缓存:clear() ·清空Session中一个指定的实体:evict(Object obj) 例如:下面验证clear()方法 因为程序中,将所有的缓存清空了,所以之后再查询相同实体的时候,在Session中已

以上因为只清空了一个实体,所以只发出了三个查询语句。 那么就可以通过以上的方式完成100W条记录的插入 思路:按照每十条清空缓存的操作,并将缓存中的内容强制性的写到数据库之中 3.1.2、二级缓存(重点) 在Hibernate本身中支持了多种的二级缓存组件。本次使用EHcache。如果要想使用ehcache话,则首先必须进行配置,配置ehcache的缓存文件。 ehcache.xml:

Android4.0的多媒体框架Nuplayer介绍

Android4.x 的RTSP 框架学习 ——NuPlayer 介绍 本文介绍如下内容: 播放框架介绍 RTSP 源介绍 HTTP 流媒体的区别 要研究的点 NuPlayer 框图: NuPlayer NuPlayerDriver ALooper <<接口>> MediaPlayerInterface NuPlayer::Renderer NuPlayer::Decoder ACodec::UninitializedState AHierarchicalStateMachine ACodec ACodec::UninitializedState ACodec::LoadedToIdleState ACodec::IdleToExecutingState ACodec::ExecutingState ACodec::ExecutingToIdleState ACodec::IdleToLoadedState ACodec::FlushingState AHandler 1 * * 11* <<接口>>NuPlayer::Source *1 NuPlayer::HTTPLiveSource NuPlayer::RTSPSource ALooper 1* MyHandler * 1 ARTPConnection ARTSPConnection ALooper 1* mNetLooper for ARTPConnection ARTPSource ARTPAssembler AAVCAssembler AAVCAssembler AMPEG4AudioAssembler AH263Assembler AAMRAssembler AAMRAssembler AMPEG4ElementaryAssembler ARawAudioAssembler AnotherPacketSource <<接口>>MediaSource APacketSource * 1 * 1* 1OMX AHandler

数据库课程设计题目

ER 模型 目录 14. 高校社团信息管理系统的 ER 模型及转换 P16 15. 物资库存信息管理系统的 ER 模型 P17 16. 中学教务管理信息系统的 ER 模型 P18 17. 固定资产管理信息系统的 ER 模型 P19 18. 学校图书管理信息系统的 ER 模型 P20 19. 进销存管理信息系统的 ER 模型 P21 13. P14 原材料和产品信息管理系统的 ER 模型及转换 1.库存管理信息系统的 2. 人事管理信息系统的 3. 住院管理信息系统的 4. 公司车队信息系统的 5. 证券业务管理系统的 6. ER 模型及转换 P2 ER 模型 P3 ER 模型 P4 ER 模型 P5 ER 模型及转换 P6 勺 ER 模型及转换 P7 7.电脑销售信息管理系统的 8.图书发行信息管理系统的 ER 模型 P9 9. 库存销售信息管理系统的 ER 模型及转换 P10 10. 旅游管理信息系统的 ER 模型及转换 P11 11. 医疗和药品信息管理系统的 ER 模型及转换 P12 12. 车辆信息管理系统的 ER 模型及转换 P13 ER 模型 P8

ER 模型 某公司设计 了人事管理信息系统,其中涉及到职工、部门、 惩记录等信息。其 ER 图如图2所示。 图2人事管理信息系统的 这个ER 图有7个实体类型,其属性如下: 职工 部门 岗位 技能 奖惩 培训 课程 (课程号,课程名,教材,学时) 工资(工号,基本工资,级别工资,养老金,失业金,公积金,纳税) 这个ER 图有7个联系类型,其中1个1:1联系,2个1:N 联系,4个M:N 联系。联系类 型的属性如下: 选课 设置 考核 接受 试把这个 岗位、技能、 培训课程、奖 (工号,姓名,性别,年龄,学历) (部门号,部门名称,职能) (岗位编号,岗位名称,岗位等级) (技能编号,技能名称,技能等级) (序号, 奖惩标志,项目,奖惩金额) 口. 号, (时间,成绩) (人数) (时间,地点,级别) (奖惩时间) ER 图转换成关系模型。并指出各个关系模式的主键和外键。 ER 模型

Android http流媒体开发总结

Android http流媒体开发总结 http流媒体原理与实现: (1) android http流媒体的实现: (2) android http流媒体存在的问题与改善: (3) 流媒体早已容入我们现代的生活,给我们的生活带来很多欢快与乐趣。那它的技术原理又是如何的,又是如何实现的呢?流媒体是一种在网络上在线播放多媒体的技术,由于其边下载边播放的特性,缩短了用户初始等待的延迟,所以其数据也需要采用流式传输,具有较高的实时需求;其传输协议是使用最为广泛的http/tcp协议。 http流媒体原理与实现: http流媒体这个应用是从http网站提供文件服务发展而来的,在网站我们可以把文件放到http的服务器上,用户就可以从下载,而把支持流媒体传输的媒体文件放到支持http服务的服务器上,并且支持断点继传的服务就能做为http流媒体的服务器,然后客户端就可以通过url直接连接到服务器接收数据进行流媒体的播放,之前的http服务是只能支持下载然后播放的,而现在我们可以直接在线播放边下载边播放,这得益于我们在http协议层有了支持,就是在HTTP/1.1里新增了一个header field叫做range 的字段。 http协议对range 的规范定义如下: ranges-specifier = byte-ranges-specifier byte-ranges-specifier = bytes-unit “=” byte-range-set byte-range-set = 1#( byte-range-spec | suffix-byte-range-spec ) byte-range-spec = first-byte-pos “-” [last-byte-pos] first-byte-pos = 1*DIGIT last-byte-pos = 1*DIGIT range的意思请求的数据可以是指定位置,指定大小的,这样就如同操作本地文件一样读取服务器中的文件任何位置的任何数据。有了range支持使得http流媒体播放成为可能,当然也使得一些快速下载工具成为可能。如果在没有range 的情况下,数据只能顺序的接收,当文件的媒体数据很大的时候就出现内存无法保存到索引出现的地方,只能把整个文件下载下来才能播放。当有range的时候,文件可以像本地文件一样,随处随大小的读取播放。

缓存管理需求说明

缓存管理功能需求说明 缓存管理开发背景 缓存管理功能的开发,意在减少系统对数据库的过多访问,通过减少对数据库的访问次数,改用访问内存的方式,提升系统的性能。直接从内存获取数据,较之从数据库获取数据,效率可以得到显著的提升。 系统由于多次查询数据库,消耗大量系统资源,且查询效率可能因为开发者的个人能力导致查询效率不高,或占用过多资源影响系统性能。使用缓存管理,系统只有第一次查询访问数据库,而后皆通过访问内存取得数据,不需要在计较这次查询的SQL是否过于复杂,是否效率低下,直接取得数据返回即可。 第一部分、缓存管理 缓存管理提供了缓存工具类CacheUtils以供开发者对缓存进行自定义开发。如果开发者需要自己开发某功能需要涉及缓存管理则可以借助使用CacheUtils工具类来完成。本地缓存管理和redis 缓存管理的区分在于redis是否正确连接且启动。注意,是正确连接并且启动redis服务器。 关于开发者需要自行开发某功能的缓存管理需要了解CacheUtils怎么使用可以查看《缓存管理开发说明》 本地缓存管理 本地缓存管理是在redis没有正常启动运行的时候系统提供的缓存管理方式。本地缓存管理暂无任何持久化操作。对于缓存中的所有数据,在应用重启后一律清空,需要重新载入缓存。本地缓存

管理采用的是标准的key-value形式保存,于Java中采用的结构形式为HashMap结构,HashMap 有利于快速的存取,因而采用该结构保存本地缓存。其中key的类型为string,value的类型为object。本地缓存管理对于类型的限制基本没有。Value可以置入任何Java支持的对象。 本地缓存管理中,保存进入缓存只需要使用CacheUtils中的save方法进行保存即可,保存的数据在本地缓存中不做多余的处理,直接置入缓存中。由于采用的是以Object类型的形式保存,并不会对保存的数据进行转换,获取保存的缓存数据时直接使用CacheUtils中的get方法即可取得保存的数据,达到怎么存就怎么取,存什么取什么。无需更多的变换数据结构,更不会导致因为存储导致类型的变换或者数据的丢失。 由于存什么取得的就是什么,因而直接修改取得的数据对象有可能导致缓存数据也被修改。Redis缓存管理 Redis缓存管理需要开启redis服务器并正确配置连接信息,系统会在启动的时候检测redis是否可以正常连接启用,如果没有正常连接启用则使用本地缓存管理。 Redis缓存管理对于类型具有特别的要求,对于不同的数据类型需要使用对应的类型进行保存。且不允许使用复杂的对象类型进行保存,如list-object是不被允许的,需要转换为list-string的类型再进行保存,同理Map类型也不被允许使用Object,但是单个JavaBean是允许进行存取的。即redis 缓存管理不支持三维结构存储,仅支持二维结构存储。 Redis缓存管理的数据会有简易的持久化。即当redis停止后或者系统停止后,再次启动时redis 依然存有数据提供,不需要再次载入缓存。如果缓存设置了失效则可能会被清除。 Redis缓存管理保存、修改 由于redis数据类型的特殊性,所以所有Java中复杂的对象存储都需要进行相应的转换后才可

数据库大作业设计题目分析

《数据库原理及技术》大作业大纲 类同卷,网上抄袭,大作业格式不正确一律0分处理 一、课程设计的目的和要求 (1)培养学生运用所学课程《数据库原理及技术》的理论知识和技能,深入理解《数据库原理及技术》课程相关的理论知识,学会分析实际问题的能力。 (2)培养学生掌握用《数据库原理及技术》的知识设计计算机应用课题的思想和方法。 (3)培养学生调查研究、查阅技术文献、资料、手册以及编写技术文献的能力。 (4)通过课程大作业,要求学生在教师的指导下,独立完成大作业要求的相关内容,包括: ①通过调查研究和运用Internet,收集和调查有关资料、最新技术信息。 ②基本掌握撰写小论文的基本步骤和写作方法。 ③根据课题的要求基本理解和掌握E-R图的设计方法和关系模式的转换。 ④根据课题的要求基本理解和掌握数据流图(DFD)和数据字典(DD)的设计方法。 ⑤创建数据库及各种数据库对象。 二、课程设计题目 要求: (1)任选下列一个题目,调查分析一个具体的或模拟的实例; (2)描述该实例的业务信息和管理工作的要求; (3)列出实体、联系; (4)指出实体和联系的属性; (5)画出E-R图; (6)将E-R图转换成关系模式,并注明主码和外码; (7)建立数据字典; (8)创建数据库; (9)根据题目的要求写查询、存储过程、触发器等。 题目: (1)学校图书借阅管理系统 功能要求: ●实现图书信息、类别、出版社等信息的管理; ●实现读者信息、借阅证信息的管理; ●实现图书的借阅、续借、归还管理; ●实现超期罚款管理、收款管理; ●创建触发器,分别实现借书和还书时自动更新图书信息的在册数量;

通用技术第五章-第七章测试卷及答案

第五章《方案的构思及其方法》测试卷 一、选择题 1.小明要设计一个中小学生随身携带的水壶,他对水壶进行了设计分析,你认为对产品进行设计分析应考虑的因素是---------------------------------------------------() A、“物”、“人”、“环境” B、美观、实用、经济 C、结构、功能、安全性 D、高效、健康、舒适 2.下面不属于标准件的是---------------------------------------------------() A、紧固件、连接件、密封件 B、导线、灯罩、底座 C、滚动轴承、滚针轴承D、螺孔、型材 3.在设计方案出台后,我们在设计交流时应注意诸多事项在此过程中我们不应提倡() A、及时吸纳有益信息完整设计方案B、强调团队合作精神 C、追求结果一致性D、主动创设一些设计交流机会 4.制定设计方案的过程是①方案筛选②方案构思③设计分析④方案呈现⑤收集信息() A、⑤④③②①B、①③②④⑤C、①⑤③④②D、⑤③②④① 5.人类从爆竹点燃爆炸升空到设计制造飞上太空的火箭,利用方案构思方法中----()

A、草图法B、模仿法C、联想法D、奇特性构思法 6.从蝙蝠探路方法到飞机夜间飞行雷达的导航,利用方案构思方法中-----------() A、草图法B、模仿法C、联想法D、奇特性构思法 7. 如图所示掌上削皮器,可像戒指那样套在手指上工作,厚厚的橡皮垫保护手指和手掌不被刀刃割伤,削皮过程中也会觉得舒适安全。请问掌上削皮器设计分析时要考虑的“三要素”是----------------------------------------------------------------------() A、结构、功能、安全性 B、美观、实用、经济 C、成人的手、削皮器、使用环境 D、高效、健康、舒适 8.某厂打算设计一个经营用大容量(10升)的全自动豆浆机。在设计分析中要考虑的因素有: 杯体容量10升, 声光提示、报警功能, 制作过程自动化, 采用数码彩屏显示。在以上因素中应该优先考虑的两项是-------------------------------------------------------------() A、

减震缓冲技术

减震缓冲技术发展综述 姓名:尚兴超 学号:511011503 指导老师:梁医 一.概述 机械振动、冲击问题广泛存在于工程机械[1]、汽车机械、建筑机械、船舶机械、航空航天、武器领域[2]等,减振器和缓冲器主要是用于减小或削弱振动或冲击对设备与人员影响的一个部件。它起到衰减和吸收振动的作用。使得某些设备及人员免受不良振动的影响,起到保护设备及人员正常工作与安全的作用,因此它广泛应用于各种机床、汽车、摩托车、火车、轮船、飞机及坦克等装备上。 振动问题的基本方程为: ()e sin n t d x A t ζωωφ-=+ 从方程中可以看出,系统振动幅值的衰减与阻尼系数大小ζ有关[3],也就是说,震动产生的能量将会被阻尼所吸收。减震器和缓冲器就是基于此原理而设计的。 二.发展历史 世界上第一个有记载、比较简单的减震器是1897年由两个姓吉明的人发明的。他们把橡胶块与叶片弹簧的端部相连,当悬架被完全压缩时,橡胶减震块就碰到连接在汽车大梁上的一个螺栓, 产生止动。1898年,第一个实用的减震器 由一个法国人特鲁芬特研制成功并被安装到摩托赛车上。他将前叉悬置于弹簧上,同时与一个摩擦阻尼件相连,以防止摩托车的振颤。1899年,美国汽车爱好者爱德华特·哈德福特将前者应用于汽车上。后来,又经历了加布里埃尔减震器、平衡弹簧式减震器和1909年发明的空气弹簧减震器。空气弹簧减震器类似于充气轮胎的工作原理,它的主要缺点是常常产生漏气。 1908年法国人霍迪立设计了第一个实用的液压减震器。其原理是液流通过小孔时产生的阻尼现象。20世纪60年代,通用公司麦迪逊工程师研制了把螺旋弹簧、液压减震器和上悬架臂杆组成的麦迪逊减震器,其体积比较小,得到了广泛的应用[4]。 三.研究现状 液压缓冲器是目前应用最为广泛的减震缓冲装置,其结构简单,运行平稳。

OpenMax多媒体引擎

Android OpenMax的基本层次结构如图18-1所示。

OpenMax是无授权费的,跨平台的应用程序接口API,通过使媒体加速组件能够在开发、集成和编程环节中实现跨多操作系统和处理器硬件平台,提供全面的流媒体编解码器和应用程序便携化。 OpenMax的官方网站如下所示: https://www.wendangku.net/doc/1018128862.html,/openmax/ OpenMax实际上分成三个层次,自上而下分别是,OpenMax DL(开发层),OpenMax IL(集成层)和OpenMax AL(应用层)。三个层次的内容分别如下所示。 第一层:OpenMax DL(Development Layer,开发层) OpenMax DL定义了一个API,它是音频、视频和图像功能的集合。供应商能够在一个新的处理器上实现并优化,然后编解码供应商使用它来编写更广泛的编解码器功能。它包括音频信号的处理功能,如FFT和filter,图像原始处理,如颜色空间转换、视频原始处理,以实现例如MPEG-4、H.264、MP3、AAC和JPEG 等编解码器的优化。 第二层:OpenMax IL(Integration Layer,集成层) OpenMax IL作为音频、视频和图像编解码器能与多媒体编解码器交互,并以统一的行为支持组件(例如,资源和皮肤)。这些编解码器或许是软硬件的混合体,对用户是透明的底层接口应用于嵌入式、移动设备。它提供了应用程序和媒体框架,透明的。S编解码器供应商必须写私有的或者封闭的接口,集成进移动设备。IL的主要目的是使用特征集合为编解码器提供一个系统抽象,为解决多个不同媒体系统之间轻便性的问题。 第三层:OpenMax AL(Appliction Layer,应用层) OpenMax AL API在应用程序和多媒体中间件之间提供了一个标准化接口,多媒体中间件提供服务以实现被期待的API功能。 --------------------------------------------------------------------------------------------------- OpenMax的三个层次如图18-2所示。 OpenMax API将会与处理器一同提供,以使库和编解码器开发者能够高速有效地利用新器件的完整加速潜能,无须担心其底层的硬件结构。该标准是针对嵌入式设备和移动设备的多媒体软件架构。在架构底层上为多媒体的编解码和数据处理定义了一套统一的编程接口,对多媒体数据的处理功能进行系统级抽象,为用户屏蔽了底层的细节。因此,多媒体应用程序和多媒体框架通过OpenMax IL

数据库设计综合练习题及答案

1、有一课程管理系统,有如下特点:一个系可开设多门课程,但一门课只在一个系部开设,一个学生可选修多门课程,每门课可供若干学生选修,一名教师只教一门课程,但一门课程可有几名教师讲授,每个系聘用多名教师,但一个教师只能被一个系所聘用,要求这个课程管理系统能查到任何一个学生某门课程的成绩,以及这个学生的这门课是哪个老师所教的。(1)请根据以上描述,绘制相应的E-R图,并直接在E-R图上注明实体名、属性、联系类型; (2)将E-R图转换成关系模型,画出相应的数据库模型图,并说明主键和外键。 (3)分析这些关系模式中所包含的函数依赖,根据这些函数依赖,分析相应的关系模式达到了第几范式。对这些关系模式进行规范化。 1、参考答案: 2、设某汽车运输公司数据库中有三个实体集。一是“车队”实体集,属性有车队号、车队名等;二是“车辆”实体集,属性有牌照号、厂家、出厂日期等;三是“司机”实体集,属性有司机编号、姓名、电话等。 车队与司机之间存在“聘用”联系,每个车队可聘用若干司机,但每个司机只能应聘于一个车队,车队聘用司机有“聘用开始时间”和“聘期”两个属性; 车队与车辆之间存在“拥有”联系,每个车队可拥有若干车辆,但每辆车只能属于一个车队; 司机与车辆之间存在着“使用”联系,司机使用车辆有“使用日期”和“公里数”两个属性,每个司机可使用多辆汽车,每辆汽车可被多个司机使用。

(1)请根据以上描述,绘制相应的E-R图,并直接在E-R图上注明实体名、属性、联系类型; (2)将E-R图转换成关系模型,画出相应的数据库模型图,并说明主键和外键。 (3)分析这些关系模式中所包含的函数依赖,根据这些函数依赖,分析相应的关系模式达到了第几范式。对这些关系模式进行规范化。 2、参考答案: (1)E-R图设计如下: (2)转换成的关系模型应具有4个关系模式: 车队(车队号,车队名) 车辆(车牌照号,厂家,生产日期,车队号) 司机(司机编号,姓名,电话,车队号,聘用开始时间,聘期) 使用(司机编号,车辆号,使用日期,公里数) 3、设某商业集团数据库中有三个实体集。一是“仓库”实体集,属性有仓库号、仓库名和地址等;二是“商店”实体集,属性有商店号、商店名、地址等;三是“商品”实体集,属性有商品号、商品名、单价。

通用技术设计应用题深入分析探究(王建献)

《通用技术》设计应用题深入分析探究 浙江省桐乡市高级中学王建献 【内容摘要】通用技术设计题是通用技术测试的必考试题也是压轴题,是学分最容易失分也感觉最难的题型,本文从典型的测试方式出发,结合实际,把生活中用到一些常见结构的设计方法、 【关键字】技术设计;结构设计 当今世界,创新设计已经成为引领变革的重要因素,我们国家之所以在很多领域落后于人,最大的问题莫过于我们的工业大多以来料加工为主,缺乏自主创新能力,而一个产品的整个产业链分为标准、设计和制造,制造处于整个产业链的最低端,但是却需要耗费最高的人力和物力,产生最大的环境能源问题,这也就是为什么大部分的发达国家只负责标准和设计,把最后一个环节搬到大量发展中国家的主要原因。所谓一流企业做标准,二流企业做设计,三流企业做产品。 一份名为《抓住苹果全球网络中的价值》的研究报告由三位教授合作完成。三位教授通过分析iPhone和iPad全球供应链的价值分布发现,苹果公司在整个产业链中占据绝对控制权,供应商能不能赚钱得由苹果说了算,因此苹果总是能分走产品利润中的最大一份,产业链中的其他环节却只能拿到很少比例。 三位教授并不是首次调查苹果产品的全球产业链,2007年他们三人就曾对iPod进行过分析,结果显示当时每台售价299美元的iPod 中,苹果获得80美元,在中国大陆的组装成本估计仅为4美元。 报告中的数据显示,2010年苹果每卖出一台iPhone,就能拿走利润的58.5%,原材料供应商能拿到21.9%,韩国由于LG和三星为苹果提供技术含量较高的显示器和内存芯片,拿到利润的4.7%,欧洲、日本和中国台湾分别只能拿到1.1%、0.5%和0.5%。 劳动力成本在苹果全球产业链中的所占比例还不到6%,中国以外的劳动力能拿到iPhone利润的3.5%,中国的劳动力只能拿到1.8%。

LibStageFright

LibStageFright AwesomePlayer AudioPlayer MEPG4Writer (default) AMRWriter OMXCodec OMX AwesomeRender OMXClient SoftWareRender AwesomeNativeWindowRenderer MediaExtractor SoftWare Codec DataSource 图1 LibStageFright 内部架构图 LibStageFright 图2 LibStageFright 与外部接口调用关系图 MediaSource OMXMaster MediaPlayerService AwesomePlayer MEPG4Writer AMRWriter SoftWareRender AwesomeNativeWindowRenderer AudioPlayer OMXClient OMX StagefrightRecorder Audio Output Get OMX SurfaceFlinger EGL AudioFlinger StagefrightPlayer OMXMaster libstagefrighthw Hardware

MediaPlayer MediaPlayeService Jni_android_media_MediaPlayer AwesomPlayer StagefrightPlayer MediaPlayer.java 图3 MediaPlayer 框架 MediaRecorder.java Jni_android_media_MediaRecorder MediaRecorder MediaPlayerService MediaRecorderClient StagefrightRecorder AudioSource CameraSource AudioRecord Camera 图4 MediaRecorder 框架

mybatis的缓存机制(一级缓存二级缓存和刷新缓存)和mybatis整合ehcache

mybatis的缓存机制(一级缓存二级缓存和刷新缓存)和 mybatis整合ehcache 1 查询缓存1.1 什么是查询缓存mybatis提供查询缓存,用于减轻数据压力,提高数据库性能。mybaits 提供一级缓存,和二级缓存。一级缓存是SqlSession级别的缓存。在操作数据库时需要构造sqlSession对象,在对象中有一个(内存区域)数据结构(HashMap)用于存储缓存数据。不同的sqlSession之间的缓存数据区域(HashMap)是互相不影响的。一级缓存的作用域是同一个SqlSession,在同一个sqlSession中两次执行相同的sql语句,第一次执行完毕会将数据库中查询的数据写到缓存(内存),第二次会从缓存中获取数据将不再从数据库查询,从而提高查询效率。当一个sqlSession结束后该sqlSession中的一级缓存也就不存在了。Mybatis默认开启一级缓存。二级缓存是mapper级别的缓存,多个SqlSession去操作同一个Mapper 的sql语句,多个SqlSession去操作数据库得到数据会存在二级缓存区域,多个SqlSession可以共用二级缓存,二级缓存是跨SqlSession的。二级缓存是多个SqlSession 共享的,其作用域是mapper的同一个namespace,不同的sqlSession两次执行相同namespace下的sql语句且向sql 中传递参数也相同即最终执行相同的sql语句,第一次执行

完毕会将数据库中查询的数据写到缓存(内存),第二次会 从缓存中获取数据将不再从数据库查询,从而提高查询效率。Mybatis默认没有开启二级缓存需要在setting全局参数中配置开启二级缓存。如果缓存中有数据就不用从数据库中获取,大大提高系统性能。1.2 一级缓存1.2.1 一级缓存工作原理下图是根据id查询用户的一级缓存图解第一次发起查询用户id为1的用户信息,先去找缓存中是否有id为1的 用户信息,如果没有,从数据库查询用户信息。得到用户信息,将用户信息存储到一级缓存中。如果sqlSession去执行commit操作(执行插入、更新、删除),清空SqlSession 中的一级缓存,这样做的目的为了让缓存中存储的是最新的信息,避免脏读。第二次发起查询用户id为1的用户信息,先去找缓存中是否有id为1的用户信息,缓存中有,直接从缓存中获取用户信息。1.2.2 一级缓存测试mybatis默认支持一级缓存,不需要在配置文件去配置。按照上边一级 缓存原理步骤去测试。@Test public void testCache1() throws Exception{ SqlSessionsqlSession = sqlSessionFactory.openSession();//创建代理对象UserMapperuserMapper = sqlSession.getMapper(UserMapper.class); // 下边查询使用一个SqlSession //第一次发起请求,查询id为1的用户Useruser1 =

相关文档