Kbase 19633: What is a Bus Error?
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  10/15/2008 |
|
Status: Verified
GOAL:
What is a bus error?
FIX:
A Bus error is caused by a data alignment error on a memory fetch or store operation. On most machines, some data elements must be stored so they are aligned on some address boundary. For example: 4 byte integers typically must be stored at memory addresses that are a multiple of four. If you construct a pointer to an odd address and try to fetch a 4 byte integer, you get a "bus error."
A related Error 49 memory violation is caused by a program trying to access a memory address that is not within the program's address space or by trying to store to a memory location that is read-only.
Although not the only causes, both of these errors can be caused by software bugs, incompatible shared libraries, corrupted executables, corrupted data files, and, only very rarely, by hardware failures.