A program execution error which is trapped by the operating system and which results in abrupt termination of the program.
It may be possible for the program to catch some such errors, e.g. a floating point underflow; others, such as an invalid memory access (an attempt to write to read-only memory or an attempt to read memory outside of the program's address space), may always cause control to pass to the operating system without allowing the program an opportunity to handle the error. The details depend on the language's run-time system and the operating system.
See also: fatal error.