목록전산학/파일시스템 (3)
배고픈 개발자 이야기
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/o4bGQ/btqx82YVLMO/1ezeV8GYRhKksUekugsDW1/img.png)
Implementation Page Cache는 메모리 관리할 때 필요한건 올려놓고 필요없는건 쫒아냄 - 4Kbyte Buffer Cache 운영체제가 파일 I/O를 할 때 디스크에서 전달받은 내용을 읽어놓고 카피를 하여 전달함 - 512byte Memory-Mapped (I/O or FILE) - 프로세스 주소공간 중 일부를 파일에 Mapping을 해놓음 : 처음에만 system call 그 다음부턴 system call(운영체제 도움)없이 입출력 read(), write()는 운영체제 도움을 받아야함 I/O는 Buffer Cache를 통과해야함 자신이 CPU를 갖고 있으면서 직접 접근함 -mmap
Disk에 파일을 저장하는 3가지 방법 1.Contiguous Allocation 하나의 파일이 연속적으로 저장되는 방법 단점 : 중간중간 빈 블럭이 생길 수 있음(external fragmentation) -낭비 /파일 크기 키우는데 재약이 있음(File grow) 장점 : 빠른 I/O가 가능함(DISK 헤드가 이동하는 시간이 대부분) /한번의 SEEK/rotation로 많은 바이트 transfer Realtime file 용으로, 또는 이미 run 중이던 process의 swapping 용으로 좋음 Direct access(=random access) 가능(주소 참조할 필요없이 +offset으로 접근) Linked Allocation 블럭마다 연결되어 있음 장점 : External fragment가 ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bMi8zU/btqx81yWR53/KynSsB5K8QuhjkQ7wXmvaK/img.png)
File 일반적으로 비휘발성의 보조기억장치에 저장 운영체제는 다양한 저장 장치를 file이라는 동일한 논리적 단위로 볼 수 있게 해 줌 Operation - create, read, write, reposition (lseek), delete, open, close등 File attribute(혹은 파일의 metadata) 파일 자체의 내용이 아니라 파일을 관리하기 위한 각종 정보들 파일 이름, 유형, 저장된 위치, 파일 사이즈 접근 권한 (읽기/쓰기/실행), 시간 (생성/변경/사용), 소유자 등 File system 운영체제에서 파일을 관리하는 부분 파일 및 파일의 메타데이터, 디렉토리 정보 등을 관리 파일의 저장 방법 결정 파일 보호 등 Directory 파일의 메타데이터 중 일부를 보관하고 있는 일..