파일 시스템은 폴더의 레이아웃입니까?


56

나는 어린 시절부터 Windows를 사용해 왔으며 "Windows 파일 시스템"이라는 문구가 들리면 디렉토리 내의 디렉토리 (폴더), SYSTEM 폴더, PROGRAM FILES 폴더 등을 생각합니다. 이것이 시스템이 무엇입니까? 폴더의 레이아웃 만?

그리고 최근에 Linux를 사용하기 시작했고, 참고 문헌은 Linux 파일 시스템에서 모든 것이 루트에서 시작하여 거기서 시작한다고 말합니다. Windows와 실제로 다른 점은 무엇입니까? 리눅스 시스템과 Windows 시스템은 디렉토리 트리를 설정하는 두 가지 방법 일뿐입니다. 이것이 파일 시스템의 의미입니까?


3
en.wikipedia.org/wiki/Filesystem 을 읽으려고 했습니까 ?
choroba

2
참고로 "Linux 파일 시스템"은 없습니다. 이 책의 의미는 리눅스 디렉토리 트리입니다. 그리고, 디렉토리 트리는 폴더의 레이아웃 일뿐입니다.
user606723

2
리눅스는 드라이브 라는 개념이 없어서 모든 것이 탑재되어있다 /. Windows에서는 UNIX 스타일 마운트가 없으므로 (여기서 내가 틀렸다면 수정하십시오) 모든 것이 드라이브 주위에 정리되어 있기 때문에 그렇지 않습니다.
새로운 123456

1
@ new123456 수정 된 느낌입니다. 이 기능은 거의 사용되지 않지만 Windows는 W2k 또는 NT부터 마운트를 지원합니다.
kubanczyk

답변:


131

폴더의 레이아웃 만?

사실 너무 좋은 소리 ...

FAT32 파일 시스템을 예로 들어 봅시다. Windows XP를 설치할 수 있지만 메모리 카드에서도 사용할 수 있습니다. 메모리 카드에는 요약 할 수있는 폴더가 없습니다.

따라서 ... 운영 체제 제품군의 디렉토리 레이아웃을 파일 시스템과 혼동하지 마십시오.

이것이 파일 시스템의 의미입니까?

아니요. 디렉토리 구조를 작동시키는 기본 비트 및 바이트를 나타냅니다.

기본 비트와 바이트? FAT32 보여줘!

FAT32 의 모양을 살펴 보겠습니다 .

  • 볼륨 ID 및 예약 된 섹터와 같은 처음에는 일부 헤더 섹터
  • 두 개의 파일 할당 테이블을 통해 파일 위치를 파악할 수 있습니다.
  • 모든 디렉토리 및 파일 데이터를 포함하는 클러스터
  • 우리가 사용할 수없는 아주 작은 미사용 공간.

FAT 테이블은 이와 같은 많은 항목으로 구성되어 있으므로 디렉토리 또는 파일이 클러스터 공간에서 저장되는 위치와 일부 속성 및 크기를 결정할 수 있습니다.

디렉토리 항목은 디렉토리 / 파일 항목 목록을 가리 킵니다.

클러스터 공간에서 이제 클러스터를 이동하여 필요한 데이터를 찾을 수 있습니다. 클러스터에는 기본적으로 다음 조각이있는 데이터 및 정보가 포함됩니다.

여기에 이미지 설명을 입력하십시오

다른 파일 시스템이 다릅니 까? NTFS를 보여주세요!

차이점을 알 수 있도록 이미지를 보여 드리겠습니다. 나머지는 독자에게는 숙제입니다. 자세한 내용은 이 블로그 아카이브 나 Google 에서 확인할 수 있습니다 .

주요 아이디어는 NTFS가보다 강력하고 효율적인 FAT32보다 크게 개선되었다는 것입니다. 비트 맵을 사용하여 조각화를 방지하여 사용되지 않은 공간에 대해 더 잘 알고 있습니다. 등등...

http://thinkdifferent.typepad.com/photos/uncategorized/04ntfsfilesystem.png

Linux의 파일 시스템은 어떻습니까? ext2 / 3 보여주세요!

아이디어는 ext2 / ext3가 수퍼 블록과 inode를 사용한다는 것입니다. 이를 통해 소프트 및 하드 링크, 파일 인 디렉토리, 여러 이름을 가진 파일 등이 가능합니다. 주요 요점은 파일 시스템이 더 메타 같은 작업을 수행 할 수 있도록 추상화하는 것입니다 ...

http://thinkdifferent.typepad.com/photos/uncategorized/03extfilesystem.png


@Shadok : 나중에 나중 섹션을 개선 할 수 있습니다. 요즘 꽤 바쁩니다. 감사합니다.
Tamara Wijsman

2
내가 할 수 있다면 나는 이것을 +2 할 것이다. 이제 더 많은 문서와 사양이 더 이상 보이지 않습니다!?
greatwolf

아마 당신은 ;-)이 @TomWijsman에 대한 블로그 게시물 작성해야
이보 Flipse

@IvoFlipse : A "데이터 저장 : 어떻게 작동합니까?" 시리즈가 가능할 수도 있습니다 . 여기 다른 대답이 있습니다. 빅 & $ # 사진은 말보다 더 많은 말을 ... :)
타마라 Wijsman

확실히, 좋은 생각처럼 들리 네요
Ivo Flipse

14

적어도 파일 시스템과 디렉토리 트리에있어서 리눅스와 Windows의 가장 큰 차이점은 리눅스에서 "모든 것이 파일"이며 모든 것이 단일 루트에서 나온다는 것입니다. 이것은 BSD, OS X, Solaris 등과 같은 거의 모든 유닉스 파생 OS에도 적용되지만 "Linux"를 일반적이라고 말할 것입니다.

그러나 실제로 이것이 무엇을 의미합니까?

Windows는 파일 시스템에 여러 개의 루트를 허용합니다. 이것을 드라이브 문자로 이해 C: D: E:합니다. 각각에는 루트 ( \)와 그로부터 내려 오는 나무가 있습니다. 최신 버전의 Windows에서는 볼륨 (파티션으로 간주 할 것)을 기존의 빈 폴더에 마운트 할 수있는 볼륨 마운트 포인트와 같은 기능을 사용할 수 있습니다. 따라서 D:광학 (CD / DVD / BR) 드라이브의 루트를 나타내는 \ 대신에 대신 마운트 할 수 있습니다 C:\Optical. 이것은 리눅스가하는 것과 더 비슷합니다. Linux에서 Object Manager 가 사용하고 관리하는 것과 비슷한 Windows의 모든 것에 대한 기본 단일 루트 객체 네임 스페이스가 있지만 대부분의 사용자는 기본적으로 커널 용도이기 때문에 거의 참조하지 않습니다.

Linux에는 단일 루트가 있습니다 : /. 모든 것이 그것의 후손이므로 반드시 하드 드라이브를 나타낼 필요는 없습니다. 하드 드라이브, 광학 드라이브, 메모리 카드, 네트워크 공유, 프린터, 스캐너, CPU, RAM, 프로세스 등 모든 것이이 단일 네임 스페이스 내부에 표시되며 표준 파일 관리 API를 사용하여 모든 프로세스에서 액세스 할 수 있습니다. 충분한 수준의 액세스. 읽거나 쓸 수 있다고해서 리눅스의 하드 드라이브에있는 파일이라는 의미는 아닙니다. 예를 들어, 장치는 일반적으로에 마운트되어 /dev있기 때문에 장치에 액세스한다는 것은 장치와 대화하고 있다는 것을 의미합니다. 사운드 카드 나 스캐너 또는 카메라 등일 수 있습니다 . 장치 파일 이라고 합니다 . Procfs일반적으로 마운트 /proc되고 실행중인 모든 프로세스에 대해 "디렉토리" 가있는 특수한 "파일 시스템"입니다 . 각 디렉토리의 파일에는 해당 프로세스를 호출하는 데 사용되는 명령 줄, 메모리 맵, 열린 파일 등이 있습니다. Sysfs 는 또 다른 파일입니다. /sys실행중인 커널 객체에 대한 풍부한 정보를 제공하는 데 사용되는 특수 파일 시스템 (에 마운트 됨 )을 사용하고 특정 파일에 쓰기 만하면 실행중인 커널을 미세 조정할 수 있습니다.


2
파일 시스템을 사용자 관점에서 디렉토리 레이아웃과 혼동하기 쉽습니다. 파일 시스템이라는 용어는 실제로 파일 시스템의 내부에 관한 것입니다. 예. FAT 및 NTFS뿐만 아니라 EXT2와 EXT3 차이 차이 ...
타마 Wijsman

4
@Tom : OP는 실제로 디스크에 비트가 배치되는 방식이 아니라 Linux와 Windows 간의 다양한 객체 계층 구조의 차이점에 대해 묻는 것 같습니다. udev, procfs, sysfs, tmpfs 등은 디스크에 내용이 포함되어 있지 않더라도 Linux에있는 ext2 또는 NTFS만큼 파일 시스템입니다.
afrazier

"파일 시스템은 폴더의 레이아웃 일 뿐입니 까?"라는 그의 질문의 일부일뿐입니다. 질문에 대답하는 방식은 더 혼란스럽고 해당 질문을 다루지 않습니다. 따라서 독자들에게 통지를 남겼습니다.
Tamara Wijsman

Linux에서 "모든 것이 파일"인 경우 +1 이것이 Linux와 Windows의 가장 큰 차이점입니다.
Rabarberski

3

파일 시스템은 디렉토리 트리가 설정되는 방법뿐만 아니라이 정보가 미디어에서 어떻게 인코딩되는지에 관한 것입니다. Linux에는 ext3, xfs, raiserfs 등 여러 파일 시스템이 있습니다.


3

파일 시스템을 파일과 폴더를 저장하기위한 다른 형식으로 생각할 수 있습니다. MS Word와 PDF가 문서를 저장하는 형식과 MP3와 WAV가 오디오를 저장하는 형식과 다소 비슷합니다.

몇 개의 파일과 폴더가 주어지면 파일 시스템은 파일을 디스크에 저장하여 다시 읽을 수있는 형식과 코드입니다.

모든 비디오 플레이어가 모든 비디오 형식을 재생할 수있는 것처럼 모든 운영 체제가 모든 파일 시스템을 읽을 수있는 것은 아닙니다. 예를 들어 Linux에서 파일을 ext3 형식의 USB 스틱에 저장하면 Windows는 ext3 파일 시스템을 처리하는 방법을 모르기 때문에 파일을 읽을 수 없습니다.

일반적인 파일 시스템은 다음과 같습니다.

  • FAT 및 NTFS (Windows, NTFS는 최신 Windows 버전에서 표준 임)
  • ext3 및 ext4 (Linux)
  • HFS 플러스 (OS X)
  • ISO 9660 및 UDF (CD, DVD 및 Blu-Ray)

파일 시스템 비교에 대해서는 Wikipedia를 참조하십시오 .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.