ClfsAddLogContainerSet 함수(wdm.h)

ClfsAddLogContainerSet 루틴은 CLFS 로그에 컨테이너 집합을 원자적으로 추가합니다.

구문

CLFSUSER_API NTSTATUS ClfsAddLogContainerSet(
  [in]           PLOG_FILE_OBJECT plfoLog,
  [in]           USHORT           cContainers,
  [in, optional] PULONGLONG       pcbContainer,
  [in]           PUNICODE_STRING  rguszContainerPath
);

매개 변수

[in] plfoLog

컨테이너가 추가될 로그를 나타내는 LOG_FILE_OBJECT 구조체에 대한 포인터입니다. 호출자는 이전에 ClfsCreateLogFile을 호출하여 이 포인터를 얻었습니다.

[in] cContainers

집합의 컨테이너 수입니다. rguszContainerPath 배열의 요소 수입니다.

[in, optional] pcbContainer

ULONGLONG 형식 변수에 대한 포인터입니다. 이 매개 변수의 역할은 로그에 현재 하나 이상의 컨테이너가 있는지 여부에 따라 달라집니다.

  • 로그에 현재 컨테이너가 없는 경우 호출자는 개별 컨테이너의 요청된 크기(바이트)인 양의 정수(바이트)를 제공합니다. CLFS는 요청된 크기가 512KB(전용 로그의 경우) 또는 1MB(멀티플렉싱 로그의 경우)의 배수로 반올림되는 컨테이너를 만듭니다.
  • 로그에 현재 하나 이상의 컨테이너가 있고 이 매개 변수가 NULL 포인터인 경우 CLFS는 기존 컨테이너와 동일한 크기의 새 컨테이너를 만듭니다. (로그의 모든 컨테이너 크기는 같아야 합니다.)
  • 로그에 현재 하나 이상의 컨테이너가 있고 이 매개 변수가 유효한 포인터인 경우 호출자는 개별 컨테이너의 요청된 크기(바이트)인 양의 정수를 제공합니다. 요청된 크기는 512KB(전용 로그의 경우) 또는 1MB(공유 로그의 경우)의 배수로 반올림됩니다. 반올림된 크기가 기존 컨테이너 크기만큼 크면 CLFS는 기존 컨테이너와 동일한 크기의 새 컨테이너를 만듭니다. 반환이 성공적이면 이 매개 변수는 기존 컨테이너 크기를 받습니다. 반올림된 크기가 기존 컨테이너 크기보다 작으면 ClfsAddLogContainerSet가 실패합니다.

[in] rguszContainerPath

UNICODE_STRING 구조체의 배열에 대한 포인터입니다. 각 문자열은 새 컨테이너 중 하나의 경로 이름을 제공합니다. 배열의 요소 수는 cContainers에서 지정합니다. 지정된 경로는 절대 경로이거나 기본 로그 파일의 위치를 기준으로 할 수 있습니다. 기본 로그 파일을 기준으로 하는 경로는 문자열 리터럴(L"%BLF%\")인 CLFS_CONTAINER_RELATIVE_PREFIX 시작해야 합니다.

반환 값

ClfsAddLogContainer 는 성공하면 STATUS_SUCCESS 반환합니다. 그렇지 않으면 Ntstatus.h에 정의된 오류 코드 중 하나를 반환합니다.

설명

컨테이너는 안정적인 스토리지에서 연속된 범위입니다. 예를 들어 컨테이너는 디스크의 연속 파일일 수 있습니다. 로그는 기본 로그 파일과 함께 컨테이너 집합입니다. 컨테이너에 대한 자세한 내용은 CLFS 안정 스토리지를 참조하세요.

기본 로그 파일을 기준으로 하는 경로로 지정된 컨테이너는 기본 로그 파일 또는 기본 로그 파일의 하위 디렉터리와 동일한 디렉터리에 있어야 합니다. "." 및 ".." 디렉터리를 상대 경로에서 사용할 수 없습니다.

로그에는 절대 경로가 있는 일부 컨테이너와 상대 경로가 있는 다른 컨테이너가 있을 수 있습니다.

컨테이너는 압축되지 않은 모드로 만들어지고 0으로 초기화됩니다.

로그에 대해 I/O를 수행하려면 두 개 이상의 컨테이너가 있어야 합니다.

CLFS 개념 및 용어에 대한 설명은 공통 로그 파일 시스템을 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Server 2003 R2, Windows Vista 및 이후 버전의 Windows에서 사용할 수 있습니다.
대상 플랫폼 데스크톱
머리글 wdm.h(Wdm.h 포함)
라이브러리 Clfs.lib
DLL Clfs.sys
IRQL <= APC_LEVEL

추가 정보

ClfsAddLogContainer

ClfsRemoveLogContainerSet