386BSD
386BSD는 William F. Jolitz와 Lynne Jolitz가 BSD를 Intel 80386 기반 IBM PC 호환 기종으로 이식하여 공개한 자유 재배포 유닉스 계열 운영체제이다. Jolix라고도 불리며, 특히 후기의 Release 1.0 계열을 가리키는 명칭으로 사용되었다.
| 분류 | 유닉스 계열 운영체제, BSD, 자유 소프트웨어 |
|---|---|
| 개발자 | William F. Jolitz, Lynne Jolitz |
| 기반 | BSD Net/2 |
| 최초 공개 | 1992년 3월 17일 |
| 주요 공개판 | Release 0.0, Release 0.1, Release 1.0 |
| 후기 명칭 | Jolix |
| 구현 언어 | C, 어셈블리어 |
| 커널 구조 | 모놀리식 커널, 후기 공개판의 모듈형 구조 |
| 대상 플랫폼 | Intel 80386, IBM PC 호환 기종 |
| 라이선스 | BSD 계열 허가 라이선스 |
| 개발 상태 | 역사적 프로젝트 |
| 주요 파생 운영체제 | NetBSD, FreeBSD |
386BSD는 William F. Jolitz와 Lynne Jolitz가 BSD를 Intel 80386 기반 IBM PC 호환 기종으로 이식하여 공개한 자유 재배포 유닉스 계열 운영체제이다. Jolix라고도 불리며, 특히 후기의 Release 1.0 계열을 가리키는 명칭으로 사용되었다.
386BSD는 캘리포니아 대학교 버클리의 Computer Systems Research Group이 공개한 Net/2 소스에서 출발했다. Net/2는 AT&T의 독점 코드를 상당 부분 제거한 BSD 소스 배포판이었지만, 부팅 가능한 완전한 운영체제를 구성하는 데 필요한 커널 코드 일부가 빠져 있었다. William Jolitz는 누락된 부분을 구현하고 Intel 80386의 보호 모드, 페이징과 하드웨어 구조에 맞추어 BSD를 이식하였다.[1]
개발 과정은 1989년에 시작되었으며, 두 개발자는 1991년부터 《Dr. Dobb's Journal》에 연재한 Porting UNIX to the 386을 통해 프로세서 초기화, 가상 메모리, 프로세스 전환, 시스템 호출, 파일 시스템과 장치 입출력 등 이식 과정을 단계적으로 설명했다. 1992년 3월 17일 공개된 Release 0.0은 소스와 설치 파일을 여러 장의 플로피 디스크로 배포했으며, 뒤이어 나온 Release 0.1은 설치 가능성과 하드웨어 지원을 개선하여 더 널리 사용되었다.[2]
386BSD는 저렴한 개인용 컴퓨터에서 소스가 공개된 BSD 환경을 실행하고 운영체제 자체를 다시 빌드할 수 있게 했다는 점에서 의미가 있다. 당시 상용 워크스테이션이나 UNIX 라이선스 없이도 BSD 커널과 사용자 공간을 연구하고 수정할 수 있는 환경을 제공했으며, 인터넷을 통한 운영체제 소스 배포와 공동 개발이 확대되는 데 중요한 기반이 되었다.
Release 0.1 이후에는 여러 사용자가 오류 수정과 하드웨어 지원을 모은 비공식 386BSD Patchkit을 관리했다. 그러나 패치가 빠르게 증가한 데 비해 공식 소스에 변경 사항을 통합하는 과정은 원활하지 않았고, 프로젝트 운영과 개발 방향을 둘러싼 차이도 나타났다. 이러한 상황에서 1993년 NetBSD와 FreeBSD가 각각 별도의 프로젝트로 형성되었다. NetBSD는 코드 품질과 여러 하드웨어 아키텍처로의 이식성을 중심 목표로 삼았고, FreeBSD는 초기에는 Intel 80386 기반 PC에서의 완성도와 배포에 집중했다.[3][4]
386BSD 자체는 NetBSD나 FreeBSD처럼 장기간 지속되는 대규모 공동 개발 운영체제로 성장하지 않았지만, Net/2를 실제 PC에서 사용할 수 있는 운영체제로 연결하고 초기 자유 BSD 공동체가 형성되는 계기를 마련했다. 따라서 386BSD는 독립된 운영체제로서의 사용 기간보다 현대 오픈 소스 BSD 계통의 직접적인 출발점이자 1990년대 초 개인용 컴퓨터용 자유 유닉스 계열 운영체제의 발전을 촉진한 프로젝트로 평가된다.