피드로 돌아가기
왜 TMP와 TEMP 환경 변수가 둘 다 있을까? (2015)
GeekNewsGeekNews
Infrastructure

왜 TMP와 TEMP 환경 변수가 둘 다 있을까? (2015)

하위 호환성 제약으로 인한 TMP/TEMP 환경 변수 파편화 사례 분석

xguru2026년 5월 3일6intermediate

Context

초기 컴퓨팅 환경의 극심한 Resource 제약으로 인해 설정 파일 도입이 불가능했던 아키텍처적 한계 존재. MS-DOS의 3글자 파일 확장자 제한과 표준화되지 않은 환경 변수 명명 관행이 시스템 전반의 파편화를 야기함.

Technical Solution

  • RAM 32K 및 Disk 130K 수준의 초저사양 환경 대응을 위한 Binary Patch 방식의 설정 제어 구현
  • 설정 파일 저장 공간 부족 해결을 위해 하드코딩된 주소값에 기계어 코드를 직접 주입하는 런타임 최적화 수행
  • 파일 시스템 확장자 제약(Max 3 chars)에 따른 .TMP 확장자 채택 및 이를 반영한 TMP 환경 변수 생성
  • 하위 호환성(Backward Compatibility) 유지를 위한 중복 환경 변수(TMP, TEMP)의 병행 유지 구조 채택
  • XDG Base Directory Specification 기반의 설정 파일 중앙 집중화 통한 Directory Pollution 해결 지향

1. 환경 변수 및 설정 키 명명 시 전사적/산업적 표준(Standard) 우선 검토

2. 하위 호환성 유지와 시스템 현대화 사이의 Trade-off를 명확히 정의한 Migration 전략 수립

3. 설정 파일의 산재를 막기 위해 XDG와 같은 표준 경로 규격 준수 검토

4. 임시 결정이 영구적 제약이 되지 않도록 설계 문서에 결정 사유와 유효 기간 명시

원문 읽기