Research UNIX V5

Research UNIX V5는 Bell Labs의 Research UNIX 제5판으로 Fifth Edition UNIX라고도 한다. 1974년 6월에 정리된 제5판 매뉴얼과 실행 환경을 기준으로 하는 별도의 연구용 UNIX 판본이며, Research UNIX V4에서 도입된 C 기반...

정식 명칭Fifth Edition UNIX
분류Research UNIX의 독립 연구용 판본
개발 기관Bell Labs
판본 기준1974년 6월
대상 컴퓨터DEC PDP-11/40 등
기술적 전신Research UNIX V4
커널 구현C 중심, 일부 어셈블리어
파일 시스템초기 UNIX 계층형 파일 시스템
개발 도구C 컴파일러·PDP-11 어셈블러
셸Bourne shell 이전 UNIX 셸
외부 사용선별된 외부 교육·연구 기관
사료TUHS Unix Tree: V5
상태역사적 Research UNIX 판본

Research UNIX V5는 Bell Labs의 Research UNIX 제5판으로 Fifth Edition UNIX라고도 한다. 1974년 6월에 정리된 제5판 매뉴얼과 실행 환경을 기준으로 하는 별도의 연구용 UNIX 판본이며, Research UNIX V4에서 도입된 C 기반 커널 구현을 계승하면서 시스템 명령과 문서 처리 프로그램·장치 지원을 확장했다. 1975년 제6판처럼 외부에 광범위하게 보급되기 전의 판본이지만 일부 교육 기관에 라이선스가 제공되는 등 UNIX가 Bell Labs 바깥으로 확산되던 시기의 자료라는 점에서 중요하다.[1][2]

제5판은 PDP-11/40과 유사한 18비트 주소 지정 하드웨어를 주요 대상으로 했다. TUHS 기록에서는 커널 이미지 크기를 약 26KB로 설명한다. 이 수치는 해당 시대의 작은 운영체제 이미지와 제한된 메모리·스토리지 환경을 보여주지만, 현대 커널의 동적 드라이버와 사용자 공간 구성까지 합한 메모리 사용량과 동일한 기준으로 비교할 수 없다. 인터럽트와 문맥 전환·장치 접근에는 여전히 CPU에 종속된 어셈블리어 구현이 필요했으며, C 기반 구조라고 하여 모든 기계로 즉시 이식할 수 있었던 것은 아니다.[3]

초기 UNIX의 프로세스·파일 디스크립터와 파일 시스템 모델은 V5에서도 유지됐다. 셸을 통한 명령 실행과 ed 편집기, 파일 복사·검색, 조판·문서 처리, C 프로그램의 빌드 작업을 수행할 수 있었다. dd·diff·eqn·find·pwd·tee 등 명령이 이 판본의 역사에서 주요 새 도구로 언급되지만, 이들의 동작·옵션을 오늘날의 GNU·BSD 명령 구현과 동일하게 보아서는 안 된다. 특히 Bourne shell과 현대 ISO C 표준 라이브러리는 이 판본에 이미 완성돼 있던 소프트웨어가 아니었다.

V4 이후 커널을 C로 기술하게 되면서 개발자는 프로세스 처리와 파일 입출력·기본 커널 함수의 로직을 하드웨어별 어셈블리어보다 높은 수준에서 수정할 수 있었다. V5는 후속 버전을 위한 전환 기간에 해당하며 커널 구현의 보수·개량과 사용자 명령의 추가가 이어졌다. 시스템 전체를 오늘날의 재사용 가능한 크로스 플랫폼 라이브러리와 같은 구조로 볼 수 없지만, 커널과 사용자 도구를 동일한 시스템에서 개발하는 UNIX의 기술적 성숙을 보여준다.[4]

1970년대 UNIX를 외부 연구 기관으로 제공하는 것은 현대의 오픈 소스 프로젝트와 같지 않았다. 당시 UNIX는 AT&T의 라이선스 계약 아래 소스가 공급됐고, 일부 대학이나 연구소는 계약에 따라 내부적으로 소프트웨어를 검토·수정할 수 있었다. 이와 달리 오늘날 TUHS에서 특정 파일과 보존 매체의 내용을 열람할 수 있다는 사실은 1974년 당시 모든 사용자가 재배포와 수정에 대한 무제한 권한을 가졌다는 뜻이 아니다. TUHS가 공개한 보존 스냅샷과 원래 배포 판본을 대조할 필요도 있다.

V5 다음에는 Research UNIX V6가 1975년 5월 등장했다. V6은 UNIX 소스의 대학·연구기관 보급이 크게 확대되고 별도 이식·확장 작업이 활발해진 판본으로, 이후 1BSD의 초기 추가 소프트웨어 배포에도 영향을 주었다. V5를 V4의 다른 표기나 V6의 단순 서비스 팩으로 합치는 것은 서로 다른 공식 매뉴얼 판본과 개발 시기를 잃게 만들기 때문에 독립 문서로 보존하는 것이 적절하다.[5]

제5판의 개발과 배포

PDP-11 하드웨어와 커널

사용자 명령과 프로그램

C 기반 개발 환경

원본 소스와 매뉴얼

제6판으로의 발전

관련 문서

  1. TUHS Unix Tree: Fifth Edition ↩
  2. TUHS Research Edition 목록 ↩
  3. TUHS: Fifth Edition 설계와 PDP-11 메모리 ↩
  4. Dennis Ritchie: The Evolution of the Unix Time-sharing System ↩
  5. TUHS: 1974~1975년 판본 ↩