오디오 세그먼테이션 오류 (segfault) 란 무엇입니까? -techopedia에서 정의

세그먼테이션 오류 (segfault) 란 무엇입니까? -techopedia에서 정의

차례:

Anonim

정의-분할 결함 (Segfault)은 무엇을 의미합니까?

세그먼테이션 결함 (segfault)은 메모리 액세스 위반이 발생했음을 운영 체제에 알려주는 메모리 보호 기능이있는 하드웨어에 의해 리턴 된 오류입니다. 운영 체제는 일반적으로 문제의 프로세스에 신호를 통해 오류에 대해 알리고 그에 따라 OS가 일종의 수정 조치를 수행합니다. 프로세스 나 프로그램이 할당되지 않은 메모리에 액세스하려고하기 때문에 발생합니다.

분할 오류는 액세스 위반이라고도합니다.

Techopedia에서 세그먼테이션 오류 설명 (Segfault)

세그먼테이션 결함은 종종 프로그램이나 다른 프로그램 또는 시스템 자체에 할당되지 않은 메모리에 액세스하는 프로그램이나 프로세스의 프로그래밍 오류로 인해 발생합니다. 프로세스는 메모리를 사용하기 전에 항상 메모리를 요청해야하기 때문에 예약되지 않은 메모리를 건드릴 수 없습니다. 따라서 할당되지 않은 메모리를 실수로 건 드리면 액세스 위반이 발생합니다.


Segfault는 또한 재귀 함수로 인해 발생할 수 있습니다.이 기능은 할당 된 모든 스택 공간을 사용하고 할당되지 않은 메모리를 빠르게 잠식 할 수 있습니다. 일부 시스템에서는 이것이 스택 오버플로로 간주되지만 다른 시스템에서는 일종의 액세스 위반 일뿐입니다.


세그먼테이션 결함은 커스텀 시그널 핸들러를 통해 프로세스에 의해 처리 될 수 있지만, 종종 OS의 기본 시그널 핸들러가 사용됩니다.이 프로세스는 일반적으로 문제가있는 프로세스가 비정상적으로 종료되거나 (크래시라고 함) 코어 덤프를 강제 실행하는 OS입니다 .

세그먼테이션 오류 (segfault) 란 무엇입니까? -techopedia에서 정의