Unix/Linux 파일 처리

(2019-09-09)

Linux 파일 처리, Unix 파일 처리, Unix/Linux 파일 종류

1. [Unix/Linux]  파일 처리UNIX에서는 거의 모든 것이 파일로 처리됨
     - 즉, `디스크 파일, 직렬 포트, 프린터` 등과 `파일`을 사용할 때 똑같은 방법을 사용 가능
        . 파일,디텍토리,디바이스(디스크,터미널,사운드카드,...) 등을 파일로 취급할 수 있으므로,
        . 파일 처리 시스템호출울 이용하여 조작 가능 함
     - 다양한 파일시스템들을 하나의 파일시스템 처럼 사용하는 가상파일시스템 구조를 사용 가능
        . 가상파일시스템 : 모든 파일시스템을 하나의 파일시스템 처럼 보이게 하는 기술

  ※ ☞ 파일 입출력 참조
     - 모든 것에 대해, 열려있는 파일을 통해, 유사한 형태의 입출력이 이루어짐
        . 즉, `디스크,직렬 포트,프린터 등`과 `파일`을 사용할 때 똑같은 방법을 사용
     - 파일 I/O를 위한 버퍼 캐시
        . 상이한 속도를 갖는 장치의 읽기쓰기를 즉시 해당 장치에서 수행않고, 반드시 버퍼를 통함

  ㅇ 파일 입출력 구분
     - 저수준 파일처리(Low Level File Handling)  : 파일 기술자(File Descriptor)
     - 고수준 파일처리(High Level File Handling) : 파일 포인터(File Pointer)

  ㅇ 파일 끝(EOF) 구분
     - 프로그램파일 끝 도달 여부를 결정하도록, 파일 크기 카운터를 유지관리


2. [Unix/Linux]  파일 구분 (파일 타입)

  ㅇ 일반 파일 (regular file) : 어떤 형태로든 자료를 담고있는 일반적인 파일
     - 데이터 파일, 이미지 파일 뿐만 아니라, 실행 파일도 이에 포함됨
     - 실행 파일 
        . 보통, ELF(Executable and Linkable Format) 라는 특정 형식을 갖음 (executable)
        . 구성 : 메타데이터,코드,데이터 등
        . 한편, 동적 재배치되는 (shared object) 등도 실행 파일로 간주됨

  ㅇ 디렉토리 파일  : 파일로의 포인터 및 파일 관련 정보를 갖는 파일
     - UNIX 운영체제 커널 만이 디렉토리 파일에 쓸 수 있는 권한 있음

  ㅇ 파일 링크
     - 심볼릭 링크, 하드 링크

  ㅇ 특수 파일      
     - 장치 파일(블록 특수 파일, 문자 특수 파일), 파이프, 소켓 등

  ※ 유닉스/리눅스는, 시스템 정보, 장치 정보 등도 모두 파일로써 관리 함

  ※ ls 명령어에서, 다음과 같이 파일 구분 가능
     -  - : 일반 파일
     -  b : 블록 디바이스 파일
     -  c : 문자 디바이스 파일
     -  d : 디렉토리
     -  l : 심볼릭 링크
     -  p : FIFO (Named Pipe,네임드 파이프)
     -  s : 소켓 통신 파일
     -  ? : 기타 파일 타입


[UNIX 파일시스템] 1. UNIX 파일시스템 2. 슈퍼 블록 3. Inode 4. 디렉토리 5. 파일 처리 방식 6. 파일 링크
[파일]

 
        최근수정     요약목록     참고문헌