• Tidak ada hasil yang ditemukan

3.3.3 우회 기능이 확장된 스택 처리

3.3.3.1 포함 조건

를   의 시간

t

의 희생 블록이라고 하자

.

그리고

는

∅이다

는 말은 새로운 블록이 우회되어 희생 블록이 없다는 의미로 정 의 한다

.

포함 특성이

t-1

시간까지 만족되며

,

크기

C+1

캐시에서 적중 실패가 일어났을 때

, t

에서 포함 특성을 만족시키기 위한 필요충분조건은 다음의 포함 조건과 같다

.

정의

3.5 (

포함 조건

, Inclusion Condition)

시간

t

에서의 포함 조건은 다

음과 같다

.

1)

가 ∅이 아니면

,

 는 이거나    이다

. 2)

가 ∅이면

,

 는 ∅이거나    이다

. □

증명

3.1 (

포함 조건과 포함 특성은 필요충분조건이다

)

포함 특성을 위한 필요조건

: “

포함 특성을 만족하면 포함 조건을 만족 한다

.”

를 증명하기 위해 결론을 부정하는 귀류법을 사용한다

.

1)

가 ∅이 아닐 경우

,

 가 도 아니고    도 아니면

,

 는 또 다른 블록

z

가 되거나 ∅이다

.

 가

z

라면

,

z

는 에는 있지만  에는 없게 되며

,

따라서 포함 특성을 위반 한다

.

 가 ∅이면 새로운 블록이 포함 특성을 위반한다

.

2)

가 ∅인 경우

,

 가 ∅도 아니고    도 아니라 면

,

 는 또 다른 블록

z

가 된다

. z

는 에는 있지만  

에는 없게 되며

,

따라서 포함 특성을 위반한다

.

따라서 포함 특성을 만족시키면 포함 조건을 만족한다

.

포함 특성을 위한 충분조건

: “

포함 조건을 만족하면 포함 특성을 만족한 다

를 증명한다

.

포함 조건을 만족하면 의 모든 내용이  에 존재하기 때문 에 포함 특성을 만족한다

.

그러므로 포함 조건과 포함 특성은 필요충분조건이다

. □

위 포함 조건을 쉽게 이해하기 위해 예를 들어본다

.

(ㄱ) 초기 상태 (ㄴ) ‘b’가 희생 블록인 경우 (ㄷ) ‘a’가 희생 블록인 경우 그림 3.4 블록 ‘e'를 삽입하는 예제 1

그림

3.4

(ㄱ)

은 초기 상태에서 블록

‘e'

가 적중 실패로 캐시에 삽입되 기 직전의 상태를 보여준다

.

여기에 크기

3

인 캐시의 희생 블록은

'b'

로 결정되어 있다

. (ㄴ)

(ㄷ)

은 크기

4

인 캐시에서

‘b'

'a'

가 각각 희생 블

록이 되어 교체된 경우를 보여준다

.

두 가지 경우 모두 포함 특성을 만족 시킨다

.

하지만 크기

4

인 캐시가 블록

’e'

를 우회하면

‘b'

, ‘d'

'c'

를 희 생 시키면

’d'

'c'

가 크기

3

캐시에는 존재하는데

,

크기

4

인 캐시에는 존 재하지 않게 되면서 포함 특성을 위반한다

.

따라서 포함 조건의 첫 번째 조건

크기

C

인 캐시의 희생 블록이

z

일 경우

,

크기

C+1

인 캐시의 희생 블록은

z

이거나 크기가

C+1

로 커지면서 추가되는 원소

S(C+1)

이다

.”

를 알 수 있다

.

(ㄱ) 초기 상태 (ㄴ) ‘a’가 희생 블록인 경우 (ㄷ) 우회한 경우

그림 3.5 블록 ‘e'를 삽입하는 예제 2

그림

3.5

(ㄱ)

은 초기 상태에서 블록

‘e'

가 적중 실패로 캐시에 삽입되 기 직전의 상태를 보여준다

.

여기에 크기

3

인 캐시는 희생 블록을 우회하

였다

. (ㄴ)

(ㄷ)

은 크기

4

인 캐시에서

‘a'

가 희생 블록이 되거나

'e'

가 우

회되어 나갔을 경우를 보여준다

.

두 경우 모두 포함 특성을 만족시킨다

.

블록

’d', 'c', 'b'

중에 하나가 희생 블록이 되면

,

그 블록이 크기

3

캐시에

는 존재하는데

,

크기

4

인 캐시에는 존재하지 않게 되면서 포함 특성을 위 반한다

.

따라서 포함 조건의 두 번째 조건

크기가

C

인 캐시가 새로운 블 록을 우회시켰을 경우

,

크기가

C+1

인 캐시는 크기가

C+1

로 커지면서 추 가된 블록을 희생시키거나 우회 시켜야 한다

.”

를 알 수 있다

.

한 가지 포함 조건으로부터 알 수 있는 사실은

, “

크기

C

인 캐시가 새로 운 블록을 우회하지 않고 어느 한 블록을 희생한다면 크기

C+1

인 캐시도

어느 한 블록을 희생한다

.”

는 사실이다

.

크기

C

인 캐시가 새로운 블록을 들여왔다면 크기

C+1

인 캐시도 새로운 블록을 들여와야 포함 특성을 만 족시킨다

.

반대로 말하면 크기

1

부터 특정 크기까지의 캐시는 우회하며 특정 크기를 초과하는 캐시는 모두 어느 한 블록을 희생한다

.