728x90
예외
- CPU는 자기가 정한 예외 상황이 있는데 S/W(O/S or Application)를 동작할때 미리 정한 예외가 발생하면 S/W측에서 처리할지 결정하는 것이 CPU 정책
- CPU는 단순히 그런 예외 상황이 발생하면 못하겠다고 알려주는 것이 전부이고 어떻게 처리할 지는 S/W가 처리해야 함
- S/W는 예외를 처리하는 코드(핸들러)를 미리 마련해 놓고 CPU가 미리 정한 예외가 발생되면 그 예외에 맞는 핸들러가 동작함
- 이미 결정되어 있는 CPU의 예외의 종류를 H/W 예외라고 하고 그 예외가 발생했을 때 어떻게 처리할지 결정권은 S/W에게 있음
- 핸들러는 O/S를 H/W에 심을 때 이미 설정이 되어 있음
- Windows는 SEH(Structred Exception Handling, 구조적 예외 기법) 매커니즘을 가지고 있음
-> CPU에 예외가 발생하면 O/S에 알려주고 O/S는 Application에 알려줌
-> O/S가 Application에게 예외가 발생했다고 알려주고 예외를 처리할 수 있게 방법을 알려주는데 그 방법이 SEH라는 매커니즘
-> SEH 매커니즘에서는 O/S관점에서도 예외를 발생시킬 수 있도록 해주고 O/S가 발생시키는 예외를 S/W 예외라고 함
-> 예외가 발생된 시발점이 CPU면 H/W예외, O/S이면 S/W예외라고 함
-> SEH는 Application에서도 예외를 발생시킬 수 있도록 함
728x90
'Programming > System Programming' 카테고리의 다른 글
윈도우즈 시스템 프로그래밍 - 17. 구조적 예외처리(SHE) 기법(3) (0) | 2020.08.17 |
---|---|
윈도우즈 시스템 프로그래밍 - 17. 구조적 예외처리(SHE) 기법(2) (0) | 2020.08.17 |
윈도우즈 시스템 프로그래밍 - 16. 컴퓨터 구조에 대한 네 번째 이야기(4) (0) | 2020.08.13 |
윈도우즈 시스템 프로그래밍 - 16. 컴퓨터 구조에 대한 네 번째 이야기(3) (0) | 2020.08.13 |
윈도우즈 시스템 프로그래밍 - 16. 컴퓨터 구조에 대한 네 번째 이야기(2) (0) | 2020.08.11 |