A method and apparatus for performing a system call in a system having a user privilege level and a kernel privilege level, wherein the kernel privilege level is higher than the user privilege level is disclosed. A sequence of instructions is executed at the user privilege level including a first instruction that requires a resource provided at the kernel privilege level. Control is transferred to a first procedure executing at the user privilege level by performing a near call and saving only a pointer to the first instruction. The first procedure includes a calling instruction that does not save an architectural state prior to transferring control. Control is transferred from the first procedure to a second procedure executing at the kernel privilege level. The second procedure determines the resource required by the first instruction. Control is transferred from the second procedure to a third procedure that is determined by the second procedure. The third procedure operates at the kernel privilege level and providing the resource required by the first instruction. Control is returned to the sequence of instructions either by the third procedure or by a fourth procedure that selectively restores previously saved architectural state.