Modify the interrupt interface implementations and changes some parameters definition

I have made a new branch according grissiom's method.