Una aplicación, normalmente no sabe dónde está situada la rutina de
servicio de la llamada. Por lo que si ésta se codifica como una llamada
de función, cualquier cambio en el S.O. haría que hubiera que
reconstruir la aplicación.
Pero lo más importante es que una llamada de función no cambia el
modo de ejecución de la CPU. Con lo que hay que conseguir llamar a la
rutina de servicio, sin tener que conocer su ubicación, y hacer que se
fuerce un cambio de modo de operación de la CPU en la llamada
(y la
recuperación del modo anterior en el retorno).
Esto se hace utilizando instrucciones máquina diseñadas
específicamente para este cometido, distintas de las que se usan para
las llamadas de función.
No hay comentarios:
Publicar un comentario