본문 바로가기

컴퓨터공학/운영체제

파일시스템

반응형

파일시스템이 생겨난 이유는 초기에는 비트로 파일을 저장하고 했지만 그게 많아지다 보니 불편해졌고

파일 단위별(4KB)로 나눠서 관리하게 되었다. 그러나 파일이 많아질수록 사용자가 불편해졌고 이에 따라 파일시스템 방법들이 도입됬다.

 

파일을 저장하기 위해 효율적인 방법은 파일을 저장매체에 그대로 저장하게 되면 일련적인 공간이 겹치는 부분이 있다(외부적 단편화)  가능한 연속적인 공간에 파일을 저장하는것이 좋기때문에 이를 위해 블록체인(링크드 리스트처럼 연결하여 파일을 잇는 방법 허나, 해당 주소를 찾기 위해서 처음부터 찾아야 한다) , 인덱스 기법(파일에 대한 주소를 인덱스에 기록해두는 방법)이 고안됬다.

 

윈도우의 경우 : FAT, FAT32, NTFS

- 블록 위치를 FAT라는 자료구조에 기록

리눅스 : ext 

- 인덱스 기법의 inode 방식을 사용

 

시스템콜 open, write은 어떤 파일시스템을 사용할 지에 대해서 몰라도 다양한 파일시스템을 쓸 수 있도록 내부적으로 구현이 되어있다.

 

파일 추상화 기법

리눅스의 가상터미널환경 -> 가상 인터페이스 -> 파일로 저장

고로, cat tty 는 키보드 -> 가상 터미널환경 -> 가상 인터페이스 -> 파일로 저장 -> tty 가상 터미널이 파일로 저장(해당 특징을 가진 맵핑 파일)되어 cat 으로 출력해준다. 결과는 내가 입력한 글자가 동일하게 출력이 된다

 

파일 네임스페이스

리눅스는 전역 네임스페이스 형태로 구현되어 있다.

/media/floofy/dave.jpg (/ root 아래에 구성되어 있음)

윈도우는 A드라이브(A:/)

반응형

'컴퓨터공학 > 운영체제' 카테고리의 다른 글

부트  (0) 2019.11.27
inode 방식과 파일시스템  (0) 2019.11.27
세그먼트  (0) 2019.11.27
페이지교체 알고리즘  (0) 2019.11.27
페이지폴트  (0) 2019.11.27