1. 파일 (File)
※ 파일의 개념은 대단히 일반화된 것임
- 정보에 대한 일관된 논리적 관점을 줌
ㅇ 저장장치의 물리적 특성을 추상화시킨 논리적 저장 단위
- 보조 저장장치 관점에서, 논리적으로 구분 가능한, 가장 작은 할당 단위
ㅇ 운영체제에 의해, 파일 (추상적)과 실제 장치 (물리적)들과 사상되어짐
2. 파일의 유형/종류
ㅇ 내용에 따른 구분 (파일 유형)
- 텍스트 파일 : 라인 단위로 조직된 연속된 문자열 파일
- 소스 파일 : 명령문이 모여진 파일
- 오브젝트 파일 : 소스 파일을 기계어로 단순히 변역시킨 파일
- 실행 가능 파일 : 링커 및 로더가 메모리로 가져와 실행시킬 수 있는 기계어 파일
ㅇ 파일 구조에 따른 구분
- 순차 파일 (sequential file)
. 파일 내 정보가 순서대로 배열된 파일
. 통상, 순차 파일의 끝을 가리키는 EOF 정보 유지
. 例) PC 내 저장되는 대부분의 파일들
- 색인 파일 / 인덱스된 파일 (indexd file)
. 구성 : 인덱스 및 인덱스화된 파일
. 例) 음악 CD에서 개별 곡 파일들에 대한 인덱스 유지 등
- 해시 파일 / 직접 파일 (hash file)
3. 파일의 성격을 특징짓는 속성들
ㅇ 파일 이름 : 사람이 읽을 수 있음
ㅇ 식별자 : 파일시스템 내 파일 식별용으로 사람이 읽을 수 없는 형태
ㅇ 파일 타입 : 텍스트, 이미지, 실행 파일 등 파일 유형
ㅇ 위치 포인터 : 파일 스트림으로 접근 가능한 위치 포인터
ㅇ 크기 : 파일 크기 (통상, 바이트 수)
ㅇ 시간 : 생성,변경,접근 시간 등
ㅇ 보호 : 접근 제어 관련 정보 (읽기,쓰기,실행 가능 등)
4. 파일의 연산
ㅇ 파일 생성, 파일 쓰기, 파일 읽기, 파일 이동, 파일 삭제, 파일 절단 등
5. 파일의 처리 방식 (관점)
ㅇ [운영체제 관점 (UNIX/Linux)]
- Unix/Linux에서는, 거의 모든 것이 파일로 처리됨 ☞ Unix/Linux 파일 처리 참조
- 파일 타입(종류) : 일반 파일, 디렉토리 파일, 장치 파일, 파일 링크 등
ㅇ [C 언어 관점]
- 파일 처리 형태 : 파일 스트림 (파일 포인터)
- 파일 타입(종류) : 텍스트 파일, 바이너리 파일