게시판홈 / 유닉스 / 리눅스에서는 정말 디스크 조각 모음이 필요없는가?새글쓰기 답글쓰기
 이동: 1 | 2 | 3
저자 리눅스에서는 정말 디스크 조각 모음이 필요없는가?
like_a_dust (844)
Vista(74)
2005-11-02
먼산

  게시일: 2006-08-22 18:29||||
웹에서 놀다가 왜 리눅스에선 조각 모음이 필요 없는가? 이라는 글을 보았습니다.

음.. 이해될 듯 하면서 이해가 안되는 부분도 있더군요.
그러니까 파일시스템의 유연함 덕분에 단편화를 최소화시킬 수는 있지만, 아예 단편화가 안되는 것은 아니다. 라는 정도의 글인듯 합니다만..

여튼 그래서 모자란 실력이지만 구글링을 통해 자료를 모아 정리를 해봤습니다.
제 블로그에 쓰려고 정리를 했는데, 음 아무래도 못쓰겠군요.
한번 보시고 잘못된 부분들 지적 좀 부탁드리겠습니다.



리눅스에서는 정말 디스크 조각 모음이 필요없는가?

글에 앞서 저는 리눅스를 (제대로) 써본적도 없고, NTFS, FAT, EXT2, EXT3 에 대해서도 잘 모릅니다. 하지만 마이커피님께서 번역하신 "왜 리눅스에선 조각 모음이 필요 없는가?" 라는 글을 읽다보니 나름의 지식에 반하는 사실을 발견하고 의문이 들어 구글링해 본 결과를 정리해보았습니다.
따라서 본 글은 제 의견이 아닌, 순수하게(?) 다른 분들의 의견을 제 주관에 의해 무단으로 정리한 글입니다. -_-;


결론부터 말하자면 "리눅스에서도 디스크 단편화가 발생되며, 따라서 (언젠가는) 조각모음이 필요하다. 단, 리눅스를 윈도우즈(not server) 처럼 사용할 경우에 그러하며, 윈도우즈와 동일한 환경과 용도로 사용할 경우에도 윈도우즈보다는 단편화 속도가 다소 느린 편이다. 하지만 현재로서는 리눅스를 윈도우즈와 동일한 환경(게임 머신 -_-;, 멀티미디어 전용 등)으로 사용할만한 환경이 갖추어져 있지 않다. 따라서 개인 사용자들에겐 무의미한 이야기이다." 입니다.

전제 1. NTFS 는 EXT2 의 장점을 수용한 발전된 파일 시스템이다.
전제 2. NTFS 는 FAT 과의 호환성 유지를 위해 많은 부분을 할애했기 때문에 태생적 한계를 가진다.
전제 3. EXT3 는 NTFS 와 마찬가지로 EXT2 보다는 발전적인 파일 시스템이지만 EXT2 와의 호환성 유지를 위한 태생적 한계를 가진다.
전제 4. 리눅스에서 주로 사용되는 파일 시스템은 EXT2 와 EXT3 이며, 이 둘간의 극명한 차이는 없다.(EXT2가 가지는 비동기 방식의 단점을 보완하기 위해 저널링이 추가된 것이 EXT3 이다.)
전제 5. 윈도우즈에서 주로 사용되는 파일 시스템은 FAT32 와 NTFS 이며, 이 둘은 클러스터의 차이(8배)로 인해 단편화가 진행되는 속도의 차가 크다.(물론 다른 이유도 있겠지만..)
전제 6. 앞의 전제들을 이유로 리눅스에서 사용되는 파일시스템과 윈도우즈에서 사용되는 파일시스템의 디스크 단편화에 대한 상대적인 비교는 EXT2(or EXT3) VS NTFS 가 되어야 한다.


이제 정리..

정리 1. 모든 파일 시스템에서 단편화는 막을 수 없다. 단, 단편화의 진행속도의 차이가 있을 뿐이다.

정리 2. 두 운영체제(리눅스, 윈도우즈)의 사용목적이 서버(멀티유저모드)일 경우 리눅스의 EXT2/EXT3 가 윈도우즈의 NTFS 에 비해 단편화가 천천히 진행된다.
- 이유 1 : 리눅스의 EXT2/EXT3는 여유있는 Preallocation 을 통해 파일들이 저장되는 공간에 유동성을 확보함으로써 큰폭으로 변하지 않는 파일의 단편화를 방지한다.
- 이유 2 : 리눅스는 윈도우즈에 비해 자체적으로 필요한 메모리의 양이 적고, 따라서 캐쉬로 사용할 수 있는 메모리의 양이 상대적으로 많다. 따라서 운영체제에 의한 Disk I/O 가 상대적으로 적다.
- 아유 3 : 윈도우즈용 응용프로그램은 리눅스용 운영프로그램에 비해 상대적으로 Disk I/O 가 많다.(하지만 이것은 동일한 기능을 가진 다수의 프로그램들 간의 비교에 의한 것이 아닌, 한 개인의 주관적 의견임. 개인적으로 리눅스에서 X-window 로 게임이라든가 CG 등 Disk I/O 가 많이 일어날 수밖에 없는 프로그램을 돌린다면 어차피 똑같을 것이라고 봄.)
- 이유 4 : 보통 통으로 -_-; 쓰는 윈도우즈에 비해 리눅스의 경우 스왑 파티션을 따로 쓰는 등 파티션 관리를 통해 단편화의 가능성을 최대한으로 줄인다. 단, 리눅스도 통으로 쓰거나 윈도우즈에서 파티션을 잘 나눠서 쓰면 비슷할 것으로 보인다.

정리 3. 두 운영체제(리눅스, 윈도우즈)의 사용목적이 데스크탑(싱글유저모드)일 경우 정리2와 비슷한 이유로 단편화 측면에서는 여전히 리눅스의 EXT2/EXT3 가, 사용자의 관리 편리성 면에서는 윈도우즈(파일 시스템이 아닌)가 유리할 것으로 보인다. 하지만 EXT2(EXT3) 가 작은 파일들을 다루는데에 중점을 둔 파일 시스템이라면, NTFS 는 딱히 어디(파일 크기)에 중점을 둔 시스템이 아니기 때문에(전혀 근거없음 ; 큰 파일을 다루는 경우 NTFS 에 비해 EXT2/EXT3 가 불리할 수 있으며, 그로 인해 단편화가 더 심화될 수도 있을 것이다.

정리 4. NTFS 도 EXT2/EXT3 에 비해서는 디스크 단편화에 약하지만 FAT 에 비해서는 강한 편이나, NTFS의 핵심인 MFT 자체가 단편화될 경우에는 오히려 더 심각한 문제를 발생시킬 수도 있다.



참고 문서
- www.itworld.com/Comp/3380/nls_unixfrag040929/index.html
- en.opensuse.org/SDB:EXT2_Fragmentation
- blog.empas.com/mycoffee/15302774
- www.linuxlab.co.kr/docs/01-05-3.htm
- qaos.com/article.php?sid=662
- 리눅스 설치하기
- kldp.org/node/25134
- kldp.org/node/56168



p.s. 신기하게도 구글에서 검색을 할 경우 키워드만으로 검색하는 것보다 문장으로 검색하는 경우에 더 근접한 결과를 얻는 경우가 많습니다.(물론 영어로 해야합니다. 한글 문장으로 치면 @.@)
그래서 대충 문장을 만들어 쳤더니.. 제가 읽었던 글(번역문)의 원문이 나오는군요. ;;;
게다가 주루룩 그 글의 링크들만.. 꽤 유명한 글이었나 봅니다. ;;
원문 : Why doesn't Linux need defragmenting?

[ 메시지수정: like_a_dust 일시: 2006-08-22 19:26 ]
kschief (32)
DOS(2)
2004-11-02


  게시일: 2006-08-22 21:33|||
윈도우즈, 유닉스, 리룩스 등 우리가 주로 사용하는 운영체제는 개인용이라고 할 수 있습니다.
유닉스, 리룩스는 그래도 기업용이 아니냐고 하겠지만 큰 기업의 메인 프레임에서는 사용할 수 없을 정도로 취약합니다.
큰 기업에서 사용하는 거의 모든 운영체제에는 디스크 조각모음이 없습니다.
24시간, 365일 쉬지않고 운용되고 있는 디스크에 조각모음을 할 수도 없습니다.
윈도우즈, 유닉스, 리룩스 보다 엄청 보안에 강하고 정교한 운영체제는 많습니다.
그런 운영체제에 비하면 윈도우즈, 유닉스, 리룩스 등은 어린애들 장난감 정도입니다.
개인이 사용하는 운영체제이다 보니 많으며 많이 알려 졌을뿐입니다.
like_a_dust (844)
Vista(74)
2005-11-02
먼산

  게시일: 2006-08-23 08:33||||
인용

글쓴이: jvm 날짜:2006-08-23 01:02
그러던 중 오늘 쇼킹한 내용을 여기에서 읽게 되는군요.
kschief님께서 말씀하시는 내용을 어디까지 받아들여야 할 지 잘 모르겠습니다.
솔직히 유닉스가 개인용이란 소리도 처음 들었습니다.
대부분의 큰 기업의 메인 프레임에서 사용하는 것이 유닉스가 아니었단 말입니까?
제가 아는 바로는 근래에 비용절감을 위해 메인 프레임에 리눅스가 도입되기도 하는 것 같은데요.
보충설명을 좀 부탁드리고 싶습니다.

저도 이번 건(?)으로 여러 문서를 뒤지면서 정말 다양한 운영체제가 있다라는 것을 알게 되었습니다.
다만, 그 기반은 대부분이 유닉스 라고 해도 무방할 정도인듯 합니다. 유닉스 연대표(?)를 보면 절대 한눈에는 볼 수 없을 정도로 뻗어나간 수많은 가지들처럼 정말 다양한 운영체제들.. 제 눈에는 (대형 서버용으로) 거론되는 (듣도 보지도 못한 희안하고 긴 이름을 가진) OS 들도 대부분은 그 가지 중 하나거나 충분히 파생되었다고 말할 수 있을만큼의 참조 내지는 수용을 한 듯 해보였습니다.

kschief님께서 말씀하신 것은 그런 것들이 아니었을까 조심스레 추측해봅니다.
그리고 개인용으로 예를 드신 것은 보통의 일반인(직접 대형 서버관리를 하지 않는 IT 관련 업계 종사자 포함)들이 접할 수 있는 상용(혹은 오픈소스) 배포판+a 정도의 유닉스와 리눅스를 이야기하심이 아닌가 싶습니다. ^^

[ 메시지수정: like_a_dust 일시: 2006-08-23 08:36 ]
kschief (32)
DOS(2)
2004-11-02


  게시일: 2006-08-23 16:32|||
ㅎㅎ 당황스러워 하는군요!

유닉스를 개인용이라고 한건 좀 무리인것같죠? 그러나 유닉스의 태생을 아신다면 개인용이라 생각이 드실것입니다. 사실 요즘은 거의 기업과 개인이 같이 쓰지만요. 이렇게 말하니 그럼 윈도우즈는 기업에서 사용하지 않는가? 라는... 그렇다면 개인용 운영체제는 없는가? 기업용과 개인용을 구분할 수 없군요!

IBM, 유니백, 휴지쯔 등의 말은 많이 들었겠죠!?
아직도 대기업의 메인 프레임은 IBM 인 경우가 많습니다.
그렇다고 그 대기업에 유닉스는 없는가? 아니 있습니다. 웹 관련 등등등 주변 여러 일을 처리하는 컴은 유닉스, 윈도우즈 등이 있습니다.

카드사, VAN사, 은행의 FEP/BP, 증권사의 FEP/BP 등의 경우 대부분 유닉스나 윈도우즈는 아닙니다.

어떤 목적에 특화된 운영체제는 많이 있습니다. 그것을 보지 못했다고 없는것은 아닙니다.
제가 아는 것만해도 우리나라에서 사용하는 컴의 운영체제는 10개는 넘습니다.
kschief (32)
DOS(2)
2004-11-02


  게시일: 2006-08-23 16:48|||
한 은행의 예를 들어보겠습니다.

은행의 주 일을하는 메인프레임: IBM
타은행, 카드사, 증권사, 금결원 등등 대외접속 FEP 시스템: Tandom, Stratus
각 지점의 BP: IBM(유닉스 계열)
웹 서버: 유닉스
은행 창구 직원용 단말: 윈도우즈
은행 사무실 직원용 단말: 특화된 컴

대충 이렇습니다.
artech (7903)
Manager(523)
2001-12-24
충주

  게시일: 2006-08-23 17:43|||||
인용
글쓴이: kschief 날짜:2006-08-23 16:32
ㅎㅎ 당황스러워 하는군요!

저도 당황 스럽군요.

인용
유닉스를 개인용이라고 한건 좀 무리인것같죠? 그러나 유닉스의 태생을 아신다면 개인용이라 생각이 드실것입니다.

태생을 알면 개인용이라는 얘기는 절대 하지 못합니다. 유닉스는 1960~70년대에 개발된 OS로 메인프레임에 사용할 목적으로 개발된 OS입니다. 아울러 PC의 개념이 1982년에 정립됐으므로 유닉스는 태생부터 개인용이 아닌 기업용으로 개발된 OS입니다.

인용
사실 요즘은 거의 기업과 개인이 같이 쓰지만요. 이렇게 말하니 그럼 윈도우즈는 기업에서 사용하지 않는가? 라는... 그렇다면 개인용 운영체제는 없는가? 기업용과 개인용을 구분할 수 없군요!

유닉스를 개인이 사용하는 경우는 많지 않습니다. 국내에서 많이 사용되는 리눅스 정도를 개인이 사용하긴 하지만 역시 개인보다는 기업에서 많이 사용합니다. 아울러 유닉스의 킬러 어플리케이션 중 개인에게 적당한 것은 거의 없습니다.

인용
아직도 대기업의 메인 프레임은 IBM 인 경우가 많습니다.

예전에는 메인프레임과 웍스테이션을 구분했지만 요즘은 그 격차가 거의 없습니다. 과거의 유물처럼 메인프레임을 사용하는 경우도 있지만 성능이 요즘에 나오는 웍스테이션보다 뛰어난 것은 아닙니다.

인용
카드사, VAN사, 은행의 FEP/BP, 증권사의 FEP/BP 등의 경우 대부분 유닉스나 윈도우즈는 아닙니다.

그럼 뭐죠? 고장 방지, 트랜젝션 때문에 일부 시스템에 T/TOS를 사용하기도 하지만 전체 시스템의 구성은 유닉스로 되어 있습니다. 아울러 현재 범용으로 사용되고 있는 OS는 크게 유닉스 계열과 윈도우즈 계열로 나누어집니다. 그외에도 상당히 많은 OS가 있지만 특수한 목적(RTOS처럼)으로 사용되거나 개인적인 취향(MinuetOS처럼)으로 개발된 것이 대부분이며 범용으로 사용되는 OS는 모두 유닉스 계열이 아니면 윈도우즈 계열입니다.

[ 메시지수정: artech 일시: 2006-08-23 17:52 ]
서명 추천팁: 시스템 정보 보기 오류 메시지 복사하기 자주묻는질문
한마디: 당신의 한마디가 세상을 아름답게 만듭니다.
두마디: 좋은 질문이 좋은 답변을 만듭니다.
마지막: DoA is not DNA.
artech (7903)
Manager(523)
2001-12-24
충주

  게시일: 2006-08-23 17:50|||||
인용
글쓴이: kschief 날짜:2006-08-23 16:48
한 은행의 예를 들어보겠습니다.

은행의 주 일을하는 메인프레임: IBM

IBM은 제조사의 이름일 뿐 OS는 아닙니다. IBM 메인프레임에 탑재되는 OS는 AIX로 유닉스 계열입니다.

인용
타은행, 카드사, 증권사, 금결원 등등 대외접속 FEP 시스템: Tandom, Stratus

Tandom 도 OS가 아닙니다. Tandom에서 사용된 OS는 Tandom Transaction Operating System(T/TOS)입니다.

인용
각 지점의 BP: IBM(유닉스 계열)

이 부분도 조금 이해가 가지 않는 부분입니다. IBM은 제조사인데 제조사가 유닉스 계열이라는 것이 이해되지 않는군요.

전반적으로 OS와 기계 이름, 제조사 이름을 혼동하고 계신 것 같습니다.
서명 추천팁: 시스템 정보 보기 오류 메시지 복사하기 자주묻는질문
한마디: 당신의 한마디가 세상을 아름답게 만듭니다.
두마디: 좋은 질문이 좋은 답변을 만듭니다.
마지막: DoA is not DNA.
like_a_dust (844)
Vista(74)
2005-11-02
먼산

  게시일: 2006-08-23 19:15||||
에고고 글의 논점이 ㅠ.ㅠ
하긴 저도 맨 처음 KLDP 에 있는 리눅스와 윈도우즈 논쟁(원 글은 리눅스에서 가장 많이 쓰이는 EXT2/EXT3 의 단편화에 대한 것이었음에도 불구하고!!)에 관한 글들을 먼저 읽어서인지 정리하는 것 자체가 NTFS 와 비교하는 쪽으로 흘러가버린 느낌이 있지만요.

진정들하시고 ;; 문외한인 제가 잠깐 껴들자면(진정하라 해놓고선 ;

앞서서도 말씀드렸지만, 이번 일을 통해 정말 많은 운영체제(이곳에서 언급하시지 않은)들과 많은 파일시스템, 그리고 그들간의 간략한 차이점들을 많이 보게 되었습니다.(알게 되진 못했습니다. 원하는 내용도 아니었고, 이해도 불가했기에 ;

그리고 마지막(?)으로 내린 결론은..
이런 비교(EXT2 vs NTFS)따위 무의미하다. 라는 것이었습니다. 제가 보았던 글이나 그 글의 원문에서처럼 가장 기본적인 레벨에서의 비교도 가능하겠지만, 현실에서 그것이 어떤 장단점을 갖을지는 아무도 모르니까요. 또한 원래 사용 목적이나 현재 주로 사용되고 있는 용도도 많이 다르고요.
그리고 대부분의 리눅스 vs 윈도우즈 논쟁에서(그 중 또 대부분은 리눅스 진영에서)윈도우즈나 NTFS 는 아주 쓰레기 취급을 받지만, 현재 가장 널리 쓰이고 돈많은 MS가 정말 고급인력들 데려다가 허접 쓰레기 -_-; 를 만들어 팔리도 만무하고요. 결국 제대로 된 비교는 리눅스 서버 vs 윈도우즈 서버 정도밖에 없는듯한데 이런 비교는 없더군요.(리눅스가 현재의 윈도우즈처럼 완전한(?) 데탑으로 쓰이기엔 아직 장벽이 너무 많은게 사실이니 이 부분은 비교불가)


여튼 제발 ㅠ.ㅠ 제 원글을 보시고 잘못된 점이 있다면 지적 좀 해주세요. ;;;;
종종 논쟁의 대상이 되는 문제인듯 한데, 그저 논쟁이 아닌 그나마 조금쯤은 정리된 글이 있으면 좋지 않을까요?(다른 분이 제대로 정리해주시면 더욱 감사하겠지만요 ;

[ 메시지수정: like_a_dust 일시: 2006-08-23 19:17 ]
artech (7903)
Manager(523)
2001-12-24
충주

  게시일: 2006-08-23 19:50|||||
틀린 얘기는 아닙니다. NTFS나 EXT3나 모두 조각 모음이 필요합니다. 그러나 중요한 것은 두 개의 파일 시스템 모두 하드 디스크의 공간이 충분하면 조각나지 않습니다. 그러나 하드 디스크가 꽉찬 상태에서 파일을 쓰면 두 개의 파일 시스템 모두 조각납니다.

여기까지는 두 개의 시스템이 같습니다. 그런데 문제는 NTFS는 이 경우 MFT까지 조각나며, 이 것이 시스템 성능에 심각한 악 영향을 미칩니다. 이러한 문제점 때문에 MS도 초기에는 NTFS는 조각 모음이 필요없다고 주장하다가 결국 조각 모음 프로그램을 번들로 끼워 준 것입니다.

결론적으로 두 개의 파일 시스템 모두 하드 디스크의 여유 공간이 없는 경우 조각이 나지만 이러한 단편화는 EXT3 보다는 NTFS에 더 심각한 악영향을 끼친다는 점입니다.

두 번째는 사용환경입니다. 리눅스를 주 OS로 사용하지 않기 때문에 확답할 수 없지만 XP를 사용하다보면 정말 드라이브 용량이 모자를 정도로 영화나 다른 것을 내려받고 지우는 경우가 아주 많습니다. 이런 작업이 많으면 많을 수록 더 조각나기 쉽습니다. 따라서 NTFS의 성능 자체가 EXT3에 비해 아주 열악해서 조각 모음을 자주 해주어야 하는 것이 아니라 사용환경 때문에 조각 모음을 자주해야 한다고 봅니다.

like_a_dust님 글에 답글을 달고, 다음 답글을 단 것으로 알았는데,,, 아니었군요.
서명 추천팁: 시스템 정보 보기 오류 메시지 복사하기 자주묻는질문
한마디: 당신의 한마디가 세상을 아름답게 만듭니다.
두마디: 좋은 질문이 좋은 답변을 만듭니다.
마지막: DoA is not DNA.
다음글: Live CD관련 질문입니다. (1)12151cissper2006-09-14
이전글: 리눅스에서 동영상을 보기 위한 최소사양은? (6)14092rogon32006-05-12

 이동: 1 | 2 | 3
새글쓰기 답글쓰기
이동:

세상사는 이야기

  • 오타도 즐거운 안드로 >
  • 최고의 OCR 어플, Text >
  • 누구나 할 수 있는 순 >
  • 듀오백 컨텐츠 허브, >
  • 초딩도 할 수 있는 아 >
  • 듀오백 2.0, 최적의 등 >
  • 의자이기를 포기(?)한 >
  • 야후의 꼴통 짓과 플리 >
  • 책을 테이크 아웃? 크 >
  • 전자책(크레마 터치), >


  • RSS 구독 (익명 | 회원 | 강좌 | 포럼)
    (C) 1996 ~ 2014 QAOS.com All rights reserved.