예외 처리 3조 조일현.

Slides:



Advertisements
Similar presentations
아무도 대답하지 않았던 나눔에 관한 질문들 아름다운재단 10주년 기념 컨퍼런스를 다녀오며… 작성 : 이정인 사회복지사.
Advertisements

내 마음의 버 스 이천신하교회 청년부. 이름 : 한상훈 나이 : 30 살 종교 : 기독교 ( 모태신앙 ) 생활신조 : 인생은 한방 ! 로또나 사자 이상형 : 청순 가련한 모태미녀 특이사항 : 걸그룹 노래에 환장함 식스팩을 갖기엔 슬픈 몸을 타고 남.
10장. 시기별 학급경영 11조 염지수 이 슬 권용민 신해식.
일본 근세사. (1) 에도막부의 개창 ( ㄱ ) 세키가하라의 전투 (1600) - 히데요시의 사후 다섯 명의 다이로 ( 大老 ) 가운데 최대 영지 (250 만석 ) 를 보유하고 있던 도쿠가와 이에야스가 급부상. 이에 이에야스와 반목해 온 이시다 미쓰나리 ( 石田三成 ),
5 조 - 음악학과 이수영 5 조 - 음악학과 이수영 사회복지학과 김원미 사회복지학과 김원미 신민지 신민지 이정원
독서골든벨 2009 학년도 6 학년 1 학기 6-10 반. 1. 이야기 삼국유사 정대한 원효대사는 수행을 위해 떠나던 중 피곤하여 숲 속에서 잠이 들었다. 잠결에 너무 목이 마른 나머지 어디에 담겨있는 물을 맛있게 마셨나요 ?
아니마 / 아니무스 송문주 조아라. 아니마 아니마란 ? 남성의 마음속에 있는 여성적 심리 경향이 인격화 한 것. 막연한 느낌이나 기분, 예견적인 육감, 비합리적인 것에 대 한 감수성, 개인적인 사랑의 능력, 자연에 대한 감정, 그리.
대구가톨릭대학교 체육교육과 06 학번 영안중학교 체육교사 신웅섭 반갑습니다. 반야월초등학교 축구부 대륜중학교 축구부 대륜고등학교 대구가톨릭대학교 차석 입학 대구가톨릭대학교 수석 졸업 2014 년 경북중등임용 체육 차석 합격 영안중학교 체육교사 근무 소개.
교수님 영상 제 2 장 관세법 일반 제 1 절 통칙 제 2 절 법 해석의 원칙 등 제 3 절 기한과 기간 제 4 절 서류의 송달 등 제 5 절 관세의 부과 및 징수 제 6 절 납세의무의 소멸 등.
캐나다의 지도 만든사람 = 김현정. 캐나다의 국기 단풍잎 모양 때문에 흔히 ' 메이플 리프플래그 ’ 라고 한다. 양쪽의 빨 강은 태평양과 대서양을 나타내 고, 12 개의 각이 있는 빨간 단풍잎 은 이 나라의 상징이다. 빨강과 하 양은 영국의 유니언 잭의 색에서 따온 것이며.
두 손 들고 두 손 들고 찬양합니다 두 손 들고 찬양합니다 다시 오실 왕 여호와께 다시 오실 왕 여호와께 두 손 들고 찬양합니다 두 손 들고 찬양합니다 다시 오실 왕 여호와께 다시 오실 왕 여호와께 오직 주만이 나를 다스리네 오직 주만이 나를 다스리네 나 주님만을.
일장 - 1 일 24 시간 중의 명기 ( 낮 ) 의 길이 ( 밤은 암기, 낮은 명기 ) 광주기성 - 하루 중 낮의 길이의 장단에 따라 식물의 꽃눈 형성이 달라지는 현상 일장이 식물의 개화현상을 조절하는 중요한 요인 단일식물 - 단일조건에서 개화가 촉진되는 식물 장일식물.
12 장 템플릿 (template) Sung-Min Jung Internet Management Technology Lab. School of Information & Communication Engineering, Sungkyunkwan Univ. 300 Cheoncheon-dong,
2 학년 6 반 1 조 고은수 구성현 권오제 김강서.  해당 언어에 본디부터 있던 말이나 그것에 기초하여 새로 만들어진 말  어떤 고장 고유의 독특한 말  Ex) 아버지, 어머니, 하늘, 땅.
제주특별자치도 교육청 Messenger Manual
지금은 기도 하는 시간입니다 1. 송구영신예배를 위해서 2. ‘크리스마스 이브’ 행사를 준비하는 교육 기관을 위하여
2014년 국가근로장학금 장학생 교육.
2014년도 교원 및 기간제교사 성과상여금 전달교육 개 회 국기에 대한 경례 - 인사말
선진 고양교육 “유아교육 행정 업무 연수” 유치원 회계실무 및 유아학비 연수 경기도고양교육청.
서울시 ‘찾아가는 동 주민센터’ 사업 시행 이후 지역사회의 변화
묵자 겸애, 비명, 비공, 상현, 상동, 천지, 명귀, 삼표 법.
예외 상황 예제 개발 1실 서버팀 우상욱 소스 첨가(…).
제5장 산업재해 보상보험 ☞ 목적 : 근로자의 업무와 관련하여 발생한 재해근로자의 재활 및 사회복귀를 촉진시키기 위하여 이에 필요한 보험시설을 설치 운영하며, 피해를 예방하고 근로자의 복지증진을 위한 사업을 행함으로써 근로자의 보호에 이바지함을 목적으로 함. 산재보험은.
내 아이를 위한 구강관리.
현대사회의 여성문제와 여성복지 3조 권경욱 강향원 황대인 변갑수 박창욱 김지현.
14주차 1교시 강화계획 [학습목표] 1. 강화계획의 정의를 안다 [학습내용] 1. 단순한 강화계획 2. 간헐적 강화 3. 복합 계획 4. 선택과 대응법칙 [사전학습] 강화계획이 일어날 수 있는 사례를 생각해본다.
제16장 원무통계 • 분석 ☞ 통계란 특정의 사실을 일정한 기준에 의하여 숫자로 표시한 것을 말한다.통계로서 활용할 수 있는 조건으로는 ① 동질성을 지녀야 하고 ② 기준이 명확하고 ③ 계속성이 지속되어야 하며 ④ 숫자로 표시하여야 한다 경영실적의.
연장근로와 야간·휴일근로 김영호 노무사 나눔 노사관계연구소 소장 연세대 일반대학원 박사 수료 고려사이버대 법학과 외래교수
고교평준화의 득과 실 김영주 이지영 최윤영.
서울지방세무사회 부가세 교육 사진클릭-자료 다운 세무사 김재우.
치매의 예방 김 은민 윤금 노인요양원 치매의.
제 12장 예외 처리 12.1 설계 쟁점 12.2 PL/I의 ON-조건 12.3 Ada의 예외 처리
제6장 제어(Control) 6.1 구조적 프로그래밍(Structured Programming)
Chapter 11 – 예외 처리 Outline 11.1 설계 쟁점 11.2 Pl/I의 예외 처리 11.3 Ada의 예외 처리
10장 예외 처리 프로그래밍 언어론 10.6 Pascal과 C의 에러 처리 10.1 설계 주제 10.2 PL/I의 예외 처리
제7장 제어구조 I – 식과 문장.
10장 예외 (Exceptions).
Hadoop 김연왕
2010년 직원연수 자료 제1차 : 4월 16일 ~ 17일 제2차 : 4월 23일 ~ 24일
자바 5.0 프로그래밍.
마산에 대하여 만든이 : 2204 김신우, 2202 권성헌.
프로세스와 쓰레드 프로세스와 쓰레드 및 SEH.
2017년 1학기 국가근로장학금 장학생 교육 1.
과학 탐구 토론 대회 1학년 2반 박승원 1학년 5반 권민성.
DataScience Lab. 박사과정 김희찬 (월)
Windows7 – 글꼴, 시스템, 장치관리자, 전원옵션
■ 화성공장 산학인턴 버스 노선 확인 안내 문의 전화 : 안내페이지 접속 1
– 소방공무원 공사상자 발생방지를 위한 – 소방활동 안전사고 방지대책
동기화 문제 디버깅하기 사람이 컴퓨터 보다 아름다워♪ Advanced Windows Debugging Chapter.10
Ⅶ. 명함관리 1. 초기 화면 설명 2. 명함 분류 관리 3. 명함 이동,공유,복사 4. 명함 등록, 수정 5. 상세검색 6.
5장 사진 바꾸기, 2011년 제작 및 운영제안서 측정 및 척도구성.
지구 온난화 원재환.
청소년 흡연예방 교육자료3. 한국금연운동협의회 교육부장 이 영 자.
의성어 국어어휘론 이신옥 정지연 정지형 임총인.
장애인단체 간담회 마스터 제목 스타일 편집 마스터 제목 스타일 편집 장애인 단체 간담회 마스터 부제목 스타일 편집
교육방법 및 평가방법 안내.
6장 마케팅 조사 박소현, 김중호, 박기찬.
한밭대학교 창업경영대학원 회계정보학과 장 광 식
기술 진화와 진보.
음양오행과 물리학 조 원 : 김용훈, 양범길, 박수진, 윤진희, 이경남, 박미옥, 박지선 (11조)
토지보상과 세금 2007년 7월 김 형 록.
1장 심리평가의 이해 심리검사.
이야기 치료에 대하여 <8조 학문적 글쓰기 발표> 주희록 최은지
전류는 자계에서 힘을 받는다 기계공학교육 박지훈 황인석 한만혁 이덕균.
문제행동 지도 사례를 통한 중재방법 연구.
房思琪的初恋乐园 ‘팡쓰치’로 보는 문학의 힘 정은비.
박 현 미 울산여자상업고등학교 창업포스터 만들며 포토샵과 친해지기 박 현 미 울산여자상업고등학교.
나-는 믿음으로 주 얼굴 보리니- 아침에 깰 때에 주형상에 만족하리 나주님 닮기 원하네 믿음으로 주얼굴 보리라 -
중국문학개론 한부와 겅건안문학 중어중국학과 ㅇ이진원 한부와 건안문학.
Presentation transcript:

예외 처리 3조 조일현

예외란 무엇인가? 운영체제의 SEH구현 컴파일 수준의 SEH구현

예외란 무엇인가? 정의 : 프로그래밍에서 의도되거나, 예상되어진 결과가 아니라 하드 웨어, 소프트웨어 및 사용자 등에 의해 발생하는 오류를 통칭 한다. 예외 발생 경우 - 존재 하지 않는 파일 이름 입력 - 받아들일 수 없는 연산(Divide By Zero) - 할당하지 못하는 기억 장치 접근(Access Violation) - ……

-> 특정 컴파일러의 런타임 라이브러리 try{ /* 예외 발생 예상 지역 throw ex <- 예외가 발생 } catch(처리되어야 할 예외의 종류){ /* 예외를 처리하는 코드가 존재할 위치 -> 특정 컴파일러의 런타임 라이브러리

구조화된 예외 처리 (Structured Exception handing) Windows에서는 예외 발생시 그 예외를 발생시킨 스레드 가 그에 대한 에러 처리를 할 수 있도록 도와준다. 컴파일러에 의한 SEH 운영체제의 SEH

운영체제의 SEH구현 스레드 콜백함수 호출 예외 !! 운영체제

운영체제의 SEH구현 예외 처리 콜백 함수 * EXCPT.H 에 정의 - 어떤 종류의 예외가 발생, 어디서 발생했는지….

운영체제의 SEH구현 예외와 관련된 CPU 독립적인 정보를 가지고 있다 * WINNT.H 에 정의 예외와 관련된 CPU 독립적인 정보를 가지고 있다 ExceptionCode – 운영체제가 예외에 대해 할당한 번호 ex>) STATUS_ACCESS_VIOLATION – 0xC00005 ExceptionAddress – 예외가 일어난 주소

운영체제의 SEH구현 WINNT.H 에 정의 - 해당 스레드의 레지스터 값들을 나타냄.

운영체제의 SEH구현 오류가 일어나면 운영체제는 어디를 호출해야 하는지 어떻게 알 수 있을까? -> EXCEPTION_REGISTRATION 구조체

운영체제의 SEH구현 Handler 는 _except_handler 콜백함수의 포인터 운영체제는 어디서 EXCEPTION_REGISTRATION구조체를 찾는 것일까? -> Thread Information Block(TEB 혹은 TIB)

운영체제의 SEH구현 예외가 발생하면

첫번째 멤버 Prev – 또 다른 EXCEPTION_REGISTRATION구조체를 가리키는 포인터

예외가 발생하면 운영체제는 이 리스트를 통해 예외를 처리 할 수 있는 핸들러를 가진 EXCEPTION_RESIGTRATION 를 찾는다.

UNWINDING 예외 처리 허용 예외 처리 거부 이전에 예외 처리를 거부 했으므로 핸들러를 정리 한다. (END OF LIST) 0xFFFFFFFF EXCEPTION_REGISTRATION Handler Collback Pointer prev EXCEPTION_REGISTRATION Handler Collback Pointer Except_handler() 예외 처리 허용 prev EXCEPTION_REGISTRATION Handler Collback Pointer prev Except_handler() 예외 처리 거부 FS:[0] … EXCEPTIN_REGISTRATION * 이전에 예외 처리를 거부 했으므로 핸들러를 정리 한다.

UNWINDING 운영체제는 핸들러 함수에게 정리해야 할 것들을 처리할 수 있는 기회를 줌 ex) c++클래스의 소멸자 두번 째 호출 때는 예외 처리 플래그 2 로 설정(EH_UNWINDING) 이전 예외 처리기 모두 풀기(UNWIND)를 할 수 있도록 호출된 후 실행은 예외를 처리한 핸들러가 결정한 지점 부터 재개

컴파일러 수준의 SEH 예외 처리기 __try { } /* 예외를 감시할 코드 블럭 */ __except(필터 표현식) /* 예외를 감시할 코드 블럭 */  } __except(필터 표현식) /* 예외를 처리하는 코드 블럭*/ 

컴파일러 수준의 SEH 필터 표현식 - EXCEPTION_EXECUTE_HANDLER - EXCEPTION_CONTINUE_EXECUTION - EXCEPTION_CONTINUE_SEARCH

EXCEPTION_EXECUTE_HANDLER - 예외를 처리하는 블록을 실행하도록 한다

EXCEPTION_CONTINUE_EXECUTION - 예외를 무시하고 예외가 발생한 부분부터 코드를 다시 실행. - 예외가 발생한 원인을 해결해 주지 못하면 무한루프에 빠집니다.

EXCEPTION_CONTINUE_SEARCH - 스택 풀기 방식으로 예외처리를 수행합니다.

컴파일러 수준의 SEH 종료 처리기 __try  { /* 보호되고 있는 본문 */  } __finally /* 종료 처리기*/ 

컴파일러 수준의 SEH 종료 처리부 - 예외가 발생했을 때 뿐만 아니라 프로그램의 정상적인 실행에 의해서 쓰레드가 코드 블록을 벗어났을 때에도 수행될 수 있다는 점 - 예외를 진단할 수 없다.

감사합니다. http://blog.naver.com/PostView.nhn?blogId=jjoommnn&logNo=130035624970&widgetTypeCall=true WINDOWS VIA WINDOWS 구조와 원리 예외와 SEH http://xxkim.springnote.com/pages/548434?print=1