처리중입니다. 잠시만 기다려주세요.
TTJ 코딩클래스
정규반 단과 자료실 테크 뉴스 코딩 퀴즈
테크 뉴스
Hacker News 2026.08.20 34

1979년 CP/M부터 웹 브라우저까지, 8088에 얹은 한 달의 실험

Hacker News 원문 보기

os8088은 IBM XT 계열의 8086/8088 프로세서 위에서 돌아가는 운영체제 프로젝트다. 최근 한 달 동안 여기에 여섯 가지 기능이 새로 더해졌고, 프로젝트는 이 추가분마다 별도의 페이지를 마련했다. 각 페이지에는 무엇이 들어갔는지, 실제 인텔 8086에서 돌아가는 화면 캡처, 그리고 영상이 있다면 그 영상이 함께 실린다. 흥미로운 점은 이 소개들이 '무엇을 할 수 있는가'만큼이나 '아직 무엇을 하지 못하는가'를 분명히 못박아 둔다는 것이다. 오래된 하드웨어를 다루는 작업에서 한계를 정직하게 적어 두는 태도는 그 자체로 참고할 만하다.

웹을 텍스트로 가져오는 브라우저

가장 눈에 띄는 추가는 웹 브라우저다. os8088은 이제 실제 웹 페이지를 받아와 텍스트와 표 형태로 배치한다. 연결은 이더넷 카드를 쓰거나, 옆에 세워 둔 DOS 머신과 병렬 케이블로 잇는 방식이다. 인상적인 대목은 네트워크가 느린 부분이 아니라는 점이다. 페이지를 받아오는 시간보다 텍스트로 가득 찬 창을 화면에 그리는 시간이 더 오래 걸린다. 이미지도 자바스크립트도 없고, 브라우저는 https:// 주소를 이름만 보고 거부한다. 암호화 연결을 여는 일은 아주 큰 곱셈 한 번에 해당하는데 이 프로세서로는 그 계산에만 몇 분이 걸리기 때문이다. 그래서 암호화 처리는 다른 기계에 있는 도우미 프로그램이 대신 맡는다.

실무적으로 이 설계는 제약을 우회하는 전형적인 패턴을 보여준다. 연산 부담이 큰 작업은 능력이 되는 별도 노드로 넘기고, 본체는 자기가 감당할 수 있는 일만 한다. 오늘날 저사양 IoT 기기나 엣지 장치에서 TLS 종단을 게이트웨이에 맡기는 구조와 발상이 다르지 않다.

없던 시절의 소프트웨어를 다시 불러오다

CP/M은 IBM PC가 등장하기 전 소형 컴퓨터들이 쓰던 운영체제로, 정작 PC에는 없는 프로세서 위에서 돌아갔다. os8088은 이제 그 프로세서를 에뮬레이션해 1979년의 CP/M 소프트웨어를 실행한다. 당시의 명령 처리기, 마이크로소프트 BASIC, 어셈블러와 편집기가 다른 창처럼 끌어 옮길 수 있는 창 안에서 돌아간다. 다만 소프트웨어가 보내는 색상과 굵은 글씨는 무시된다. 아래 깔린 화면이 흑백에 서체 하나뿐이기 때문이다.

워드프로세서 쪽에서는 두 가지가 더해졌다. 하나는 CWORD인데, os8088에서 처음으로 어셈블리가 아닌 C 컴파일러로 나온 프로그램이다. C는 타이핑을 아끼는 대신 메모리를 더 쓴다. 같은 작업이 어셈블리의 두세 배 공간을 차지하다 보니, CWORD는 프로그램에 주어지는 60KB에 다 들어가지 못하고 두 조각으로 나뉘어 실려 있다. 입력하는 동안 쓰는 절반은 메모리에 남고, 메뉴 뒤편의 절반은 디스크에서 대기한다. RTF 파일을 읽고 쓴다.

다른 하나는 마이크로소프트가 2014년 컴퓨터 역사박물관에 공개한 소스를 바탕으로, 윈도우용 워드 1.1a의 모습과 동작을 본떠 만든 워드프로세서다. 1990년의 메뉴와 대화상자를 그대로 갖췄고, 8x8 서체에서 굵은 글씨를 얻으려고 원본과 똑같이 글자마다 한 점 옆에 한 번 더 그린다. 마이크로소프트 코드를 다시 컴파일한 것이 아니라 어셈블리로 새로 짠 프로그램이다. 다만 85개 메뉴 항목 중 57개가 회색으로 비활성 상태다. os8088에서는 아직 인쇄가 안 되고, 공개된 소스에는 사전이 애초에 들어 있지 않았기 때문이다.

두 화면과 1982년의 이야기

나머지 두 추가는 각기 다른 결의 실험이다. 이 시대의 PC는 모노크롬 카드와 컬러 카드를 동시에 꽂을 수 있었다. 둘의 화면 메모리 주소가 달랐기 때문인데, 실제로 이를 함께 쓴 소프트웨어는 거의 없었다. os8088은 이제 하나의 데스크톱을 두 카드에 걸쳐 펼치고, 경계에 걸친 창은 양쪽 화면에 나뉘어 그려진다. 메뉴 막대와 독, 드라이브 아이콘은 주 모니터에 남고 두 번째 화면은 추가 공간일 뿐이다. 실제 헤라클레스 카드와 실제 CGA 카드가 필요하며, 확장은 딱 두 대까지다.

마지막은 Frotz로, 8086 어셈블리로 짠 Z-머신 해석기다. Z-머신은 인포콤이 1979년 고안한 가상 컴퓨터로, 게임 하나를 모든 기종에 동시에 팔기 위한 장치였다. 그 덕에 1982년의 스토리 파일이 지금도 그대로 실행된다. 미니 조크, 콜로설 케이브 어드벤처, 조크: 언디스커버드 언더그라운드, 포토피아가 각자의 플로피에서 돌아간다. 시간 제한 장면은 제한 없는 경로를 타도록 지정되고, 삽화가 있던 게임은 그림 없이 도착한다.

이 프로젝트가 주는 실무적 함의는 향수 이상이다. 60KB라는 엄격한 메모리 예산, 암호화 연산을 외부로 넘기는 분리, 하드웨어가 지원하지 않는 것을 소프트웨어로 그려내는 우회는 모두 제약 아래에서 설계를 밀어붙이는 방법의 사례다. 동시에 회색으로 남은 절반의 메뉴처럼, 무엇이 아직 되지 않는지를 숨기지 않는 기록 방식은 오래된 코드와 문서를 다루는 이들에게 참고가 된다.

이 뉴스가 유용했나요?

TTJ 코딩클래스 정규반

월급 외 수입,
코딩으로 만들 수 있습니다

17가지 수익 모델을 직접 실습하고, 1,300만원 상당의 자동화 도구와 소스코드를 받아가세요.

144+실전 강의
17개수익 모델
4.9수강생 평점
정규반 자세히 보기

"비전공 직장인인데 반년 만에 수익 파이프라인을 여러 개 만들었습니다"

실제 수강생 후기
  • 비전공자도 6개월이면 첫 수익
  • 20년 경력 개발자 직강
  • 자동화 프로그램 + 소스코드 제공

매일 AI·개발 뉴스를 받아보세요

주요 테크 뉴스를 매일 아침 이메일로 전해드립니다.

스팸 없이, 언제든 구독 취소 가능합니다.