Legacy Documentclose button

Important: The information in this document is obsolete and should not be used for new development.

Previous Book Contents Book Index Next

Inside Macintosh: Networking With Open Transport / Part 2 - Open Transport Reference
Appendix C - Special Functions


Functions Callable at Hardware Interrupt Time

Table C-1 lists client functions that you can safely call at hardware interrupt time (from completion routines, VBL tasks, Time Manager tasks, and others), and specifies whether you must call the OTEnterInterrupt function before calling the function.

That these functions are safe to call, however, does not imply that they interact predictably with non-interrupt code. For instance, while it is safe to call the OTAddFirst function at interrupt time, the actual add operation is not atomic, so calling it at interrupt time could adversely affect non-interrupt code processing the same list. Thus, for each function listed in the table, information is also provided as to whether the operation is atomic.


Table C-1  Functions callable at hardware interrupt time, all ISAs

FunctionNeeds OTEnterInterrupt?  Atomic
OTAcquireLocknoyes
OTAddFirstnono
OTAddLastnono
OTAllocMemnon/a
OTAtomicAdd16noyes
OTAtomicAdd32noyes
OTAtomicAdd8noyes
OTAtomicClearBitnoyes
OTAtomicSetBitnoyes
OTAtomicTestBitnoyes
OTCancelSystemTasknon/a
OTCanLoadLibrariesyesno
OTCanMakeSyncCallyesno
OTClearLocknoyes
OTCompareAndSwap16noyes
OTCompareAndSwap32noyes
OTCompareAndSwap8noyes
OTCompareAndSwapPtrnoyes
OTCreatePortRefnon/a
OTDequeuenoyes
OTElapsedMicrosecondsnon/a
OTElapsedMillisecondsnon/a
OTEnqueuenoyes
OTFindAndRemoveLinknono
OTFindLinknono
OTFreeMemnon/a
OTGetBusTypeFromPortRefnon/a
OTGetClockTimeInSecsnon/a
OTGetDeviceTypeFromPortRef    non/a
OTGetFirstnono
OTGetIndexedLinknono
OTGetLastnono
OTGetSlotFromPortRefnon/a
OTGetTimeStampnon/a
OTIsAtInterruptLevelnon/a
OTIsInListnono
OTLIFODequeuenoyes
OTLIFOEnqueuenoyes
OTLIFOStealAndReverseListnoyes
OTLIFOStealListnoyes
OTMemcmpnon/a
OTMemcpynon/a
OTMemmovenon/a
OTMemsetnon/a
OTMemzeronon/a
OTRemoveFirstnono
OTRemoveLastnocno
OTRemoveLinknono
OTReverseListnono
OTScheduleDeferredTaskyesn/a
OTScheduleInterruptTasknon/a
OTScheduleSystemTaskyesn/a
OTSetBusTypeInPortRefnon/a
OTSetDeviceTypeInPortRefnon/a
OTStrCatnon/a
OTStrCopynon/a
OTStrEqualnon/a
OTStrLengthnon/a
OTSubtractTimeStampsnon/a
OTTimeStampInMicrosecondsnon/a
OTTimeStampInMillisecondsnon/a
OTWhoAmInon/a


Previous Book Contents Book Index Next

© Apple Computer, Inc.
15 JAN 1998