플래시 시 할당

Allocate-on-flush

Allocate-on-flush(지연 할당이라고도 함)는 HFS+,[1] XFS, Reiser4, ZFS, Btrfsext4에서 [2]구현된 파일 시스템 기능입니다.또한 이 기능은 버클리 UFS가 "블록 재할당"이라고 부르는 오래된 기술과 매우 유사합니다.

보류 중인 쓰기를 유지하기 위해 블록을 할당해야 하는 경우 추가된 데이터의 디스크 공간이 빈 공간 카운터에서 차감되지만 빈 공간 비트맵에서는 실제로 할당되지 않습니다.대신 추가된 데이터는 메모리 압력, 커널이 더티 버퍼를 플러시하기로 결정했을 때 또는 응용 프로그램이 Unix 동기 시스템 호출을 실행할 때 저장소로 플러시될 때까지 메모리에 유지됩니다.

이렇게 하면 할당량을 더 큰 실행으로 일괄 처리하는 효과가 있습니다.이러한 지연된 처리는 CPU 사용량을 줄이고 디스크 조각화(특히 느리게 증가하는 파일의 경우)를 줄이는 경향이 있습니다.또한 동시에 여러 파일이 증가하는 경우에도 할당을 연속적으로 유지하는 데 도움이 됩니다.ZFS에서와 같이 Copy on Write와 함께 사용하면 느린 랜덤 쓰기를 빠른 순차 [3]쓰기로 변환할 수 있습니다.

레퍼런스

  1. ^ "About Disk Optimization with Mac OS X". Support.Apple.com. Apple. 2010-02-10. Retrieved 2016-12-13.
  2. ^ LWN.net Weekly Edition for 2008년7월 17일 2.6.27: 발매 예정 (파트 1)
  3. ^ Cao, Mingming (3 August 2005). "Why delayed allocation is needed". ext2.sourceforge.net. Retrieved 26 September 2021.