IO控制器范文
IO控制器范文(精选8篇)
IO控制器 第1篇
轨道交通整个机电系统中, 自动售检票系统 (Automatic Fare Collection简称AFC系统) 作为机械智能化设计的典型代表, 不仅取代了售票员、检票员、会计、统计、审计等人工操作员, 而且通过准确的数据收集整理实现了票务和现金管理的高度自动化[1]。随着城市轨道交通的日新月异的发展, 地铁AFC系统的要求和需求也不断的改变, AFC系统终端设备对于各个模块工作时各种输入与输出信号处理的速度和准确性要求也越来越高。因此, 对于专门进行批量高效信号处理的专用电路板———信号输入输出控制板 (简称IO板) 的性能要求也越来越高。
为解决IO信号处理的高效性和准确性的问题, 本文将基于AVR的8系列单片机芯片为主控单元的硬件平台, 提出一种新型的IO板设计方案, 并采用多线程的嵌入式软件技术和准确的信号处理逻辑算法来加以实现。
1 IO输入/输出控制
对于IO板的AVR芯片进行编程后, 程序通过片选信号选通IO板电路某片区域, 这个时候, IO板的芯片可以对这一路的信号进行采集或者输出控制操作。
IO板输入端、输出端均具有多路信号, 操作时需要多次片选, 程序要获得实时的输入信号, 需要利用AVR芯片的定时器设置时间片, 使IO板每隔一个时间片就获取一次实时的IO输入信号, 这些IO输入信息会存入相应的地址以便上位机调用。
IO输出由串口控制, 串口接收到上位机相应的IO输出命令后, IO板会根据命令进行片选让目标管脚进行输出操作[2]。
2 PWM调制
AFC系统的终端设备中, 涉及到许多需要通过IO板来进行控制的电磁铁, 如自动售票机的硬币投币口、自动检票机的回收口等等, 由于电磁铁的自身特性, 无法长期持续地接收高电平信号, 否则将因为温度过高、负荷过大而损坏, 因此, 本文设计的IO板采用PWM调制的技术手段来解决向电磁铁输出IO信号的问题。当使用PWM脉冲宽度调制时, IO板对电磁铁输出一个占空比可控的PWM方波, 电磁铁工作时则不必持续地接收高电平信号, 这样电磁铁的负担大大降低, 电磁铁的温度也能够控制在一个相对较低的范围, 寿命也因此加长[3]。
IO板利用AVR8系列单片机芯片的8位定时器/计数器T/C0输出PWM波。T/C0是一个通用的、单通道8位定时器/计数器模块。
相位修正PWM模式:
相位修正PWM模式 (WGM01:0=1) 基于双斜波操作, 为用户提供一个获得高精度相位修正PWM波形的方法。计数器重复地从BOTTOM计数到MAX计数器时若发生TCNT0与OCR0的匹配, OC0将清零为低电平;而在计数器往BOTTOM计数时若发生了TCNT0与OCR0的匹配, OC0将置位为高电平。工作于反向输出比较时, 则正好相反。与单斜波操作相比, 双斜波操作可获得的最大频率要小。但由于其对称的特性, 十分适合于电机控制。
相位PWM模式的PWM精度固定为8比特。计数器不断地累加到MAX, 然后开始减计数。在一个定时器时钟周期里TC-NT0的值等于MAX。时序如图1所示。图1中TCNTn的数值用斜线图表示, 以说明双斜线操作。本图同时说明了普通PWM的输出和反向PWM输出。TCNTn斜线上的小横条表示OCR0和TCNT0的匹配。
当计数器达到BOTTOM时, T/C溢出标志位TOV0置位。此标志位可用来产生中断。工作于相位修正PWM模式时, 比较单元可以在OC0引脚产生PWM波形;将COM01:0设置为2, 产生普通相位的PWM;设置COM01:0为3, 产生反向PWM信号。实际的OC0数值只有在端口设置为输出时才可以在引脚上出现。OCR0和TCNT0比较匹配发生时, OC0寄存器将产生相应的清零或置位得:
式中变量N标识预分频因子 (1、8、32、64、128、256或1 024) 。
这样通过计算给OCR0赋值就可以在IO板输出相应频率PWM波, 从而实现对电磁铁的控制。
3 通行逻辑控制
闸机是地铁AFC系统中直接面对乘客的十分重要的前端收费设备, 乘客通过闸机进出地铁付费区和非付费区。闸机运行是否正常, 不仅影响到地铁在广大乘客中的形象, 而且也更直接影响到地铁的票务收益。如何让持有效车票的乘客快速、安全的通过闸机, 并合理地阻挡持无效车票的乘客和试图作弊的乘客, 是闸机通行逻辑设计的目标。因此, 闸机通行逻辑技术是闸机设计的关键[4]。下面介绍一种以IO板进行对通行逻辑模块的控制方案。
IO板控制闸机扇门时, 需通过扇门的通行逻辑模块来进行信号处理。IO板通过对通行逻辑板的输入/输出, 可实现对扇门进行相应的操作。
IO输入控制:
当扇门处于打开状态时, 通行逻辑板能通过光电传感器进行检测, 判断是否有人通过, 若判断有1人通过则通行逻辑板会对IO板的Pack_B端输入一个100 ms的低电平信号, 若有N人通过则通行逻辑板会发出N个100 ms的低电平信号。电路原理如图2所示, Pack_B端无操作时默认输入24 V, 此时光电二极管TLP181处于导通状态, 所以此时IO输入端IN18为低电平;而当通行逻辑板对Pack_B输出低电平信号时, 光电二极管TCP181闭合, 电容C49放电, IO输入端IN18为高电平。
若要实现放行多个人通过时, 则需要对Pack_B低电平进行计数, 这就需要通过底层程序去完成。具体操作方式是捕获IO输入端IN18的实时状态后存入AVR单片机的寄存器, 然后将前后状态进行比较, 若出现了上升沿则, Pack_B计数加1, 否则计数不变。代码实现:
IO输出控制:
IO板对通行逻辑板Paut_B端输出一个100 ms低电平信号时, 可以控制扇门, 使扇门从闭合状态打开。电路原理如图3所示, IO端Out14常态输出高电平, 此时光电二极管不导通, MOS管也不导通, Paut_B被拉高;而当IO端Out14输出低电平时, 光电二极管导通, MOS管导通, 此时Paut_B变为低电平[5]。
4 多线程处理的实现
Atmega128单片机内部提供两个10位的预定比例分频器, 一个给T/C0独自用, 另一个给其他3个T/C共用。
软件设计时, 程序给每个任务都设置了时间片, 通过使用AVR单片机的定时器1, 定时器1每1 ms中断溢出时对任务时间片函数作处理, 判断即将运行的任务, 如此反复, 则可以通过程序任务的时间片处理来实现多线程处理。定时器1的处理函数如下:
其中Task Comps[i]的内容为各个任务子函数, Itv Timer为任务运行的时间间隔, Task Comps[i].Run为任务可执行标志, 当任务子函数Run为“1”时, 任务为可执行状态[6]。
5 结束语
IO板逻辑处理和多线程任务处理的实现, 能够增加AFC各终端设备的工作协调性以及工作效率, 同时减少各模块处理IO的压力, 减少错误, 降低资源消耗, 使得AFC设备的运行更稳定可靠。
参考文献
[1]邓先平, 陈凤敏.我国城市轨道交通AFC系统的现状及发展[J].都市快轨交通.2005, 18 (3) :18-21.
[2]于正林, 苏成志, 曹国华.AVR单片机原理及应用[M].北京:国防工业出版社, 2009.
[3]孙孝峰, 王立乔.三相变流器调制与控制技术[M].北京:国防工业出版社, 2010.
[4]罗煌, 洪澜.SSH框架的AFC测试管理系统的设计与实现[J].轨道交通纵横, 2011, 24 (4) .32-34.
[5]沈建良, 赵文宏, 贾玉坤.ATmega128单片机入门与提高[M].北京:北京航空航天大学出版社, 2009.
IO企业文化 第2篇
【企业文化】
——企业定位
· 四个人每个人找十个标的,各自去实验,标的领域的选取根据各自偏好和擅长。公司注册成功后去寻找一个信托平台,费用为一个点的回报率。财务方面不用管信托平台会代为管理,并且将财务报表予以公示
·托管公司 代理大陆客户进行港股操盘
——使命
·为客户利益而努力进取
·提高每位员工的公司荣誉感,自豪感。
·像对待技术创新一样致力于成本创新。
·让更多的人获得更好,更稳健的服务
·充分调动员工主观能动性,主动完成好任务。
——核心价值观
· 成就客户—我们致力于每位客户的满意和成功。
· 尊重员工—我们致力于尊重每位员工的要求以及情感。
· 诚信正直—我们秉持信任、诚实和富有责任感,无论是对内部还是外部。· 追求卓越—我们倡导每天学习一点,开拓视野,每天争做最佳最好。
——愿景
IO控制器 第3篇
一个IO-Link系统由IO-Link设备、传感器、执行器或者它们的组合构成,其中有一根标准的3线传感器/执行器电缆和一个IO-Link主站。主站可以是一个具有不同设计和不同保护等级的设备。系统的体系结构图1所示。
一个IO-Link主站可以有一个或者多个端口。每个端口只能连接一个IO-Link设备。因此IO-Link是一种点到点通信,而不是一种现场总线。
上电之后
在一开始,设备总是处于SIO模式(标准I/O模式)。主站的端口可以使用不同的配置。如果一个端口设置成为SIO模式,主站这个端口的行为就像一个通用的数字量输入。如果端口设置成通信模式,主站试图寻找连接的IO-Link设备,这个过程被称为唤醒。
在唤醒期间,主站发出一个定义的信号,然后等待设备的回应。主站使用最高的波特率发送这个定义信号。如果主站这次尝试没有成功,那么下次使用较低的波特率再试。主站用相同的波特率,对连接的设备进行三次尝试。如果主站收到了回答(比如,设备被唤醒),两者就开始通信。最初,它们先交换通信参数;然后,它们开始交换周期的过程数据。
如果设备在工作期间被移除,主站会检测到通信中断,马上发出报告,很像现场总线,通知控制系统,然后周期地进行唤醒设备的过程。在成功地进行了另一次唤醒后,再次交换通信参数,如果需要,可以对参数进行验证,然后重新开始周期性的数据交换。
如果主站终止两者的通信,主站和设备将回到原始的模式,也就是SIO模式,这被称为复原。
IO-Link协议
基本上,进行交换的有三种数据类型:
1.周期型数据(也称为过程数据);
2.非周期数据或者服务型数据;
3.事件型数据。
仅在收到IO-Link主站请求后,IO-Link设备才发送数据。主站发出非周期数据和事件显式请求后,设备应答;主站发出IDLE报文后设备发送周期型数据。
过程数据(PD)
设备的过程数据是以一个数据帧的格式周期性发送,提供不超过2个字节长度的过程数据。如果过程数据超过这个长度,要对过程数据进行拆分,用几个周期进行发送。当过程数据为无效时,会有一个诊断信息。
服务数据(SD)
服务数据总是非周期地交换,并且总是按照IO-Link主站的要求进行。首先,IO-Link主站向设备发出一个请求,然后设备回答这个请求。对一个设备写数据,以及从一个设备中读数据,都是这样进行的。服务数据可以用于读参数,或者设备状态。它也能够用于写参数或者发送命令。
SD和PD可以用一个报文或者分开的报文传送。一个典型的数据交换可能有如图4所示的结构。
事件
当一个事件发生时,设备对“事件标记”置位,它被发送到过程数据报文的CHECK/STAT字节的第7位。主站检测这个置位位,得知事件的报告。在得知一个事件发生时,不进行服务数据的交换。这意味着事件出现或者设备发生污染、过热、短路等情况,能够通过IO-Link传送到主站,再到PLC或者监控软件。
IO-Link主站能够生成自己的事件和状态,并通过各种现场总线把它们发送出去。这样的事件可以是:开路、通信中断或者过载等。
通信质量、重发、服务质量(QoS)
IO-Link是一种非常牢固的通信系统。它工作在24V的电平。如果一个帧失效,主站的请求会再重复一次。当第二次尝试发送数据再次失败时,主站会检测通信是否中断,然后报告给更高一级的控制系统。主站用重发报文的数量来测量通信的质量(QoS=服务质量)。
传送速度和同步
IO-Link规范定义最小的传输率(波特率)是4.8和38.4 kbps。通常,一个IO-Link设备会支持其中一个波特率。IO-Link主站必须支持这两种波特率。
周期时间由报文长度和在主站与设备间的延时时间组成。当波特率为38.4 kbps时,典型的周期时间为2ms。
整个时间由设备指定的最小周期时间和由主站指定的同意或者参数化后的实际周期时间共同算出。
主站对每个端口可以设定不同的响应时间。设备应用可以和主站周期进行同步。相同主站的不同端口也可以实现设备应用的同步。
报文类型和它们的结构
IO-Link规范定义了不同的报文类型,过程输入数据和过程输出数据在大小上是不同的。
为了建立通信,主站必须决定设备的通信参数。一个相关信息是过程数据长度。基于这个信息,IO-Link主站决定使用什么报文类型用于周期数据交换。在通信建立阶段,主站使用报文类型O。定义下面的报文类型:
当过程设备输入和输出数据的和超过2个字节时,总是使用报文类型1。那么报文结构需要多个IO-Link周期来构成。
在“服务数据”节所表示的报文是2.1类型的报文。设备发送一个字节的过程数据。如图4所示,设备首先发出一个字节的服务数据,然后加上过程数据的字节,如图5所示,主站对设备发送一个服务数据。
报文中不同位的含意如表2-5所示。
为了通过IO-Link的物理层传输数据,每个字节打包在一个UART帧中然后通过半双工模式在主站和设备之间传送。
参数交换
为了在一个IO-Link设备和一台PLC之间交换数据,IO-Link主站把IO-Link数据映射到所使用的现场总线。这就是所谓的IO-Link映射现场总线。如果IO-Link主站直接通过专有背板总线(见图1)连接在一台PLC上,IO-Link数据映射到这个总线,并且把数据传送到这台PLC;或者数据从PLC到IO-Link主站,再进一步到IO-Link设备。IO-Link映射已经有了PROFIBUS、Profinet、INTERBUS、AS-i和EtherCAT。
来自或者到达IO-Link设备的过程数据,是通过现场总线或者背板总线周期地进行传输。服务数据必须由PLC显式的请求,或者非常容易识别。这就是为什么IO-Link要定义SPDU(服务协议数据单元)规范。
在功能块(FB)帮助下-每个PLC制造商提供多种定制的功能块(FB)用于这个系统-IO-Link主站程序非循环地与IO-Link设备在程序控制下进行通信。功能块定义哪个IO-Link主站(也就是哪个现场总线设备)和哪个端口进行数据交换。同时,还要向这个IO-Link设备发送请求。
可以对一个带索引和子索引的IO-Link设备请求参数值和状态。在IO-Link主站中,请求(读写服务)指令用一个IO-Link特定的服务协议数据单元(SPDU),通过IO-Link接口传送到设备。
SPDU指定了是读数据还是写数据。要读写的值通过索引来指定。SPDU有下面的结构:
最多至32768索引,最多有232字节,能够用于指定IO-Link的地址。
IO-Link规范指定多种服务,例如:
D10为制造商名称;
D12为产品名称;
使用这些服务,IO-Link设备能够具有独一无二的识别。
在现场总线上,IO-Link主站呈现为一个通用的现场总线设备,通过相应的设备描述(比如:GSD,FDCML,GSDML,等),连接到各自的网络配置器上。这些文件描述了通信和IO-Link主站更详细的属性,诸如端口号。可是,连接的IO-Link设备不能在这里读到。IO-Link设备描述(IODD)文件透明地显示了系统的体系结构和完整地表出了IO-Link设备。在IODD和ODD解释工具的帮助下,用户能够分辩出哪个IO-Link主站的端口连接了哪个IO-Link设备。
IO-Link系统结构
IO-Link设备
使用IO-Link协议,IO-Link设备提供了对过程数据和设备功能变量的访问。某些变量已经定义,比如,用于识别目的的变量。制造商必须在定义的索引区创建设备变量。所有这些信息都在IODD中描述。
IODD和解释工具
IODD包含通信属性、设备参数、识别、过程和诊断数据等信息。它还包含设备的外形图和制造商的标识。所有制造商的所有设备的IODD结构是相同的,使用IODD解释器工具所展示的是相同的形式。因此,推荐用户使用第三厂家的解释器工具可以处理所有的IO-Link设备。
IODD是作为一个包提供给用户的,它包括一个或者多个xml描述设备文件,和用png格式的图象文件。“IODD-StandardDefinitIOns1.0.xml”文件描述了所有设备的通用和强制属性。这个文件必须在IODD目录下,在每种支持的语言中存储一次。
解释器工具可以读出一个IODD文件,以图形的形式显示描述的设备(仅以有限的范围)。它可以用于所有制造商IO-Link设备的参数化和诊断。同时解释器工具可以对系统到现场级的体系结构进行图形显示。
IODD检查器用于验证IODD。所有的IODD必须通过IODD检查器进行测试。检查器在IODD中输入一个校验和。解释器工具读出IODD中的这个值然后与自己计算的值进行比较,结果必须相等。
IO-Link主站
IO-Link主站可以以不同形式连接到PLC(见图1),可以有一个或者多个端口。IO-Link规范区分了两种类型端口的不同。端口类型A,针脚2的功能没有详细描述,可以由制造商自己定义,端口类型B用于设备需要特定电源的情况。
端口类型A于传感器或者执行器有电气绝缘的电源。这里,由针脚2和5提供外加电源。
对于这种端口类型,针脚4可以配置成一个数字量输入(DI)或者一个IO-Link。制造商也可以把针脚4设计成一个带有电流限制的数字量输出(DO)。针脚2也可以成为其他的功能。制造商可以设计针脚,比如,作为一个DI或者DO。
端口类型B
等待io是什么意思 第4篇
在POSIX兼容的系统上,例如Linux系统,I/O操作可以有多种方式,比如DIO(Direct I/O),AIO(Asynchronous,I/O 异步I/O),Memory-Mapped I/O(内存映设I/O)等,不同的I/O方式有不同的实现方式和性能,在不同的应用中可以按情况选择不同的I/O方式。
输入输出I/O流可以看成对字节或者包装后的字节的.读取就是拿出来放进去双路切换;实现联动控制系统的弱电线路与被控设备的强电线路之间的转接、隔离,以防止强电窜入系统,保障系统的安全。
与专线控制盘连接,用于控制重要消防设备(如消防泵、喷淋泵、风机等),一只模块可控制一台大型消防设备的启、停控制。
基于SR-IOV的IO虚拟化技术 第5篇
针对虚拟I/O设备问题,Xen[1,2]和VMWare分别采用Split I/O[3]模型,Direct I/O[4]模型来实现,上述实现模型均在软件层实现,对设备的利用效率和对请求的访问速度均不如意。最近Intel提出了支持设备虚拟化技术的SR-IOV[5]技术,通过在硬件层上支持I/O虚拟化显著的提高了虚拟域的I/O性能。本文通过分析SR-IOV(Singe Root I/O Virtualization)技术的产生背景和技术规范,剖析其实现原理和实现模型。
本文首先分析了当前基于软件和硬件的几种高效虚拟化I/O访问模型,然后对Intel最新基于虚拟化IO的研究成果SR-IOV技术进行了介绍,并对其原理进行了分析,最后做出了评价。
1 相关技术研究
论文对当前虚拟技术中采用的高效I/O设备访问模型进行了研究,通过对比分析基于软件的I/O设备模拟技术(包括Split I/O、Direct I/OPassthrough I/O),以及硬件辅助虚拟化技术[6](VT-x、VT-d等),总结了虚拟化I/O技术的发展趋势。
1.1 基于软件的I/O模型
基于软件的虚拟化I/O模型是将I/O硬件的逻辑部分移入到虚拟机中,模拟层位于客户机与底层硬件之间。根据模拟层的具体位置,软件模拟I/O技术大致分为特权的宿主机模拟和虚拟机管理器(以下简称VMM)模拟。宿主机模拟通常采用Split I/O技术,又称为前端/后端模拟;VMM模拟一般采用Direct I/O技术[7]。
Split I/O技术是指将传统的I/O驱动模型分成两部分:一部分在无I/O访问特权的虚拟机(简称Dom N)中,称为前端驱动,不直接对I/O设备进行访问;另一部分则在有I/O访问特权的虚拟机(Dom0)中,称为后端驱动,可以调用物理I/O设备驱动,访问硬件。前端驱动接收Dom N上层应用的I/O请求,通过事件通道机制(多个虚拟机之间相互通讯的机制)传递给后端驱动。后端驱动处理前端驱动发送的请求,根据请求调用相应设备驱动程序对I/O设备进行访问,如图1所示:
Split I/O通常可以采用高效的通信机制,这在很大程度上减少客户机之间上下文切换开销。但Split I/O也存在以下一些不足:
(1)Dom N进行I/O操作都需要通过VMM转发请求,这会带来虚拟机与VMM之间的场景切换开销。因此,该方法会使整个I/O架构中的Dom0成为瓶颈;
(2)在有大量的I/O请求时,更会带来巨大的客户机之间场景切换的开销,消耗大量CPU资源,影响虚拟I/O系统的效率;
(3)为了实现Split I/O,需要修改客户端操作系统,以达到VMM和客户机之间的协同工作,因而无法支持非开源的操作系统。
Direct I/O模型主要包括客户端驱动程序(相对于传统驱动不需修改)、设备虚拟层、I/O数据传输的虚拟栈、VMM中直接和底层设备交互的驱动程序以及物理设备。如图2所示,其中,设备虚拟层虚拟出各种I/O设备;I/O虚拟栈将客户机的I/O地址映射到VMM的地址空间,处理VMM内部的通信,支持客户机与物理设备之间的I/O多路转发。当客户机发起I/O请求时,直接自陷到VMM中,以达到对物理设备的直接访问操作。但是由于I/O设备需要在多个客户机之间共享,因此需要通过VMM的介入以保证各个虚拟机对设备访问的合法性和一致性,这就导致了虚拟机的每次I/O操作都需要VMM的介入。
与Split I/O相比,Direct I/O的实现方式更加有效和易于升级;兼容性方面Direct I/O模型更易于设备驱动程序的复用;故障隔离方面,Split I/O通过将驱动部署在一个特定的客户机中来达到隔离性,而Direct I/O更容易发挥沙箱技术和其他技术的优势。但Direct I/O存在以下一些不足:
(1)由于每次I/O访问都需要VMM的介入,对于I/O密集型访问或者多虚拟机同时进行I/O操作时,VMM将迅速成为瓶颈,导致I/O延迟的增大,I/O效率的大幅度降低;
(2)驱动程序部署于VMM内部增加了VMM设计的复杂程度,难以移植设备驱动;
(3)完成一次I/O操作需要涉及多个寄存器的操作,这要求VMM截获每个寄存器访问并进行相应的模拟,导致多次上下文切换,使得性能下降。
Passthrough I/O模型是指在客户机内部能够直接对硬件进行操作,如图3所示[8]。客户机与硬件的交互只需要经过少量、或者不需要经过VMM的管理。Passthrough I/O模型将设备独占式地分配给指定的客户域,使该域具有最高的I/O访问性能。这样做的优点是:由于不需要模拟设备进行请求转换,所以访问速度高;客户机能根据最新硬件,加载对应驱动,可充分发挥新硬件的功能。由于客户机可以内部直接的操纵硬件设备,这大大的提高了I/O性能。
与基于软件的虚拟化I/O模型相比,Passthrough技术可以直接对I/O设备进行操作,大大降低了CPU的开销;Passthrough的I/O操作不需要经过一个有特权的客户机,不存在I/O瓶颈问题;Passthrough I/O模型不需要修改客户机驱动;Passthrough具有相对比较薄的VMM,VMM的设计相对简单,可移植性相对较好。但Passthrough I/O也存在不足:
(1)Passthrough最大程度上提高的I/O性能是以牺牲设备共享能力为代价的;
(2)Passthrough I/O中的设备只能被某个客户机所独占,难以充分发挥I/O设备的利用率。
1.2 硬件辅助的模型
由于目前基于软件的虚拟化I/O模型增加了CPU的负担,希望借助硬件辅助技术完成一部分虚拟化I/O的功能。
Intel和AMD都在处理器架构中提供对Passthrough I/O的支持。Intel将这种支持称为VT-d(Virtualization Technology for Directed I/O),AMD称之为IOMMU(I/O Memory Managemnt Unit)。这种技术的CPU能够将PCI物理地址映射到客户机中。当这种映射发生时,硬件将负责访问和保护,客户机像宿主系统一样可以直接使用该设备。除了将客户机映射到物理内存外,还提供隔离机制,以便预先阻止其他客户机(或管理程序)访问该区域[9]。
传统的IOMMU提供了一种集中的方式管理所有的DMA。除了传统的内部DMA,还包括AGP、GART-ner、TPT、TCP/IP等这些特别的DMA,它通过内存地址范围来区别设备,却不容易实现DMA隔离,因此VT-d通过更新设计的IOMMU架构,实现了多个DMA保护区域的存在,最终实现了DMA虚拟化,也叫做DMA重映射(DMA Remapping)。
I/O设备会产生非常多的中断请求,虚拟化技术必须正确地隔离这些请求,并路由到不同的虚拟机上。传统设备的中断请求可以具有两种方式:一种将I/O中断控制器路由,一种是通过DMA写请求直接发送出去的MSI(Message Singled Interupt),由于需要在DMA请求内嵌入目标内存地址,因此需要访问所有的内存地址,并不能实现中断隔离。VT-d实现的中断重映射架构通过重新定义MSI的格式来解决这个问题,新的MSI仍然是一个DMA写请求的形式,不过并不嵌入目标内存地址,取而代之的是一个消息ID,通过维护一个表结构,硬件可以通过不同的消息ID辨认不同的虚拟机区域。VT-d实现的中断重映射可以支持所有的I/O源和中断类型,MSI以及MSI-X。
VT-d技术可以隔离和保护硬件资源只给指定的虚拟机使用,硬件同时还需要具备多个I/O分区来同时为多个虚拟机服务,更好地支持Passthrough技术。
2 SR-IOV介绍与原理
传统的基于软件和硬件辅助的虚拟化I/O方法虽然能够从不同角度提高虚拟化I/O的能力,但无法同时获得I/O设备的高性能和共享性。SR-IOV技术规范正是针对这一问题提出了相应的解决方法。
2.1 SR-IOV介绍
从软件的角度来看,I/O设备通过三种方式与CPU进行通信,分别是:中断、寄存器读写和内存共享。软件通过寄存器读写对设备进行操作,而I/O设备通过中断的方式通知CPU处理的情况。内存共享则通过DMA使I/O设备与CPU之间进行大规模数据通信[10]。
SR-IOV是PCI-SIG组织公布的一个新规范,旨在消除VMM对虚拟化I/O操作的干预,以提高数据传输的性能。SR-IOV继承了Passthrough I/O技术,通过IOMMU减少存储保护和地址转换的开销。
具有SR-IOV功能的I/O设备是基于PCIe规范的,可以用来管理并创建多个VF(virtual function)。PCIe PF((Physical function)在PCIe总线上是主要实体,具有唯一的申请标示RID,一个PCIe设备具有一个或多个PF。SR-IOV设备可以有一个或多个PF,如图4所示:
每个PF都是标准的PCIe功能,并且关联多个VF。每个VF都有与性能相关的资源,专门用于软件实体在运行时的性能数据运转,同时这些VF共享物理设备资源,如图5所示。因此,VF可以视为由PF进行配置和管理的“轻量级”PCIe功能[11]。
每个VF对应唯一的RID,RID则确定了唯一的PCIe交换源。RID也能够用于索引IOMMU页表,因此不同的VM可以使用不同的页表。IOMMU页表是在DMA交换中用于存储保护和地址转换。设备初始化和配置资源没有应用在VF上,因此与传统的多功能PCIe设备相比,在有限的芯片设计预算里SR-IOV设备可以包含更多的VF,具有更好的可扩展性[12]。
SR-IOV提出了地址传输服务ATS,用以提高性能。ATS需要每个I/O设备都使用地址转换机制,通过本地I/O TLB(I/O转换旁路缓冲)作为地址转换缓冲。这使得设备在传输之前就能够转换DMA地址,从而避免了I/OTLB在IOMMU地址转换过程中失效。
2.2 SR-IOV的实现模型
SR-IOV的实现模型包括VF驱动、PF驱动、IOVM(SR-IOV管理器)。VF驱动是运行在客户机上的普通设备驱动;PF驱动则部署在宿主机上对VF进行管理;在宿主机上的IOVM用于管理PCIe拓扑的控制点以及表示每个VF的配置空间;整体结构如图6所示:
为了使该结构独立于底层的VMM,每部分都不能使用特定的VMM接口。例如,PF驱动和VF驱动的通信可以直接使用SR-IOV设备,其接口不会依赖于特定的VMM接口。
(1)PF驱动PF驱动可以直接访问PF的所有资源,并负责配置和管理所有VF。它可以设置VF的数量,全局的启动或停止VF,还可以进行设备相关的配置。PF驱动同样负责配置2层分发,以确保从PF或VF进入的数据可以正确地路由。
(2)VF驱动VF驱动像普通的PCIe设备驱动一样在客户机上运行,直接访问特定的VF设备完成数据的转移,期间不需要VMM的干预。从硬件成本角度来说,VF只需要模拟临界资源(如DMA等),而对性能要求不高的资源则可以通过IOVM和PF驱动进行模拟。
(3)IOVM IOVM为每个VF分配了完整的虚拟配置空间,因此客户机能够像普通设备一样模仿和配置VF。当宿主机初始化SR-IOV设备时,它无法通过简单的扫描PCIe功能(通过PCIM实现)的供应商ID和设备ID列举出所有的VF。因为VF只是修改过的“轻量级”功能,不包含完整的PCEe配置空间,无法响应普通的PCI扫描。该模型可以使用Linux PCI热插拔API动态地为宿主机增加VF,然后将VF分配给客户机。
PCIM负责对PCI设备进行扫描、识别,可以将VF转换成完整的功能,并对SR-IOV资源进行分配。由于IOVM为每个VF分配了虚拟的完整的配置空间,一旦发现VF并分配给客户机,该客户机能够像使用普通PCIe功能那样初始化和配置该VF。这部分功能可以在应用层面上完成,如Xen中HVM的设备模式,内核中的后端驱动。
影响SR-IOV性能关键是用于处理I/O设备的中断。在SR-IOV中,VMM不再干预I/O操作,从而提高了I/O设备的性能。2层分发根据接收方地址对数据进行了分类,通过DMA直接将数据存储到接收方的缓冲区上,并产生MSI或者MSI-x。IOMMU重映射了接收方DMA缓冲器地址,将VF驱动的客户机物理地址转换为物理地址。VMM可以捕捉该中断并根据向量识别到具体的客户机。然后,VMM将虚拟MSI中断通知给客户机,并读出在当地缓冲器里的数据。客户机VF驱动处理虚拟中断,从本地缓冲区中读取接收的数据。从而是客户机在一次中断中能够处理多个接收的数据。
PF和VF驱动之间需要通道进行配置、管理信息和事件通知的通信。例如,VF驱动需要将客户机的服务请求发送给PF驱动。PF驱动也需要将一些I/O事件转发给每个VF驱动,通知资源状态的变化。这些事件包括等待全局设备重置、链接状态改变、驱动移除等。在该结构模型中,VF和PF驱动之间的通信取决于底层硬件平台。例如,Intel SR-IOV的82576 Gbit网卡通过简单的邮箱和门铃机制进行通信:发送方将消息写入邮箱,然后按响“门铃”,这将会产生一个中断并通知接收方消息已经发送。接收方接收信息后,将共享寄存器中的一位进行设置,表明信息已接收。
SR-IOV提供一个安全的运行环境,允许PF驱动监控和实施VF设备的带宽分配、中断屏蔽、拥塞控制、广播和多播等,从而增加了VM之间的性能和安全隔离。PF驱动监督VF驱动的请求,并对VF驱动行为和其使用的资源进行监控。PF如果发现异常可以立即采取正确的行为。例如,PF在发现异常时能够停止分配给某个虚拟机的VF。
2.3 SR-IOV的优势
SR-IOV平台提供了一系列的技术优势,包括提高IO性能,提高系统的性价比,增加可扩展性,数据保护和安全性。
(1)增加系统性能
Passthrough的优势:
a.VF设备可以直接访问寄存器,IOMMU技术使得GPA(客户机物理地址)转换为宿主机物理地址,这些使得客户机几乎可以达到本机的性能。与软件模拟的I/O设备相比,每个虚拟机能够通过较低的CPU开销获得很高吞吐量。
b.传统的陷入和模拟I/O寄存器的读写和任务切换占用了大量的CPU利用率。VF的另一个优势是可以直接进行I/O寄存器的读写,而不需要陷入和模拟,CPU页表机制可以直接将VF设备的MMIO空间映射到客户机上面。
中断重映射的优势IOMMU技术可以改善中断重映射技术,减少客户机从硬件中断到虚拟中断的处理延迟。由于中断延迟是虚拟环境的主要瓶颈之一,采用IOMMU的MSI-x技术将大大减少中断延迟,降低了由VMM处理I/O导致的系统开销,提高系统性能。
共享性的优势Passthrough技术将设备分配给指定的虚拟机,可以达到几乎本机的性能,其缺点是整个I/O设备只能供一个虚拟机使用。这种方式违背了虚拟化的本意,即I/O资源的共享是为使得硬件利用的最大化。SR-IOV技术能够使分配给每个虚拟机的VF都达到其最高性能,这使得所有虚拟机能够充分利用I/O设备资源,达到该设备的最高性能。
(2)减轻系统管理员负担
减少物理设备的优势使用VF替代多个物理I/O设备,降低硬件开销,简化布线,降低功耗,减少转换器端口的使用数目,降低设备数目。
安全性优势通过硬件辅助数据保护和安全得到了加强,使得数据和I/O流在虚拟机之间的创建和隔离得到了增强。
可扩展性优势系统管理员可以使用单个更高带宽的I/O设备代替多个带宽较低的设备达到带宽的要求。利用VF将带宽进行隔离,使得单个物理设备好像是隔离的多物理设备。此外,这还可以为其他类型的设备节省插槽。
(3)简化虚拟机设计
通用性优势SR-IOV技术不需要在客户机中安插任何前端驱动,也不需在VMM中维护任何后端驱动,没有额外的维护开销。
减少对宿主机依赖SR-IOV技术不依赖宿主机进行I/O操作,所以当运行的客户机数量多时,不会增加宿主机的负荷。
摘要:虚拟技术经过多年的发展,CPU虚拟化与内存虚拟化均已成熟,而I/O虚拟化方面却未出现大的变化,成为当前虚拟技术性能提高的瓶颈。近期Intel公司提出的SR-IOV技术通过在硬件层增加虚拟支持,与原有I/O虚拟化中采用的Passthrough技术相结合,极大的提高了物理设备的使用效率和客户域的I/O性能。文章在总结虚拟技术中采用过的I/O模型基础上,分析了SR-IOV技术的实现和特点。
关键词:SR-IOV,虚拟技术,I/O模型
参考文献
[1]K.Fraser,S.Hand,R.Neugebauer,I.Pratt,A.Warfield,and M.Williamson.Safe hardware access with the Xen virtual machine monitor[C].In 1st Workshop on Operating System and Architectural Support forthe on demand ITInfraStructure(OASIS),2004.10.
[2]A.Menon,J.R.Santos,Y.Turner,G.J.Janakiraman,and W.Zwaenepoel.Diagnosing Performance Overheads in the Xen Virtual Ma-chine Environment[C].In First ACM/USENIX Conference on Virtual Ex-ecution Environments(VEE’05),2005.6.
[3]Paul Barham,Boris Dragovic,Keir Fraser.Xen and the art of virtualiza-tion[J].ACMPress,2003:164-177.
[4]J.Sugerman,G.Venkitachalam,and B.-H.Lim.Virtualizing I/O deviceson VMware workstation’s hosted virtual machine monitor[C].In Proceed-ings of the USENIX Annual Technical Conference,2001.6.
[5]SR-IOV Networking in Xen:Architecture,Design and ImplementationYaozu Dong,Zhao Yu,and Greg Rose.SR-IOVnetworking in Xen:Ar-chitecture,design andimplementation[C].In WIOV’08:Proceedings ofthe 1stWorkshop on I/OVirtualization,December2008.
[6]G.Neiger,A.Santoni,F.Leung,D.Rodgers,R.Uhlig.Intel virtulizationtechnology:Hardware support for efficient processor virtualization[C].In-tel Technology Journal,2006.
[7]BarhamP,Dragovic B,Frase K,Hand S,Harris T,Ho A,Neugebauer R,Pratt L,Warfield A.Xen and the art of virtualization[C].proceedings of19th ACMSymposiumon Operating Systems Principles,October,2003.
[8]Liu Jx,Huang W,Abali B,K.Panda D.High performance vmm-bypassi/o in virtual machines[C].proceedings of the USENIX Annual TechnicalConference,May,2006.
[9]Intel Corporation.Intel virtualization technology for direct I/O[J].Inteltechnology Journal 10(03):205-216.September,2008.
[10]Y.Dong,J.Dai,et al.Towards high-quality I/O virtualization[C].Proceeding of the Israeli Experimental Systems Conference(SYSTOR),Haifa,Israel 2009.
[11]PCI-SIG Single Root I/O Virtualization 1.0 Specification[EB/OL].http://www.pcisig.com/specifications/iov/single_root
IO控制器 第6篇
互动反馈系统 (Interactive Response System, 简称IRS) 是一种以多媒体、计算机网络等现代信息技术为基础的网络平台[1]。互动反馈系统使学生人手一个设备, 具有测查、统计和记录功能, 实现即时反馈和互动。目前, 市场上流行的各种互动反馈系统产品都使用无线通讯技术, 遥控器由早期的红外线 (IR) 逐步进化到采用无线射频 (RF) 技术。投票是互动反馈系统的基本功能, 题型一般为选择题或是非题, 题目可以是纯文字的或带有多媒体素材的题干或选项。当学生提交答案后, 系统可以显示出长条图、圆饼图或其他类型的统计图。
互动反馈系统普遍应用于课堂形成性评量, 教师可在教学过程中随时穿插问题, 以了解学生对知识的掌握情况, 达到实时教学 (Just-in-Time Teaching, Ji TT) 的效果。研究发现, 互动反馈系统可以提高学生的课堂参与度, 促进学生对于复杂学科的理解, 提高学生学习的兴趣和愉悦感, 增强课堂互动性。尤其是IRS的匿名特性, 能使学生在没有压力的状态下提供个人答案, 不用担心被其他同学取笑[2]。
随着一对一数字化学习环境的出现和电子书包逐渐进入课堂教学, 可以利用现有无线网络环境, 通过Web应用方式开展互动即时反馈教学, 这是值得研究的一个方向, 其中关键是要解决即时性问题。
二、HTML5与Web Socket
以往的Web应用为了实现即时通讯, 都是采用轮询的方式, 即每隔特定时间由浏览器向服务器发出HTTP request, 然后服务器将最新的数据返回客户端的浏览器。这种传统的模式具有明显的缺点, 即浏览器需要不断地向服务器发出请求, 这样会占用很多带宽和服务器资源。
针对这种状况, HTML5定义了Web Socket协议, 能更好地节省服务器资源和带宽, 并达到实时通讯。Web Socket是HTML5的一种新的通信协议, 是下一代“客户端—服务器”的异步通信方法。它使用ws或wss协议, 实现了任意的客户端 (浏览器) 和服务器程序的双向通讯。在Web Socket中, 浏览器通过Java Script向服务器发出建立Web Socket连接的请求, 连接建立以后, 两者之间就可以直接进行数据传送, 同时还允许跨域通信。因为Web Socket连接本质上就是一个TCP连接, 所以在数据传输稳定性和数据传输量大小方面, 和轮询以及Comet技术相比, 具有很大的性能优势。
在流量和负载增大的情况下, Web Socket方案相比传统轮询方案有极大的性能优势 (如图1所示) 。因此, Web Socket将是小型实时Web应用的首选方案, 十分适合互动即时反馈系统的开发。
三、Node.js与Socket.IO
Node.js是一个服务器端的解决方案, 基于V8引擎开发, 提供了高效的服务器端Java Script框架运行环境, 可以运行Java Script, 并可作为Web服务来处理各种HTTP请求。Node.js通过大量扩展库 (模块) 实现各种网络、HTTP、文件系统、连接数据库等功能。Socket.IO是Node js的一个扩展模块, 基于Node.js并简化了Web Socket, 统一了通信的API, 使得交互式、多用户Web应用成为可能。Socket.IO支持Web Socket, Flash Socket, AJAX long-polling, AJAX multipart streaming, Forever IFrame和JSONP polling, 有效解决了实时通信的问题, 统一了服务端与客户端的编程方式, 服务器端和客户端可以互发事件, 互发数据, 相互通信, 甚至支持服务器端对所有客户端的数据广播。
在Node.js中, 可以通过创建一个典型的HTTP服务器, 把服务器的实例传递到Socket.IO, 再创建连接、断开连接、建立消息监听器, 跟在客户端一样。Node.js通过socket.emit () 函数向当前客户端发送自定义消息和参数, 也可以通过socket.broadcast.emit () 广播发送给所有客户端, 同时服务器端和客户端均通过socket.on () 响应特定消息并触发相应的处理。一个简单的服务器端JS脚本 (app.js) 如下:
由此可见, Node.js与Socket.IO的编程相当简单, 可以快速构建多用户交互和即时性的Web应用。
四、Node.js和Socket.IO联合开发
Web模式的互动教学即时反馈系统分为服务器端、教师端和学生端三部分, 教师和学生端通过网页形式, 均视为Node.js的客户端。以最简单的投票和单选功能为例, 具体介绍如何运用Node.js和Socket.IO联合开发互动教学即时反馈系统。
首先, 服务器端采用express框架, express是Node.js的一种Web框架。在服务器端脚本中创建express实例和Socket.IO, 并设置好连接监听器, 专门处理教师端和学生端发送的消息, 并将处理结果以消息形式发送给相应的客户:
上述便是互动教学即时反馈系统最基本的代码。实际上为了实现更方便快捷的师生交互和更丰富的功能, 各程序的代码还是较为复杂的, 但最核心的还是Node.js和Socket.IO的消息发送和事件驱动机制。基于Node.js和Socket.IO联合开发的互动教学即时反馈系统如图2所示。
五、结束语
随着信息技术与学科的整合, 信息技术将在中小学课堂上发挥更大的作用, 基于Socket.IO设计并实现课堂互动教学即时反馈系统是一个新的尝试, 也是一种简单、有效而又成本低廉的IRS实现方式。相信不久的将来, Socket.IO技术将为一对一数字化学习环境和电子书包学习方式提供更多快捷、实用的即时课堂互动教学工具, 促进信息技术与课堂教学的深度融合。
参考文献
[1]马宗振.互动反馈系统的教学功能和应用设计[J].中小学信息技术教育, 2007 (2) :11-14.
[2]王绪溢.数字教室中有效学习的教学工具:实时反馈系统[EB/OL].http://www.945enet.com.tw/epaper/contents/ha/090/02.htm.
IO控制器 第7篇
关键词:CDIO理念,项目管理,三维优化
一、引言
项目管理是第二次世界大战后期发展起来的重大新管理技术之一, 最早起源于美国, 后由华罗庚教授在50年代引进中国。20世纪60年代, 项目管理的应用范围也还只是局限于建筑、国防和航天等少数领域, 但因为在美国的阿波罗登月项目中取得巨大成功, 项目管理开始全面得到应用。作为管理科学的一个重要分支, 其学科地位获得国内外的普遍认可。为了适应现代项目管理在各领域、各行业深入应用的需要, 目前我国财经类、理工类和综合类高校大都开设了《项目管理》课程。它以现代项目管理的理论和方法为手段, 以不同领域行业人员所具有的专业知识或行业背景为基础, 培养将现代项目管理的思想、理论和方法应用于本领域、本行业的复合型应用人才。《项目管理》课程是一门介于自然科学和社会科学之间的操作性较强的学科, 不仅培养学生掌握理论和方法, 还应要求培养学生具有从事实务工作的职业技能、团队协作能力。由于现有教学条件的限制, 《项目管理》课程的教学方式多沿用传统的“填鸭式”教学方式, 学生所学习的知识仅限于课本的理论知识, 未能达到培养其动手能力与团队协作能力等综合素质的教学目标。为了能更好地改进《项目管理》课程的教学效果, 基于CDIO教育理念, 简要分析《项目管理》的课程内容体系, 提出基于CDIO理念的《项目管理》课程教学三维优化措施。
二、CDIO教育理念
CDIO是Conceive、Design、Implement、Operate的缩写, 即代表构思、设计、实现和运作。CDIO工程教育模式是近年来国际工程教育改革的最新成果, 是一种学生主动、可操作和实践的学习方式。是一种学生和老师之间协作进行, 基于项目实际运作的, 项目成员之间互相协作和交流, 一起通过完成项目实现知识的学习的方式。CDIO教育理念是典型的“干中学”模式, 以学生的团队合作为中心, 以项目的完成为目标, 让学生在项目完成过程中, 围绕项目的实施, 通过教师的指导和督促, 促使和帮助学生完成项目, 获取专业知识和专业能力[1]。
这种基于CDIO教育理念的教学模式, 与传统的灌输式教学存在明显差异。改变了以往学生被动式的接受知识的方式, 通过项目的实施, 促使和带动学生主动的学习, 以解决项目实施过程中所遇的问题。学生在项目实施过程中分工合作, 模拟真实项目管理, 锻炼团队意识和合作能力, 提升发现和解决问题的能力, 掌握课程所需教授的基本技能, 完成《项目管理》课程的教学目标。
三、《项目管理》课程概述
项目管理是一个管理学分支的学科, 是以项目及其资源为对象, 运用专门的知识、技能、工具和方法, 对项目进行高效率的计划、组织、实施和控制, 使项目能够在有限资源限定条件下, 实现或超过设定的需求和期望的管理方法体系[2]。《项目管理》课程在理论学习的基础上并重实践, 是偏技术型和操作型的课程。这门课程理论部分包括项目概述、项目管理概述、项目组织、项目整体管理、项目范围管理、项目时间管理、项目成本管理、项目质量管理、项目人力资源管理、项目沟通管理、项目风险管理、项目采购管理以及Project 2007项目管理软件应用指南等内容。传统教学方式下, 老师制作PPT, 大量给学生灌输课程概念和理论, 少量运用相关案例和提问进行教学, 内容多而枯燥, 学生学习积极性不高, 对课堂内容的消化和吸收效果也不好。同时, 传统教学的考核方式一般以闭卷为主, 考核内容一般是概念性和理论性的题目, 考试卷面成绩占到最后总评的70%左右。学生只要把课本知识突击记忆, 就可以获得较高的最终成绩, 并且对课堂教学不重视, 逃课率较高。导致课堂教学环节不活跃, 课终考核失去约束和激励作用。
四、基于CDIO理念的《项目管理》课程教学三维优化
由于传统教学方法在《项目管理》课程教学中存在明显不足, 通过西北农林科技大学《项目管理》课程教学中的思考与探索, 以及相关课程教学经验的总结与借鉴, 基于CDIO理念, 从理论教学环节、协作教学环节以及课程考核环节三维改进《项目管理》课程的教学方法, 强化理论与实践相结合、教师讲授与学生协作学习相结合, 实现一种学生主动的、可操作的和实践的课程教学方式。教师在不再是知识的传授者, 而是学习活动的引导者、观察者及答疑者[3,4]。
1. 理论教学环节。
该环节是《项目管理》课程教学的基础环节, 通过理论教学可让学生获知《项目管理》课程的知识体系, 打好理论基础。理论教学环节教师传授和学生讨论相结合, 要求教师把握《项目管理》课程的核心知识点, 基于传统口述和提问教学方式, 引入并合理使用小组讨论、案例分析以及情景教学等教学方式, 引导学生主动获取基础知识。
小组讨论:主要目的是通过组内交流的方式对《项目管理》课程理论知识难点进行讨论学习, 老师对学生难以解决的问题进行分析和答疑。具体做法是: (1) 课堂教学之前由老师布置明确的学习计划和内容, 辅以必要的思考题目来引导学生作好课前准备。 (2) 课堂教学以学生分组讨论为主, 由小组组长检查小组成员课前准备情况, 以组内交流的形式开展对疑难知识点的学习。 (3) 对学生讨论仍无法解决的问题再交由老师进行针对性的答疑和分析[3]。
案例分析:主要目的是通过对项目管理案例的学习, 帮助学生巩固理论知识点, 并理清在项目管理中应注意的问题。具体做法是: (1) 教师选择若干项目管理案例, 引导学生仔细阅读并分析。项目管理案例紧密结合项目管理理论知识点, 偏向学生熟悉的案例, 例如讲授“项目的团队建设”知识点时, 可以以唐僧师徒为案例。 (2) 组织学生进行课堂案例讨论, 教师做好案例教学的组织管理工作, 提前分发案例资料并做好案例教学设计, 课堂教学过程中及时组织和引导。 (3) 做好案例分析点评和疑难讲解, 以及评价和总结, 强化学生对案例中项目管理知识点的理解。
情景教学:主要目的是通过情景教学, 通过体验式的学习模式, 寓教于乐, 活泛教学环节, 调动学生的学习积极性, 从而对项目管理知识点有深刻的体会。具体做法是: (1) 在《项目管理》的课程教学中, 借助一些优秀案例, 精心设计若干场景。例如讲授“项目沟通的管理”知识点时, 设计一个沟通训练项目让学生完成。 (2) 学生在其中扮演各种角色, 通过角色在特定场景的演绎和互动。 (3) 做好情景互动的点评、评价和总结, 归纳项目管理过程中相关问题、难点的解决技巧, 促使学生将理论知识灵活应用在实际项目管理过程中。
2. 协作教学环节。
该环节是《项目管理》课程教学的提升环节, 通过协作教学培养学生对项目管理知识点的实际应用能力。协作教学环节以学生项目讨论与模拟决策论证为主, 教师引导和答疑为辅。以小组活动为基本教学单元, 以培养学习能力、沟通能力、合作能力为目标, 将每一个学生置身于一个项目团队中, 合作完成一个项目的策划、计划、分析和模拟实施, 从而达到让学生以“干中学”的方式对项目知识点可以活学活用的目的。这种实战演练过程可以让学生深入理解项目管理理论知识, 掌握良好的项目管理方法、规范的适用环境。学生通过逼真的演练过程, 掌握面对具体问题应采取的措施, 达到理论与实践的有机结合。
具体做法是: (1) 开课时, 对班级学生进行分组, 一般以两个寝室为单位, 男女寝室各一个, 形成男女基本各半、10人左右的项目团队。各团队选出项目经理, 及项目管理核心模块如项目整体管理、项目范围管理、项目时间管理、项目成本管理、项目质量管理、项目人力资源管理、项目沟通管理、项目风险管理、项目采购管理负责人。 (2) 项目团队自主选择一个可行的模拟项目, 以课程理论教学内容为主线, 围绕项目管理的核心模块, 穿插项目管理实战演练, 比如项目计划与章程的制订, 项目启动大会的召开, 项目工作分解结构的创建, 项目进度和成本管理计划制订等。有序模拟实施项目管理全过程。 (3) 各个“项目经理”进行项目推进阶段性小结和汇报, 以便及时了解和协调各模拟项目的进展情况, 也可以让学生交流经验和体会。同时, 各项目经理和任课教师分别对阶段性小结和汇报打分, 从而形成各项目管理团队的阶段性评价[5,6,7]。
3. 课程考核环节。
《项目管理》课程在教学方法改革的同时, 考核方式也应该进行相应的改革。制定一套注重实践的考核方式, 侧重评价学生运用所学理论知识解决实际问题的能力。加大平时成绩的比重, 由过去占总评成绩的30%提高到60%。平时成绩占比增加, 考核方式也可以灵活多样。课程评分标准及各项权重在第一堂课时就应公布。
这门课程的考核成绩分为三个部分, 具体做法: (1) 平时到课、课堂发言情况占总成绩的20%, 由学生的出勤情况得分和课堂表现得分加总获得。学生出勤情况得分根据学生的出勤情况给出, 占总评成绩的10%;学生课堂表现得分可以围绕课堂综合表现、平时作业等方面进行综合评分, 占总评成绩的10%。 (2) 项目团队作业成绩占总评成绩的40%, 由项目团队整体得分和项目成员得分加总获得。项目整体得分根据团队分阶段提交的项目资料和成员汇报表现由项目经理互评和任课教师给分, 占总评成绩的20%。项目成员得分由项目团队内部成员互评获得, 占总评成绩的20%。 (3) 期终课程考试成绩占总评成绩的40%, 通过闭卷考试得分。
课程考核方式的改革, 促使学生重视课堂表现以及学习实践活动, 很大程度上激励了学生的主动学习行为, 最终达到使学生将课本知识深度消化、活学活用的教学目标。
五、结语
CDIO工程教育模式是一种学生主动、可操作和实践的学习方式。基于CDIO理念对《项目管理》课程教学中的理论教学环节、协作教学环节和课程考核环节进行优化改进, 突出了以培养学生能力为中心导向的教学思维, 提高了学生在《项目管理》课程中的自主学习积极性, 改善了课程的教学效果。学生在理论知识的理解上、方法技能的掌握上、团队的分工和合作意识上都得到了强化。基于CDIO理念的《项目管理》课程教学三维优化是对《项目管理》课程教学改革的一种探索, 是对传统教学方式的一种改进, 但在实际课堂运作过程中仍存在一些问题, 例如学生在团队合作中的搭便车现象、师生之间的有效互动机制不完善、教师的项目管理经验缺乏等问题, 仍需在今后教学改革中逐步改进和完善。
参考文献
[1]李保婵.基于CDIO理念的《投资项目评估》课程教学方式改进的探讨[J].中外企业家, 2011, (12) :195-196.
[2]骆粦, 等.项目管理教程[M].北京:机械工业出版社, 2013.
[3]王涛.三阶段教学法在《投资项目评估》课程中的实践与探索[J].教育教学论坛, 2012, (18) :194-196.
[4]孟曙艳.高校项目管理课程教学研究[J].成功 (教育) , 2011, (02) :36-37.
[5]赵志刚.项目管理课程教学方法改革研究[J].现代商贸工业, 2011, (04) :211-212.
[6]甘大力.“项目管理”课程研究性教学的实践与思考[J].煤炭高等教育, 2011, (06) :116-119.
IO控制器 第8篇
基于闪存、服务器连接的新型存储级内存 (ioMemory) 的开拓企业Fusion-io近日宣布, 在过去12个月中, 其企业级闪存的出货量已超过15 PB, 这些存储级内存足够用来保存超过199年的连续播放高清视频或是整个美国国会图书馆的书籍内容的15360倍。这一里程碑事件展示了全球范围内的数据中心正在逐渐改用Fusion的服务器连接闪存, 应用于各种企业级应用、数据库加速、虚拟化和云计算环境。
IDC全球存储系统研究部门的项目副总裁Benjamin Woo表示:“通过服务器连接在企业中部署NAND闪存可以得到经济高效的性能, 因此传统的服务器存储架构正在受到挑战。在刚刚过去十二个月内, Fusion服务器部署的ioMemory技术的出货量达到了15 PB, 我们可以越来越清楚的看到, 服务器端闪存已经走出了其自身的限制, 正在进入企业级计算领域的主流。”
Fusion-io首席执行官David Flynn表示:“随着DRAM容量密度成百倍地增加以及每Gb的价格不再那么昂贵, NAND闪存开始解决基本的数据供应问题, 这个问题即使是在虚拟化的时代, 也导致了处理器利用率平均降低百分之二十以上。通过使用内存控制器的方法和虚拟内存管理技术, 将闪存直接整合到服务器, ioMemory和Fusion–io的虚拟存储层 (VSL) 甚至可以把大型的数据集有效地置于内存之中。这样应用可以发挥服务器的全部处理潜力, 往往可以增加5倍以上的工作负载。”
ioMemory的高效性助力成本和能源的节省成倍增加
通过使用ioMemory技术可以提升数据中心的高效性, 从而显著降低服务器横向扩展和软件许可证的成本, 因此部署ioMemory常常可以产生即时的净节省。这些节省不仅可以降低日常的运营成本 (包括较少的占地空间、电力和散热需求) , 还可以获得其他优势 (如每个服务器处理更多的工作负载) , 这意味着所需的软件许可证更少, 整体效率更高。对于在当前预算紧张的环境中工作的架构师来说, 这种可以提高性能, 同时减少环境影响的服务器连接ioMemory无疑是一个理想的解决方案。
相比之下, NAND闪存以固态磁盘 (SSD) 的形式来模拟磁盘驱动器, 并被置于原有存储基础设施之中, 这就限制了服务器访问数据的速度, 白白浪费了许多提高闪存效率的机会, 并且其高成本和专有存储系统等还增加了费用的负担。因此, 这种部署闪存的方法被限制在较小的细分市场, 这些市场对性能的需求可以容忍更高的总拥有成本。
IO控制器范文
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。