网站地图
热插拔

热插拔(hot-plugging或Hot Swap)即带电插拔,热插拔功能就是允许用户在不关闭系统,不切断电源的情况下取出和更换损坏的硬盘、电源或板卡等部件,从而提高了系统对灾难的及时恢复能力、扩展性和灵活性等,例如一些面向高端应用的磁盘镜像系统都可以提供磁盘的热插拔功能。具体用学术的说法就是:热替换(Hot replacement)、热添加(hot expansion)和热升级(hot upgrade),

热插拔最早出现在服务器领域,是为了提高服务器易用性而提出的。在我们平时用的电脑中一般都有USB接口,这种接口就能够实现热插拔。如果没有热插拔功能,即使磁盘损坏不会造成数据的丢失,用户仍然需要暂时关闭系统,以便能够对硬盘进行更换。而使用热插拔技术只要简单的打开连接开关或者转动手柄就可以直接取出硬盘,而系统仍然可以不间断地正常运行。

纵观现今市场SATA主板提供的附件中的Serial ATA线缆,特别是SATA电源线,大多为非标准附件。如SATA电源线没有SATA 15-针脚电源接口界面,Serial ATA硬盘将无法遂行热插拔功能。即使一些SATA硬盘同时提供SATA 15针脚电源接口和IDE 1x4-针脚常规电源接口,可以明确的是IDE1x4-针脚常规电源接口无法支持热插拔。

我们知道,在普通电脑里,USB(通用串行总线)接口设备和IEEE 1394接口设备等都可以实现热插拔,而在服务器里可实现热插拔的部件主要有硬盘、CPU、内存、电源、风扇、PCI适配器、网卡等。购买服务器时一定要注意哪些部件能够实现热插拔,这对以后的工作至关重要。

可以明确的是IDE 1x4-针脚常规电源接口无法支持热插拔,强行操作会导致硬盘损坏和数据丢失,华擎提供了可以支持SATA硬盘热插拔功能的技术,并且在带SATA的主板里提供了7-针脚SATA数据线和具SATA 15-针脚电源接口界面的SATA电源线。

许多笔记本都配置有eSATA接口或者带有可以转接eSATA的express card,使用eSATA接口移动硬盘传输数据会快很多。这里需要说明的是,如何开启eSATA高速模式。 无论是XP还是Win7,当移动硬盘插入笔记本的eSATA接口时,系统会自动检测并识别eSATA设备,但我们会发现此时数据传输速度很慢,远远低于eSATA标准速度,而问题就出在没有装eSATA驱动,我们可以去下载并安装Intel Rapid Storage驱动。安装并重启后,任务栏会有一个“英特尔快速存储技术”图标,右键单击后选择“打开应用程序”。切换到“管理”界面,此时可以看到eSATA端口为3Gb/S,而在拷贝数据时速度不会低于100MB/S。从而实现了数据之间的高速传输,从而真正实现热插拔。

实现热插拔需要有以下几个方面支持:总线电气特性、主板BIOS、操作系统和设备驱动。那么我们只要确定环境符合以上特定的环境,就可以实现热插拔。系统总线支持部分热插拔技术。驱动方面,针对Windows NT,Novell的Netware,SCO UNIX的驱动都把热插拔功能整合了进去,只要选择针对以上操作系统的驱动,实现热插拔的最后一个要素就具备了。

从586时代开始,系统总线都增加了外部总线的扩展,因此这方面我们的顾虑可以消除。

从1997年开始,新的BIOS中增加了即插即用功能的支持,虽然这种即插即用的支持并不代表完全的热插拔支持,仅支持热添加和热替换,但这是我们热插拔中使用最多的技术了,所以主板BIOS这个问题也可以克服了。

在操作系统方面,从Windows95开始就开始支持即插即用,但对于热插拔支持却很有限,直到NT 4.0开始,微软开始注意到NT操作系统将针对服务器领域,而这个领域中热插拔是很关键的一个技术,所以操作系统中就增加了完全的热插拔支持,并且这个特性一直延续到基NT技术的Windows 2000/XP操作系统,因此只要使用NT4.0以上的操作系统,热插拔方面操作系统就提供了完备的支持。

驱动方面,针对Windows NT,Novell的Netware,SCO UNIX的驱动都把热插拔功能整合了进去,只要选择针对以上操作系统的驱动,实现热插拔的最后一个要素就具备了。

通常来说,一个完整的热插拔系统包括热插拔系统的硬件,支持热插拔的软件和操作系统,支持热插拔的设备驱动程序和支持热插拔的用户接口。

热插拔电路设计应用非常广泛,作用是对热插拔的设备的元器件、芯片的一种保护措施。通常热插拔采用对信号进行隔离缓冲处理,采用244,245等器件来处理。并且在输入信号增加限流电阻和0.1uF滤波电容,对于输出信号通常直接由 244,245输出即可。还有,除了过缓冲隔离之外,对于PCI接口等信号,通常还需要控制其上电,这也就是PCI总线的热插拔技术。

普通硬盘热插拔

以前的硬盘磁头不具备自动停靠的功能,在通电状态下磁头是“飞行”在盘片上面的,当系统断电之前,必须用一条叫“Park”的专用命令,来让磁头归位。否则,就有可能因为盘片瞬间停转而磁头来不及归位,造成盘片被磁头“铲伤”。

硬盘只有当读取数据的时候,磁头才会飞行在盘片表面。一读取动作结束,磁头立即自动归位停靠。同时,硬盘都具备延时断电的功能。即当系统供电突然丢失时,硬盘本身的控制器能自动探测到这个变化,然后强迫磁头停止当前读写指令的执行,并使磁头正常归位。这个设计大大加强了硬盘在意外断电情况下的安全系数。 所以,盘片损伤的可能性其实是极低的。但这并不意味着热插拔硬盘是毫无危险的。因为开机状态下带电插拔硬盘,都会产生一个瞬时的冲击电流,过去我们认为这是造成硬盘带电插拔损坏的罪魁祸首。然而事实上,硬盘电源接口电路对这种瞬间电流的变化的宽容度是比较大的,绝大多数时候并不会导致硬盘电路板被烧毁。真正的危险来自于硬盘的数据线!在带电状态下插拔硬盘数据线,数据线上也会产生不正常的瞬间电流和压降,导致多个精密控制芯片被烧毁,这才是真正的“硬盘杀手”。

因此,只要我们能保证插拔电源线和数据线的顺序正确,即“插”硬盘的时候先接数据线,后接电源线;“拔”硬盘的时候正相反,先拔电源线,后拔数据线。这样,硬盘热插拔就不是天方夜谭!

应该感谢微软!是它把Windows操作系统的硬件在线识别和即时禁用功能做得如此完美,才让硬盘热插拔并且即插即用成为可能。首先,Windows系统可以绕过系统BIOS的设置,自行管理所有硬件,这是硬盘即插即用的第一要素。此外,在Windows设备管理器的“操作”菜单中,有一个“扫描检测硬件改动(A)”功能。当硬盘在开机状态下被插到系统中后,运行这个扫描检测功能,就能使新硬盘被操作系统识别并且正常使用。而在开机状态下拔出硬盘前,由于Windows会自动监测和向硬盘写数据,因此必须先将这个设备卸载,以使操作系统停止一切对该硬盘的操作,这时就可以安全地拔下硬盘了。

为验证以上观点,笔者亲手操作了一下,以下是操作步骤:将硬盘的跳线设置到CS(Cable Select,电缆选择)状态,插上硬盘数据线和电源线,在设备管理器的“操作”菜单中扫描检测硬件改动,完成之后,新硬盘即可以开始正常操作了。

热拔的步骤与此类似,先在设备管理器中找到该硬盘选择“卸载”,再将电源线拔下,确定硬盘已经停转后,即可拔下数据线。至此,硬盘被彻底热拔除。

由于是带电插拔,瞬间电流和电压的变化,有可能导致系统死机,但热插拔硬盘经笔者的长期操作验证从未导致过硬盘烧毁。不过这毕竟是非常规的硬盘安装和使用方法,硬盘存在热插拔和即插即用的可行性,但普通用户最好不要轻易模仿。

一般的外设,像软驱、光驱甚至是硬盘都可以使用热插拔,在安装时记住要先插数据线,后插电源线,拆下时刚好相反,只要您注意步骤正确,完全就可以把热插拔玩弄于股掌之间。

不过在硬盘热插拔时要注意,一定要使用同一个型号的硬盘,因为您硬盘的型号数据还存储在主板的BIOS里,这个是无法修改的,而软驱、光驱就没有这个问题了,您可以大胆的使用热插拔。

热插拔过程如下图所示,其中左边代表系统及其供电,在供电的输出端有一个电容,右侧有两张卡,这些卡的输入端也有电容。把卡插入系统之前,输入电容没有被充电;当把卡插入系统时会有一个很大的瞬间电流向输入电容充电,这么大的瞬时电流很可能造成系统供电电压不正常。

热插拔的实现如下图所示,是通过在供电与负载之间串联一个MOS管和一个电流检测电阻完成的。电流检测电阻的目的是将流过MOS管的信号传给控制线路,控制线路再根据电流设定和计时电路来控制MOS管的导通。

系统中加入热插拔的好处包括:

在系统开机情况下将损坏的模块移除,还可以在开机情况下做更新或扩容而不影响系统操作。

由于热插拔零件的可靠度提升,还可以将它们用做断电器,而且因为热插拔能够自动恢复,有很多热插拔芯片为系统提供线路供电情况的信号,以便系统做故障分析,因此减少了成本。


相关文章推荐:
板卡 | 磁盘镜像 | swapping | 服务器 | 接口 | 接口 | 通用串行总线 | CPU | 服务器 | eSATA | 接口 | express card | 英特尔快速存储技术 | 主板BIOS | 设备驱动 | 设备驱动程序 | 用户接口 | 接口 | 硬盘磁头 | 接口 | 硬盘杀手 | 设备管理器 | 卸载 | 跳线 | 死机 | 硬盘安装 |
相关词汇词典