VAX

위키백과, 우리 모두의 백과사전.

VAX-11/780.

VAX디지털 이큅먼트 코퍼레이션(DEC)이 1970년대 중반에 개발한 명령어 집합 아키텍처(ISA)이다.

명칭[편집]

"VAX"는 가상 주소 확장(virtual address extension)의 준말인데, 그 이유는 VAX가 오래된 16비트 PDP-11의 32비트 확장으로 간주되었고 (프라임 컴퓨터 이후) 가상 메모리를 처음 채택하여 더 넓은 주소 공간을 관리하였기 때문이다. 초기 버전의 VAX 프로세서는 호환성 모드를 구현하여 PDP-11 명령의 다수를 에뮬레이트하였기에 실제로 이러한 호환성을 강조하여 VAX-11로 불렸다.

운영 체제[편집]

네이티브 VAX 운영 체제는 디지털의 VAX/VMS였다. (1991년~1992년 초반에 OpenVMS로 이름이 바뀜. 당시 알파에 포팅되어 POSIX 표준에 맞게 수정되어 X/Open 컨소시엄의 XPG4와 호환된다고 하여 그렇게 정해짐.)[1]

역사[편집]

1977년 10월 25일에 디지털 이큅먼트 코퍼레이션(DEC)가 선보인 VAX-11/780이 이 아키텍처를 구현한 영향력 있는 컴퓨터들 가운데 최초의 것이다.[2] 카네기 멜런 대학교C. 고든 벨의 박사 과정의 학생인 빌 스트레커(Bill Strecker)가 이 아키텍처를 맡았다.[3] 가격, 성능 수준, 용량이 각기 다른 수많은 모델들이 차후에 만들어졌다. VAX 슈퍼미니컴퓨터는 1980년대 초에 매우 인기를 끌었다.

프로세서 구조[편집]

MicroVAX 3600 (왼쪽). 이와 함께 있는 프린터 (오른쪽)

가상 메모리 맵[편집]

DEC VAX 레지스터
31 . . . 23 . . . 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 (bit position)
General registers
R0 Register 0
R1 Register 1
R2 Register 2
R3 Register 3
R4 Register 4
R5 Register 5
R6 Register 6
R7 Register 7
R8 Register 8
R9 Register 9
R10 Register 10
R11 Register 11
R12 / AP Register 12 / Argument Pointer
R13 / FP Register 13 / Frame Pointer
R14 / SP Register 14 / Stack Pointer
R15 / PC Register 15 / Program Counter
Status flags
N Z V C Condition Code Register

VAX 가상 메모리는 4개의 부분으로 나뉘는데, 크기는 각각 1 기가바이트(어드레싱 문맥에 따라 230 바이트)이다:

구분 주소 범위
P0 0x00000000 - 0x3fffffff
P1 0x40000000 - 0x7fffffff
S0 0x80000000 - 0xbfffffff
S1 0xc0000000 - 0xffffffff

VMS의 경우, 사용자 프로세스 공간을 위해 P0을, 프로세스 스택을 위해 P1을, 운영 체제를 위해 S0을 사용하였으며 S1은 예비로 남겨두었다.

권한 모드[편집]

VAX는 4개의 하드웨어 구현 권한 모드가 있다.

번호 모드 VMS 사용 참고
0 커널 OS 커널 최고 수준의 권한 단계
1 실행 파일 시스템
2 수퍼바이저 셸 (DCL)
3 사용자 일반 프로그램 최저 수준의 권한 단계

프로세서 상태 레지스터[편집]

CM TP MBZ FD IS cmod pmod MBZ IPL MBZ DV FU IV T N Z V C
31 30 29 27 26 25 23 21 20 15 7 6 5 4 3 2 1 0
비트 의미
31 PDP-11 호환 모드
30 트레이스 보류
29:28 MBZ (0이어야 함)
27 첫 부분 완료 (인터럽트 명령)
26 인터럽트 스택
25:24 현재의 권한 모드
23:22 이전 권한 모드
21 MBZ (0이어야 함)
20:16 IPL (인터럽트 우선 순위 수준)
15:8 MBZ (0이어야 함)
7 10진 오버플로 트랩 활성화
6 부동소수점 언더플로 트랩 활성화
5 정수 오버플로 트랩 활성화
4 트레이스
3 부정
2 영(0)
1 오버플로
0 캐리

각주[편집]

  1. Rainville, Jim; Howard, Karen, 편집. (1997). “VAX/VMS at 20”. Digital Equipment Corporation. 2009년 7월 6일에 원본 문서에서 보존된 문서. 2009년 7월 27일에 확인함. 
  2. “VAX 11/780, The First VAX System (October 1977)”. 2019년 10월 3일에 원본 문서에서 보존된 문서. 2016년 8월 20일에 확인함. 
  3. Slater, Robert (1987). 《Portraits in Silicon》. MIT Press. 213쪽. ISBN 978-0-262-69131-4. 

외부 링크[편집]