第一個CONTAINING_RECORD&NPORT_RECV_PACKET_RSVD得到了NPROT_RECT_PACKET_RSVD.link的地址,因爲NPROT_RECT_PACKET_RSVD存於NDIS_PACKET.ProtocolReserved處,所以NPROT_RECT_PACKET_RSVD.link的地址就NDIS_PACKET結構中最後一個成員ProtocolReserved的地址。
第一個CONTAINING_RECORD&NDIS_PACKET得到了NDIS_PACKET結構的首地址,因爲第一個CONTAINING_RECORD返回的正是ProtocolReserved的地址,再用該地址減去結構體成員ProtocolReserved到首地址的距離(&NDIS_PACKET.ProtocolReserved)就得到了包描述符的首地址。