두번째로 리눅스 파일 시스템의 스케일러빌러티 실험을 진행하였다. Fxmark 벤치마크 슈트를 만들어 다양한 실험을 진행 한 결과, 다음과 같은 리눅스 파일 시스템의 병목원인과 해결방안을 찾았다.
또 한 가지의 교훈으로 그 동안 운영체제 설계에서는 locality와 cache hit를 고려하여 자료구조 등을 설계하였지만, 이 점들이 매니코어 시스템에서는 오히려 성능 저하의 원인이 되고 있다.
향후 계획
상기의 문제점 분석을 통하여 다음과 같은 절차와 방법으로 스케일러블 파일 시스템을 개발하고자 한다.
- 먼저, 비휘발성 메모리를 저장시스템으로 사용하므로써 파일 시스템의 많은 기능을 제거하고 잠금 문제를 해결하는 메모리 기반 파일 시스템을 개발(메모리기반 파일 시스템 부분을 참조)
- 두번째 방법은 새로운 스케일러블 spinlock과 block synchronization primitive를 개발하여 기존 리눅스 파일 시스템에 적용하고, 다음으로 저널링 등 순차적인 기능을 스케일러블하게 개선하는 방법으로 스케일러블 파일 시스템을 개발
결과물
2021-2022, manycoreos Revision
ffd455f