# DS_store의 기원 (2006)

> Clean Markdown view of GeekNews topic #15681. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=15681](https://news.hada.io/topic?id=15681)
- GeekNews Markdown: [https://news.hada.io/topic/15681.md](https://news.hada.io/topic/15681.md)
- Type: GN+
- Author: [neo](https://news.hada.io/@neo)
- Published: 2024-07-04T17:33:25+09:00
- Updated: 2024-07-04T17:33:25+09:00
- Original source: [arno.org](https://www.arno.org/on-the-origins-of-ds-store)
- Points: 3
- Comments: 1

## Topic Body

- # Apple의 DS_Store 기원

- Mac 사용자이거나 Mac에서 Windows로 파일을 전송한 적이 있다면 `.DS_Store` 파일에 익숙할 것임
- 이 이름의 기원은 1999년으로 거슬러 올라감

- 당시 필자는 Apple에서 Mac OS X Finder의 기술 리더였음
- Finder 코드 베이스는 8년이 되었고, 유용한 수명을 다했음
- 변경을 가하려면 엄청난 엔지니어링 노력이 필요했고, 변경 시 두세 개의 관련 없는 기능이 깨지곤 했음
- Mac OS X를 위해 Finder를 처음부터 다시 작성하기로 결정함

- 작업의 일부는 사용자 인터페이스와 핵심 기능, 즉 백엔드를 분리하는 것이었음
- Finder의 백엔드는 파일을 열거하고, 파일 시스템의 변경 사항을 감시하며, 메타데이터를 처리함
- 내부적으로 이 두 구성 요소는 Finder_FE와 Finder_BE로 알려졌음 (Frontend와 Backend)

- Finder 백엔드가 Finder 외부에서도 유용할 것이라는 것을 깨달음
- 이를 공개 API로 만들 계획을 세움
- 이전에 Icon Services와 Navigation Services의 명명을 담당했기 때문에 Desktop Services라는 이름을 선택함
- `.DS_Store`는 "Desktop Services Store"의 약자임
- Unix OS, 포함 Mac OS에서 보이지 않는 파일로 간주되도록 앞에 "."를 추가함

- 개인적으로는 이 이름이 그다지 좋지 않다고 생각하며, 좀 더 설명적인 이름을 선택했으면 좋았을 것이라고 생각함
- `.DS_Store` 파일의 과도한 생성으로 이어지는 버그가 아직도 수정되지 않았음
- 사용자가 보기 설정을 조정하거나 폴더에서 아이콘의 수동 위치를 설정할 때만 생성되어야 함
- 그러나 폴더를 방문하면 `.DS_Store` 파일이 생성되는 것이 보장됨

- Finder_BE, 즉 Desktop Services는 Finder 외에도 사용됨
- Navigation Services (열기/저장 대화 상자)도 이를 사용함
- 그러나 Desktop Services API는 아직 완전히 공개되지 않았음

* * *

- 2006년 10월 1일 발행
- Arno Gourdol 작성

### GN⁺의 의견

- 이 글은 Mac OS X Finder의 역사와 `.DS_Store` 파일의 기원을 설명함으로써 기술적인 배경을 제공함
- `.DS_Store` 파일의 과도한 생성 문제는 여전히 해결되지 않았으며, 이는 사용자 경험에 영향을 미칠 수 있음
- Finder 백엔드의 재사용 가능성은 Apple의 소프트웨어 설계 철학을 보여줌
- 유사한 기능을 가진 다른 파일 시스템 관리 도구로는 Windows의 NTFS와 Linux의 ext4가 있음
- 새로운 기술이나 오픈 소스를 채택할 때는 기존 시스템과의 호환성 및 유지보수 문제를 고려해야 함

## Comments



### Comment 26965

- Author: neo
- Created: 2024-07-04T17:33:26+09:00
- Points: 1

###### [Hacker News 의견](https://news.ycombinator.com/item?id=40870357) 
- Mac 파일 시스템의 "fork" 개념은 리소스와 데이터 구성 요소가 쌍으로 존재하는 것을 의미함
  - Unix에서는 메타데이터가 디렉토리 블록 inode에 있었고, tar, cpio, zip 등으로 구조적으로 표현되어야 했음
  - Unix에서 Mac 호환 파일 지원을 구현하려면 리소스 fork를 일급으로 취급해야 했음
  - 현대적인 파일 시스템은 더 큰 디렉토리 블록 구조를 가지고 데이터를 더 잘 처리할 수 있음

- .DS_Store 파일 생성을 끄는 방법이 있었지만 제거되었음
  - .DS_Store 파일이 생성되자마자 삭제하는 프로그램을 작성했음
  - [프로그램 링크](https://github.com/slmjkdbtl/dskill)

- .DS_Store 파일이 같은 폴더에 있어야 하는 이유를 이해하지 못함
  - 운영체제가 경로를 참조하는 자체 데이터베이스를 가질 수 있지 않음?

- .DS_Store 파일은 사용자가 폴더의 보기 설정을 조정하거나 아이콘의 수동 위치를 설정할 때만 생성되어야 함
  - Finder에서 폴더를 방문하면 .DS_Store 파일이 거의 항상 생성됨
  - Finder에서 폴더 창의 모양과 크기를 사용자 정의할 수 있지만, 브라우저 창에서 동일한 폴더를 열면 이러한 사용자 정의가 대부분 사라짐
  - 기본 브라우저 창 구성을 설정할 수 없기 때문에 발생하는 문제임

- 1999년에 이미 앱이 프론트엔드와 백엔드로 나뉘어 있었음
  - Finder_FE와 Finder_BE로 알려져 있었음

- 네트워크 볼륨을 탐색할 때 .DS_Store 파일 생성을 기본적으로 끄는 방법을 언급할 가치가 있음
  - 그렇지 않으면 Finder를 사용하여 탐색할 때 디렉토리 수정 타임스탬프가 업데이트됨
  - [관련 링크](https://old.reddit.com/r/MacOS/comments/lvju40/comment/gpc8ils/)

- .DS_Store 파일을 볼 때마다 Nintendo DS가 생각남

- Mac 사용자가 아닌 경우, Github에서 .tgz 파일을 다운로드할 때 .DS_Store 파일이 포함되어 있는 것이 다소 성가심
  - MacOS가 GNU tar를 사용하는 것 같음
  - 기본적으로 .DS_Store 파일을 무시하도록 수정되지 않은 것이 놀라움

- MacOS의 열렬한 팬이지만 Finder는 가장 어리석은 파일 탐색기 중 하나임

- DS Store 파일은 불행한 존재임
  - 목적이 있지만, 대부분의 사람들에게는 파일 쓰레기로 보임
  - UX 측면에서 Apple답지 않음
  - System 7.5/OSX와 Windows를 사용하면서 Mac이 불필요한 파일을 보여주지 않으려는 경향이 있었음
