close(시스템콜)
close (system call)
닫기 시스템 호출은 커널에 의해 파일 기술자를 닫기 위해 사용되는 시스템 호출입니다.대부분의 파일 시스템에서 프로그램은 클로즈 시스템 호출을 사용하여 파일 시스템 내의 파일에 대한 액세스를 종료합니다.이것에 의해, 파일 버퍼가 플러시 해, 파일 메타데이터가 갱신됩니다.이러한 메타데이터는 데이터에 파일 기술자를 포함할 수 있습니다.또한 파일과 관련된 자원(파일 기술자 포함)의 할당을 해제하고 사용 중인 파일 시스템 전체의 테이블을 갱신합니다.일부 프로그래밍 언어는 런타임 라이브러리에 의해 열린 파일의 데이터 구조를 유지하며 프로그램이 종료될 때 닫힐 수 있습니다.이 방법을 자원 취득은 초기화(RAII)라고 합니다.일부 운영체제는close
파일이 종료된 경우 해당 프로그램이 보유한 파일에 대한 정보를 표시합니다.일부 운영체제는close
시스템 장애로 인한 운영 체제 복구의 일부로 syscall을 사용합니다.
C 라이브러리 POSIX 정의
클로즈 콜은 POSIX 사양에 따라 표준화되어 있습니다.
인트 가까운. (인트 파일); 인트 fclose (파일 *개울.);
이 함수는 파일이 정상적으로 닫혔음을 나타내기 위해 0을 반환합니다.오류가 발생하면 -1 값이 반환되고 errno가 적절하게 설정됩니다.
발생할 수 있는 오류는 다음과 같습니다.