某高速路不停车收费系统 (ETC) 的业务描述如下: 车辆驶入高速路入口站点时,将驶入信息 (ETC 卡号,入口编号,驶入时间 ) 写入登记表; 车辆驶出高速路出口站点 ( 收费口 ) 时,将驶出信息 (ETC 卡号,出口编号,驶出时间 ) 写入登记表;根据入口编号、出口编号及相关收费标准,清算应缴费用,并从绑定的信用卡中扣除费用。 一张 ETC 卡号只能绑信用卡号,针对企业用户,一张信用卡号可以绑个 ETC 卡号。使用表绑定 (ETC 卡号,信用卡号 ) 来描述绑定关系,从信用卡 ( 信用卡号,余额 ) 表中扣除费用。 针对上述业务描述,完成下列问题: 1 、在不修改登记表的结构和保留该表历史信息的前提下,当车辆驶入时,如何保证当前 ETC 卡已经清算过,而在驶出如何保证该卡已驶入而未驶出 ? 请用 100 字以内文字简述处理方案。 2 、当车辆驶出收费口时,从绑定信用卡余额中扣除费用的伪指令如下:读取信用卡余额到变量 x ,记为 x=RA. ;扣除费用指令 x=x-a ;写信用卡余额指令记为 W(A , x) 。 (1) 当两个绑定到同一信用卡号的车辆同时经过收费口时,可能的指令执行序列为: x1=RA. , x1=x1-a1 , x2=RA. , x2=x2-a2 , W(A , x1) , W(A , x2) 。此时会出现什么问题 ?(100 字以内 ) (2) 为了解决上述问题,引入指令 XLoekA. 对数据 A 进行加锁,指令 UnlockA. 对数据 A 进行。请补充上述执行序列,使其满足 2PL 协议。