Демисексуальность
- 1 year ago
- 0
- 0
В POSIX -системах, SIGBUS — сигнал , сигнализирующий об ошибке шины, при обращении к физической памяти.
SIGBUS
— целочисленная константа, определённая в заголовочном файле
signal.h
. Символьные имена сигналов используются вместо номеров, так как в разных реализациях номера сигналов могут различаться.
SIG — общий префикс сигналов (от англ. signal ), BUS — англ. bus — шина данных (или адресная шина).
Процесс может получить SIGBUS при неправильном обращении к памяти:
mmap
()
файл был впоследствии урезан
от 16 июля 2010 на
Wayback Machine
(англ.)
).
Операционная система может предоставить дополнительные данные о возникшей ошибке, используя стек сигнала ( англ. signal stack ), который может помочь разработчику в отладке данной ошибки.
По умолчанию, процесс аварийно завершается с генерацией дампа памяти (и/или другой операции зависящей от платформы), который можно использовать для получения информации об условиях возникновения исключения.
SIGBUS может быть перехвачен или проигнорирован. Однако игнорирование SIGBUS, в некоторых случаях, может привести к непредсказуемым результатам. Примером программы, перехватывающей SIGBUS, может служить отладчик , который способен проанализировать стек и информировать разработчика на каком этапе произошла ошибка.