다음을 통해 공유


sys.dm_os_sys_info(Transact-SQL)

SQL Server에서 사용할 수 있고 소비하는 리소스 및 컴퓨터에 대한 기타 유용한 정보를 반환합니다.

적용 대상: SQL Server(SQL Server 2008 - 현재 버전).

열 이름

데이터 형식

설명

cpu_ticks

bigint

현재 CPU 틱 수를 지정합니다. CPU 틱은 프로세서의 RDTSC 카운터에서 가져오며 단순하게 증가하는 숫자입니다. Null을 허용하지 않습니다.

ms_ticks

bigint

컴퓨터가 시작된 이후 경과한 시간(밀리초)을 지정합니다. Null을 허용하지 않습니다.

cpu_count

int

시스템의 논리적 CPU 수를 지정합니다. Null을 허용하지 않습니다.

hyperthread_ratio

int

하나의 실제 프로세서 패키지에 표시되는 논리적 또는 물리적 코어의 비율을 지정합니다. Null을 허용하지 않습니다.

physical_memory_in_bytes

bigint

컴퓨터에 있는 실제 메모리의 전체 크기를 지정합니다. Null을 허용하지 않습니다.

적용 대상: SQL Server 2008부터 SQL Server 2008 R2까지

physical_memory_kb

bigint

컴퓨터에 있는 실제 메모리의 전체 크기를 지정합니다. Null을 허용하지 않습니다.

적용 대상: SQL Server 2012부터 SQL Server 2014까지

virtual_memory_in_bytes

bigint

사용자 모드로 프로세스에 사용할 수 있는 가상 메모리의 양입니다. 3-GB 스위치를 사용하여 SQL Server가 시작되었는지 확인하는 데 사용할 수 있습니다.

적용 대상: SQL Server 2008부터 SQL Server 2008 R2까지

virtual_memory_kb

bigint

사용자 모드로 프로세스에 사용할 수 있는 가상 주소 공간의 전체 크기를 지정합니다. Null을 허용하지 않습니다.

적용 대상: SQL Server 2012부터 SQL Server 2014까지

bpool_commited

int

메모리 관리자의 커밋된 메모리(KB)를 나타냅니다. 메모리 관리자의 예약된 메모리는 포함하지 않습니다. Null을 허용하지 않습니다.

적용 대상: SQL Server 2008부터 SQL Server 2008 R2까지

committed_kb

int

메모리 관리자의 커밋된 메모리(KB)를 나타냅니다. 메모리 관리자의 예약된 메모리는 포함하지 않습니다. Null을 허용하지 않습니다.

적용 대상: SQL Server 2012부터 SQL Server 2014까지

bpool_commit_target

int

SQL Server 메모리 관리자가 소비할 수 있는 메모리 크기(KB)를 나타냅니다.

적용 대상: SQL Server 2008부터 SQL Server 2008 R2까지

committed_target_kb

int

SQL Server 메모리 관리자가 소비할 수 있는 메모리 크기(KB)를 나타냅니다. 다음과 같이 다양한 입력을 사용하여 필요한 메모리 양을 계산합니다.

  • 로드를 비롯한 시스템의 현재 상태

  • 현재 프로세스에서 요청한 메모리

  • 컴퓨터에 설치된 메모리의 양

  • 구성 매개 변수

committed_target_kbcommitted_kb보다 크면 메모리 관리자가 추가 메모리를 얻으려고 합니다. committed_target_kbcommitted_kb보다 작으면 메모리 관리자가 커밋되는 메모리 크기를 줄이려고 합니다. committed_target_kb는 항상 빼앗긴 메모리와 예약된 메모리를 포함합니다. Null을 허용하지 않습니다.

적용 대상: SQL Server 2012부터 SQL Server 2014까지

bpool_visible

int

프로세스 가상 주소 공간에서 직접 액세스할 수 있는 버퍼 풀의 8KB 버퍼 수입니다. AWE(Address Windowing Extensions)를 사용하지 않을 때 버퍼 풀이 해당 메모리 대상을 획득한 경우(bpool_committed = bpool_commit_target), bpool_visible 값은 bpool_committed 값과 동일합니다. 32비트 버전의 SQL Server에서 AWE를 사용할 때, bpool_visible은 버퍼 풀로 할당된 물리적 메모리에 액세스하는 데 사용된 AWE 매핑 창의 크기를 나타냅니다. 이 매핑 창의 크기는 프로세스 주소 공간에 의해 바인딩되므로 표시되는 양은 커밋된 양보다 작으며 데이터베이스 페이지 이외의 용도로 메모리를 사용하는 내부 구성 요소에 의해 더욱 축소될 수 있습니다. bpool_visible 값이 너무 작으면 메모리 부족 오류가 표시될 수도 있습니다.

적용 대상: SQL Server 2008부터 SQL Server 2008 R2까지

visible_target_kb

int

committed_target_kb와 같습니다. Null을 허용하지 않습니다.

적용 대상: SQL Server 2012부터 SQL Server 2014까지

stack_size_in_bytes

int

SQL Server에서 만든 각 스레드의 호출 스택 크기를 지정합니다. Null을 허용하지 않습니다.

os_quantum

bigint

비우선 태스크에 대한 퀀텀을 나타내며 밀리초 단위로 측정됩니다. 퀀텀(초) = os_quantum / CPU 클럭 속도입니다. Null을 허용하지 않습니다.

os_error_mode

int

SQL Server 프로세스의 오류 모드를 지정합니다. Null을 허용하지 않습니다.

os_priority_class

int

SQL Server 프로세스에 대한 우선 순위 클래스를 지정합니다. Null을 허용합니다.

32 = 정상(오류 로그는 SQL Server가 보통 우선 순위(=7)에서 시작함을 나타냄)

128 = 높음(오류 로그는 SQL Server가 높은 우선 순위에서 실행됨을 나타냄) (=13).)

자세한 내용은 priority boost 서버 구성 옵션 구성을 참조하십시오.

max_workers_count

int

만들 수 있는 최대 작업자 수를 나타냅니다. Null을 허용하지 않습니다.

scheduler_count

int

SQL Server 프로세스에 구성된 사용자 스케줄러 수를 나타냅니다. Null을 허용하지 않습니다.

scheduler_total_count

int

SQL Server의 총 스케줄러 수를 나타냅니다. Null을 허용하지 않습니다.

deadlock_monitor_serial_number

int

현재 교착 상태 모니터 시퀀스의 ID를 지정합니다. Null을 허용하지 않습니다.

sqlserver_start_time_ms_ticks

bigint

SQL Server가 마지막으로 시작되었을 때 ms_tick 수를 나타내며 현재 ms_ticks 열과 비교됩니다. Null을 허용하지 않습니다.

sqlserver_start_time

datetime

SQL Server가 마지막으로 시작된 날짜와 시간을 지정합니다. Null을 허용하지 않습니다.

affinity_type

int

현재 사용 중인 서버 CPU 프로세스 선호도의 유형을 지정합니다. Null을 허용하지 않습니다. 자세한 내용은 ALTER SERVER CONFIGURATION(Transact-SQL)을 참조하십시오.

1 = MANUAL

2 = AUTO

적용 대상: SQL Server 2008 R2부터 SQL Server 2014까지

affinity_type_desc

varchar(60)

affinity_type 열에 대해 설명합니다. Null을 허용하지 않습니다.

MANUAL = 하나 이상의 CPU에 선호도가 설정되었습니다.

AUTO = SQL Server에서 CPU 간에 스레드를 자유롭게 이동할 수 있습니다.

적용 대상: SQL Server 2008 R2부터 SQL Server 2014까지

process_kernel_time_ms

bigint

커널 모드에서 모든 SQL Server 스레드에 걸린 총 시간(밀리초)입니다. 이 값은 서버에 있는 모든 프로세서의 시간을 포함하므로 단일 프로세서 클럭보다 클 수 있습니다. Null을 허용하지 않습니다.

적용 대상: SQL Server 2008 R2부터 SQL Server 2014까지

process_user_time_ms

bigint

사용자 모드에서 모든 SQL Server 스레드에 걸린 총 시간(밀리초)입니다. 이 값은 서버에 있는 모든 프로세서의 시간을 포함하므로 단일 프로세서 클럭보다 클 수 있습니다. Null을 허용하지 않습니다.

적용 대상: SQL Server 2008 R2부터 SQL Server 2014까지

time_source

int

SQL Server에서 벽시계 시간(wall clock time)을 검색하는 데 사용하는 API를 나타냅니다. Null을 허용하지 않습니다.

0 = QUERY_PERFORMANCE_COUNTER

1 = MULTIMEDIA_TIMER

적용 대상: SQL Server 2008 R2부터 SQL Server 2014까지

time_source_desc

nvarchar(60)

time_source 열에 대해 설명합니다. Null을 허용하지 않습니다.

QUERY_PERFORMANCE_COUNTER = QueryPerformanceCounter API가 벽시계 시간을 검색합니다.

MULTIMEDIA_TIMER = 벽시계 시간을 검색하는 멀티미디어 타이머 API입니다.

적용 대상: SQL Server 2008 R2부터 SQL Server 2014까지

virtual_machine_type

int

SQL Server가 가상화된 환경에서 실행되고 있는지 여부를 나타냅니다. Null을 허용하지 않습니다.

0 = NONE

1 = HYPERVISOR

2 = OTHER

적용 대상: SQL Server 2008 R2부터 SQL Server 2014까지

virtual_machine_type_desc

nvarchar(60)

virtual_machine_type 열에 대해 설명합니다. Null을 허용하지 않습니다.

NO = SQL Server가 가상 컴퓨터 내에서 실행되고 있지 않습니다.

HYPERVISOR = SQL Server가 하이퍼바이저 내에서 실행되고 있습니다(하드웨어 지원 가상화를 의미함). 인스턴스가 호스트 OS에서 실행되고 있는 경우에도 HYPERVISOR가 반환됩니다.

OTHER = SQL Server가 Microsoft Virtual PC와 같이 하드웨어 길잡이가 적용되지 않는 가상 컴퓨터 내에서 실행되고 있습니다.

적용 대상: SQL Server 2008 R2부터 SQL Server 2014까지

사용 권한

서버에 대한 VIEW SERVER STATE 권한이 필요합니다.

참고 항목

참조

동적 관리 뷰 및 함수(Transact-SQL)

SQL Server 운영 체제 관련 동적 관리 뷰(Transact-SQL)