저수준 파일 입출력(Low-level IO)파일지시자 : INT FD특징 : 빠르다, 바이트단위 입출력주요함수 : oepn,close,read,write,lseek고수준 파일 입출력 파일지시자 : FILE \*fp 특징 : 사용하기 쉬움, 버퍼단위 입출력 주요함수
기록/판독 포인터가 있는 곳으로부터, 원하는 위치로 이동가능파일 내에서 특정 위치로 직접 이동하는 행위가 탐색(Seeking)Seek(Source_file,Offset,Position)Source_file => 파일이름Offset => 파일의 시작으로부터 파일포인터가
데이터 레코드가 256바이트 요구실린더가 얼마나 필요할까?한 섹터당 512 바이트 저장하므로 2레코드 저장가능1레코드 저장하기 위한 섹터는 50000/2 = 25000섹터 한 실린더는 실린더개수 63 \* 섹터개수 16 =1008 섹터레코드 저장하기 위해 필요한 실린더
백만개의 100-바이트 레코드로 구성된 파일 백업블럭간 갭 = 0.3인치테이프밀도 : 6250필요한 테이프 길이 s = n\* (b+g)b = 데이터 블록의 물리적인 길이g = 블럭간 갭의 길이n = 데이터 블록의 수b+g = 블럭을 저장하기 위해 요구되는 인치수 블럭
데이터 전송률 : CD-ROM은 초당 70섹터, 150KB의 데이터를 읽음저장장치 용량 : 600MB이상읽기 전용 접근 : CD-ROM이 출판 매체로 사용됨.비대칭적 기록과 판독 : CD-ROM은 디스크에 한번 파일을 생성하면, 여러곳에 배포되어 수천,수백만번 접근CD
1. 스트림 파일(Stream file) 정보를 바이트(byte)의 스트림으로 표기 필드란 파일에서 가장 작은 정보의 유닛 ex) Mary, Ames, 123, Maple .. 은 하나의 필드이다. In C: In C++ : 2. 필드 구조 어떻게 필드를 유지
각 레코드가 같은 수의 바이트로 구성필드 크기나 수를 반드시 고정하는 것은 아니다.가변길이 필드를 위한 컨테이너로 사용 각 레코드가 같은 수의 필드로 구성🔽 6개의 필드가 하나의 레코드 형성각 레코드는 길이 지시자를 지님가변길이 레코드 처리에 널리 쓰임레코드의 시작주
파일 내의 특정 레코드 검색 레코드 내용을 근거로 특정한 레코드를 검색ex) "1st record", "2nd record" vs "Ames record", "Mason record"키를 레코드 주소로 변환하는 규칙필요기본 키(primary key) : 하나의 레코드를
데이터 압축 : 파일 정보를 더 작은 공간에 저장되도록 인코딩for 저장공간의 절약, 전송시간의 단축ex) 미국의 50개주 : 16비트 -> 6비트로 50개 주 표현가능50개의 주를 2진수로 나타냄 => 2^6 = 64 (6bit)장점 : 인코딩이나 디코딩 알고리즘이
최초적합 배치기법가용 리스트는 삭제된 레코드를 앞에 삽입충분히 큰 레코드 슬롯을 찾을때 까지 처음부터 레코드 탐색최적적합 배치기법가용리스트를 크기에 따라 오름차순으로 순서화삽입할 레코드를 포함할 정도로 큰 것 중 제일 작은 슬롯을 사용단점 : 외부 단편화, 추가 처리시
RRN이나 Byte offset을 알지 못할때, 현재까지 키를 사용한 접근은 순차 탐색을 의미1000개의 고정길이 레코드를 가지고 있고 키를 사용하여 오름차순으로 정렬된 파일Jane Kelly라는 레코드를 이진탐색으로 찾는 방법: 최대 10번 비교이진탐색 : 최대 └l