当你准备在不断电的情况下插拔一块PCIe SSD时,你要小心了。如果在PCIe设备不支持热插拔的条件下,很可能会对主板或PCIe插槽造成损毁。
为了放置意外的发生,PCIe Spec设计了一种"No Surprise"热插拔机制,即,当用户要插拔PCIe设备时,必须先通知系统软件做好准备,然后通过指示灯告知用户热插拔的状态。
PCIe环境下的热插拔需要软件与硬件的通力合作。先来看一张示意图,红色框内属于软件方面的需求,绿色框内是硬件方面的需求。
软件方面主要包括:
User Interface: 这部分由系统OS提供。主要允许用户可以请求插拔PCIe设备。
Hot-Plug Service: 这部分也是由系统OS提供。主要负责处理用户插拔PCIe设备的请求。
Standardized Hot Plug System Driver: 这部分驱动可以由系统OS或者主板提供。
Device Driver: 这部分主要有适配卡提供。
硬件方面主要包括:
Hot-Plug Controller: