2015/02/04

    [파일입출력] 4. 동기식 입출력

    입출력을 동기화하는 것은 분명 중요합니다. 하지만, 그 문제를 너무 확대 해석하고 크게 신경 쓸 필요는 없습니다. 요즘의 운영체제들은 버퍼를 통한 지연된 쓰기 작업을 구현하고 있습니다. 그렇기에 앞에 write() 시스템 콜 이용 시 주의해야 될 사항들을 그렇게 신경쓰지 않으셔도 됩니다. 하지만, 개발을 하다보면 개발자가 직접 데이터가 디스크에 기록되는 시점을 제어하고 싶을 때가 있습니다. 이런 상황에 맞춘 몇몇의 시스템 콜을 확인해 보겠습니다. 1. fsync() 시스템 콜과 fdatasync() 시스템 콜 첫 번째는 fsync() 시스템 콜과 fdatasync() 시스템 콜입니다. 먼저, fsync() 시스템 콜에 대해 알아보겠습니다. #include int fsync (int fd) 입력인자 int..