본문/내용
2.1 관련된 기존 연구
본 논문에서 사용된 “Pentium Secrets`이 처음으로 소개된 것은 Margo Seltzer의 논문이다[6]. 이 논문에서는 ”Pentium Secrets`를 이용해서 Pentium 프로세서 기반으로 수행되는 PC OS간의 성능을 분석했다.
Larry McVoy의 논문에서는 강력한 이식성을 갖는 성능 측정 도구를 이용해서 다양한 시스템의 성능을 분석했다[3]. lmbench는 여러 운영체제에서 많이 사용되는 응용 프로그램 인터페이스를 이용해서 만들어 졌기 때문에 다양한 시스템에서 성능 측정이 가능하다.
Sharon의 논문에서는 동적으로 생성된 실행 추적(trace)을 이용해서 Windows NT의 성능을 평가했다[7]. 기존의 벤치마크 실험으로는 분석하기 어려운 부분들을 모의실험을 통해 해낼 수 있었다는 점에서 의미가 있다.
2.2 Windows NT의 구조
그림 1: Windows NT의 구조
Windows NT의 구조적 특징은 다음과 같다. 첫째, Windows NT는 클라이언트/서버의 구조를 갖는다. 앞서 살펴본 바와 같이 Windows NT는 여러 플랫폼의 응용 프로그램을 지원하기 위해서 각 플랫폼에 해당하는 보호된 서브시스템(protected subsystem)을 두고 있다. 이 서브시스템은 응용 프로그램과 클라이언트/서버의 구조를 갖는다. 각 서브시스템은 응용 프로그램으로부터 서비스 요청을 받아서 이를 Windows NT의 고유 시스템 서비스로 바꾸어 준다. 이 시스템 서비스는 Windows NT의 여러 관리자(manager)들과 커널을 통해서 수행되고 그 결과가 서브시스템에 넘겨진다. 각 서브시스템은 이 결과를 각 플랫폼에 적합한 형태로 바꾸어 준다. 즉, Windows NT는 자신의 고유한 시스템 서비스를 가진 채로, 각 서브시스템을 이용해서 다양한 플랫폼의 응용 프로그램을 지원할 수 있다. 둘째, Windows NT는 객체 모델을 채택했다.