1. A method of providing access to a shared resource within a data processing system, said method comprising: receiving a request to perform a resource access operation on said shared resource; invoking a first routine to perform said resource access operation in response to said receiving, wherein said first routine comprises a dereference instruction to dereference a pointer to memory associated with said shared resource; detecting a data processing system exception generated in response to invoking said first routine; invoking a second routine to perform said resource access operation in response to said detecting, wherein said second routine comprises a lock acquisition instruction to acquire a global lock associated with said shared resource prior to a performance of said resource access operation and a lock release instruction to release said global lock subsequent to said performance of said resource access operation.