운영체제 단편화제거 모의실험
- 최초 등록일
- 2014.10.06
- 최종 저작일
- 2013.10
- 12페이지/ MS 워드
- 가격 1,000원
목차
Ⅰ. 디자인
1. 가상 공간
2. 데이터 생성
3. 데이터 쓰기
4. 단편화 제거
5. 전체 과정
Ⅱ. 소스코드
1. 시간 경과, 확률 체크
2. 데이터 쓰기
3, 단편화 제거
Ⅲ. 실험 진행
1. 단편화 제거 실행 x, 클러스터 개수 1개 섹터, 큰 파일 비율 변화에 따른 단편화 비율 체크
2. 단편화 제거 실행 x, 클러스터 개수 2개 섹터, 큰 파일 비율 변화에 따른 단편화 비율과 낭비되는 공간 체크
3. 단편화 제거 실행 x, 클러스터 개수 4개 섹터, 큰 파일 비율 변화에 따른 단편화 비율과 낭비되는 공간 체크
4. 단편화 제거 실행 x, 클러스터 개수 8개 섹터, 큰 파일 비율 변화에 따른 단편화 비율과 낭비되는 공간 체크
5. 단편화 제거 실행, 단편화 제거 주기에 따른 수행시간 변화.
Ⅳ. 실험 결과
본문내용
1. 가상 공간
가상의 HDD에 대해서 설계했습니다. 한 개의 섹터는 512MB로 확대하여 정했으며 네모 칸 하나로 나타납니다. 총 용량은500GB입니다. 클러스터 크기는 1개, 2개, 4개, 8개로 조절할 수 있습니다.
연속적인 데이터가 차지하고 있는 공간은 초록색으로 한 클러스터 안에서 데이터가 채우지 못한 공간은 노란색으로, 단편화된 데이터가 있는 공간은 빨간색으로, 단편화된 데이터가 채우지 못한 클러스터의 공간은 파란색으로 표시합니다.
2. 데이터 생성
데이터는 섹터단위의 용량으로 채워지며 한 개의 데이터가 차지하는 최소 공간은 1 클러스터 입니다.
데이터는 HDD의 사용일에 따라 하루에 파일 한 개가 써질 확률이 100%에서 점차 감소하고 하루 동안 한 개가 지워질 확률은 점차 늘어납니다.
데이터가 써질 때 큰 데이터의 비율을 정할 수 있습니다. 초기값은 50%로 큰 데이터의 경우 용량이 10개~19개 섹터까지, 작은 데이터의 경우 1개~5개 섹터까지 생성됩니다.
3. 데이터 쓰기
데이터가 써질 때, 최초적합 방법을 사용합니다. 데이터가 들어가기에 충분한 연속적인 공간이 HDD 내에 남아있을 경우 데이터는 단편화되어 저장되지 않고 첫 번째로 나타나는 충분한 공간에 채워집니다.
데이터가 모두 들어가기에 충분한 연속적인 공간이 없을 경우 맨 앞 주소부터 차례대로 단편화되어 저장됩니다.
4. 단편화 제거
단편화 제거는 가상의 일수를 기준으로 주기를 정할 수 있습니다. 정해진 시간이 되면 단편화 제거 알고리즘을 수행하여 HDD의 공간을 정리합니다.
알고리즘은 일단 단편화된 데이터를 모두 모은 후, 빈 공간을 정리하는 방식으로 했습니다.
단편화 주기를 0으로 하면 단편화 제거를 수행하지 않으며 시뮬레이터가 끝난 후 단편화된 비율을 확인 할 수 있습니다.
5. 전체 과정
단편화 제거 주기, 큰 파일 비율, 클러스터 크기를 설정하고 시작하면 데이터를 쓰기 시작합니다. 10ms에 1일이 경과됩니다. 1일에 한 번씩 써질 확률, 지워질 확률이 체크되고 단편화 제거 주기에 따라 단편화 제거 알고리즘이 수행됩니다. 3년(365*3일)이 지나면 실험을 종료합니다.
참고 자료
없음