Tumble Forth: 어셈블리에서 OS와 C 컴파일러까지

Tumble Forth – from assembly to OS with C compiler

웹 개발자 출신의 Virgil Dupras가 자신의 경험을 바탕으로, PC의 베어메탈에서 시작해 Forth를 만들고, Dusk OS로 전환한 후, 예제 코드를 컴파일할 수 있는 C 컴파일러를 처음부터 구축하는 과정을 단계별로 안내하는 시리즈. 현대 소프트웨어의 복잡성에 대한 비판과 함께, 로우 레벨 프로그래밍의 세계로 독자를 안내한다.

현대 소프트웨어의 복잡성이라는 심연을 혐오스럽게 바라보고, 로우 레벨 개발의 토끼굴로 떨어져 이 디스토피아를 탈출하자.
  1. fjfaase

    제가 live-bootstrap 프로젝트에서 GNU Mes 컴파일러를 대체하기 위해 개발한 C 컴파일러에서도 두 개의 스택을 사용하는 Forth 유사 언어를 사용했습니다. 하나는 매개변수와 반환값용이고, 다른 하나는 반환 주소와 지역 변수용입니다. 이 Forth 유사 언어는 어셈블리로 트랜스파일되고 여러 단계를 거쳐 ELF 파일로 만들어집니다. 대상 아키텍처는 x86, x86_64, arm64입니다. riscv64 지원 작업이 시작되었지만 현재 다른 일로 인해 보류 중입니다. 완성해 주실 분이 있다면 작은 보너스 자금이 있습니다.

  2. zovirl

    > 이 복잡성을 피하는 또 다른 방법은 자체 OS를 구축하는 것입니다.

    > 우리는 베어메탈로 가서 자체 운영체제와 자체 C 컴파일러를 만들 것입니다. 이렇게 하는 것이 더 간단합니다.

    이 문장들의 대담함이 정말 좋습니다. 그리고 '가장 간단한 버전의 ___을 구현해서 어떻게 작동하는지 배우자'는 이런 접근 방식이 마음에 듭니다.

  3. drivers99

    오, 이거 제 취향이네요. 한동안 베어메탈에서 Forth를 만들어 볼 생각을 하고 있었습니다(지난 여름에 C로 Forth 인터프리터를 만들었고, C64U에서 직접 어셈블리한 기계어로 스택 조작을 조금 테스트했습니다). 그런데 이 링크를 보기 직전에 문득 든 생각이 (우연히도) 방금 구한 8088 IBM PC용 플로피 디스크에 부트 섹터를 만드는 것이었습니다. Real Mode 부분에서만 작동할 거라는 걸 알지만 어쨌든 거기서 시작해 보는 것도 재미있을 것 같습니다. 편집: CollapseOS에 대해 알고 있었지만 이 프로젝트가 이미 있었다는 것은 몰랐습니다.

이 날의 다른 글

2026-08-21