제1판 UNIX 저장소에 오신 것을 환영합니다. 여기서는 PDP-11 시뮬레이터에서 1e UNIX를 실행할 수 있는 커널 소스 코드와 사용자 영역 바이너리를 찾을 수 있습니다.
별도로 명시하지 않는 한 파일 및 디렉터리 이름은 이 저장소를 참조합니다.
Simh 시뮬레이터의 소스 코드는 여기(http://simh.trailing-edge.com/)에서 다운로드하세요. 버전 3.8-0 이상을 다운로드했는지 확인하세요. 이전 버전이 작동하려면 패치가 필요합니다.
Simh의 짐을 어딘가에 풀어보세요. Simh의 최상위 수준에 BIN/ 디렉터리를 만듭니다. BIN/ 디렉토리에 pdp11 시뮬레이터를 만들려면 pdp11을 만드십시오. BIN/pdp11 실행 파일을 tools/ 디렉터리에 복사합니다.
1판 최상위 디렉토리로 돌아갑니다. 메이크를 해보세요. 이렇게 하면 여러 가지 작업이 수행됩니다. tools/mkfs, tools/ml 및 tools/apout/apout을 빌드합니다. 이러한 도구는 1e UNIX 및 커널용 파일 시스템을 구축하는 데 필요합니다. 필요한 패치가 포함된 커널 소스를 생성하고, 커널을 조립하고, 이미지 디렉터리에 설치되는 부팅 가능한 Simh 메모리 이미지를 구축합니다. 마지막으로 make는 rf0.dsk, rk0.dsk 및 테이프 이미지를 빌드하고 이를 이미지 디렉토리에 설치합니다. 또한 "make clean"을 수행하여 image/ 및 build/ 디렉터리를 정리할 수도 있습니다. "make clobber"는 Images/, build/ 및 tools/ 디렉터리를 정리합니다.
pdp11 시뮬레이터를 시작하는 ./simh.cfg를 실행하십시오. 당신은 이것을보아야합니다 :
PDP-11 시뮬레이터 V3.8-0 ./simh2.cfg> #!tools/pdp11 알 수 없는 명령 CR 비활성화 XQ RF 비활성화: 메모리에 파일 버퍼링 TC0: 16b 형식, 메모리에 파일 버퍼링 포트 5555(소켓 7)에서 수신 대기
로그인 메시지가 표시됩니다: 프롬프트:
루트 다음에 를 입력합니다. # 프롬프트가 표시됩니다.
ls -l 명령을 입력하세요. 다음과 같은 내용이 표시됩니다.
총 6 43 sdrwr- 2 루트 620 1월 1일 00:00:00 bin 42 sdrwr- 2 루트 250 1월 1일 00:00:00 dev 104 sdrwr- 2 루트 110 1월 1일 00:00:00 등 114 sdrwr- 2 루트 50 1월 1일 00:00:00 tmp 41 sdrwr- 7 루트 70 1월 1일 00:00:00 usr
디렉토리를 변경하려면 chdir(예: chdir /usr)을 사용하십시오. 설치된 유일한 편집기는 `ed'입니다. Notes/edtut.txt에서 ed 튜토리얼을 찾을 수 있습니다.
여러 번 로그인하려면 로컬 호스트 포트 5555에 텔넷으로 접속하세요. 시스템은 8번의 원격 로그인을 허용하도록 구성되어 있습니다.
시스템을 종료하려면 ctrl-E를 입력하여 시뮬레이터를 중지하고 q를 입력하여 종료합니다. 종료하기 전에 시스템을 동기화할 필요가 없습니다.
1판 UNIX 매뉴얼은 https://www.bell-labs.com/usr/dmr/www/1stEdman.html 및 http://www.bitsavers.org/pdf/bellLabs/unix/UNIX_ProgrammersManual_Nov71에서 확인할 수 있습니다. .pdf
제1판 UNIX의 내부에 대한 일부 문서는 다음에서 볼 수 있습니다: http://www.bitsavers.org/pdf/bellLabs/unix/PreliminaryUnixImplementationDocument_Jun72.pdf
PDP-11/20 아키텍처 및 주변 장치에 대한 자세한 내용은 http://www.bitsavers.org/pdf/dec/pdp11/handbooks/PDP1120_Handbook_1972.pdf http://www.bitsavers.org/pdf/에서 확인할 수 있습니다. dec/pdp11/handbooks/PDP11_PeripheralsHbk_1972.pdf
2nd Edition UNIX의 C 컴파일러도 설치되어 작동하지만 언어는 C의 매우 초기 방언입니다. 이 시점에서 언어에 대한 가장 가까운 참조는 다음과 같지만 아마도 2년은 너무 늦었습니다: https:/ /www.bell-labs.com/usr/dmr/www/cman74.pdf
사용자 영역 바이너리는 UNIX 1판과 2판 사이의 어느 시점에서 나왔습니다. 2e 매뉴얼도 유용할 수 있습니다: http://www.bitsavers.org/pdf/bellLabs/unix/Unix_2nd_Edition_Manual_Jun72.pdf
페이지/ - PreliminaryUnixImplementation 문서에서 OCR된 페이지 재구축/ - OCR된 페이지에서 asm 파일로 재구축된 커널 소스 패치/ - 재구축할 패치/ 커널을 실행하기 위한 파일 fs/ - 사용자 영역 바이너리 및 파일, 다음 작업에 사용됨 make rf0.dsk 및 rk0.dsk src/ - 사용자 영역의 소스 코드: 사용 가능한 도구가 많지 않습니다./ - 커널 및 파일 시스템을 빌드하기 위한 도구 및 스크립트 build/ - 빌드 영역: 패치된 커널 파일, 패치된 파일 시스템 이미지/ - Simh 시뮬레이터에서 사용할 최종 디스크 및 테이프 이미지 misc/ - 기타. 파일(예: KE11A 지원용 Simh 패치 참고 사항/ - 1e UNIX를 다시 실행하기 위해 수행한 작업에 대한 참고 사항 diffs/ - 페이지/*와 James Markevitch가 수행한 고품질 OCR 간의 차이점. 머리글과 바닥글이 포함됩니다.