What is an abend (abnormal end)?
An abend is an unexpected or abnormal termination of an application or operating system that results from a problem with the software. The term abend -- sometimes referred to as ABEND -- is a combination of the words abnormal and end, coined when operator messages needed to be as short as possible.
An abend occurs when the host system cannot resolve an error condition generated by the program. The term's origin is attributed to the IBM 360 operating system that ran on IBM mainframe computers in the 1960s and 1970s. IBM still uses the term in operating systems such as z/OS and z/VM, but its use in other systems is rare. The Novell NetWare operating system (OS) used the term throughout its history, but the OS is no longer a supported product.
What happens when an abend occurs?
When a program experiences an abend, the system issues an error message which often includes information to help resolve the issue. An abend can occur for multiple reasons, but it's usually the result of an application glitch or memory-related issue. For example, an application may include faulty program instructions, or it may try to address a memory space that it is not permitted to address, resulting in an application error.
Abends are sometimes categorized as soft or hard. An abend is considered soft if the system can automatically recover from the error. If the system cannot recover automatically, the abend is considered hard. Newer OSes can handle abends more skillfully than in the past, limiting the problem to the application itself rather than bringing down the entire system.
The term abend is more common in older mainframe systems than in PCs and usually refers to the abnormal end of an application rather than a disruption of the operating system. An OS failure is more likely to be called a crash. In smaller systems, the term crash is typically used to refer to both application and OS failures, as well as to hardware failures.