시스템 시간이 너무 빨리 Linux 기반 가상 Virtual Server 2005 R2에서 호스팅하는 컴퓨터에서 실행되는

기술 자료 번역 기술 자료 번역
기술 자료: 918461 - 이 문서가 적용되는 제품 보기.
모두 확대 | 모두 축소

이 페이지에서

현상

Microsoft Virtual Server 2005 R2 Linux 기반 가상 컴퓨터 설치한 후 Linux 게스트 운영 체제 시스템 시간을 너무 빨리 실행됩니다. 예를 들어, Linux 게스트 운영 체제에 현재 시간을 1분 48 초마다 약 발전할 수 있습니다. 얼마 후에 Linux 기반 가상 컴퓨터 시계가 올바른 시간으로 다시 설정합니다.

Linux 2.6 커널 사용하는 Linux 배포 실행 중인 경우 이 문제가 발생합니다.

원인

가능한 손실을 타이머 틱 Linux 2.6 커널 기본 알고리즘을 조정하여 때문에 이 문제가 발생합니다. 이 조정 때문에 가상 컴퓨터의 시간을 얻을 수 있습니다.

해결 방법

이 문제를 해결하려면 추가 있는 시계 = Linux bootloader 파일 매개 변수. 해당 시계 = 매개 변수는 Linux 2.6 커널 가상 컴퓨터와 호스트 컴퓨터 간의 시간을 동기화하는 데 보다 효율적인 알고리즘을 사용하도록 합니다. 이 알고리즘은 손실된 틱 조정되지 않습니다. 따라서 알고리즘의 시간을 얻을 수 있는 가상 컴퓨터 발생하지 않습니다. 이 매개 변수를 추가하려면 다음과 같이 하십시오.

GRUB bootloader에 대해

  1. 게스트 운영 체제에 Vi 같은 텍스트 편집기를 사용하여/boot/grub/menu.lst 파일을 엽니다. 예를 들어, 한 콘솔에서 다음 명령을 입력한 다음 Enter 키를 누릅니다.
    vi/boot/grub/menu.lst
    Linux 부팅 옵션이 포함된 파일과 다음과 유사한:
    title Linux
       kernel (hd0,4)/vmlinuz root=/dev/hda7 vga=791
       initrd (hd0,4)/initrd
    title windows
       root (hd0,0)
       makeactive
       chainloader +1
    title floppy
       root (fd0)
       chainloader +1
    title failsafe
       kernel (hd0,4)/vmlinuz.shipped root=/dev/hda7 ide=nodma apm=off acpi=off vga=normal nosmp maxcpus=0 3
       initrd (hd0,4)/initrd.shipped
  2. 이 파일의 Linux 제목 영역에 추가할 경우 시계 = 커널 입력 매개 변수. 이 영역에는 다음과 같이 합니다.
    title Linux
       kernel (hd0,4)/vmlinuz root=/dev/hda7 vga=791 clock=pit
       initrd (hd0,4)/initrd
  3. 파일에 변경 내용을 저장할 Vi, 종료한 다음 Linux 기반 가상 컴퓨터를 다시 시작하십시오.

LILO bootloader에 대해

  1. 게스트 운영 체제에 Vi 같은 텍스트 편집기를 사용하여/etc/lilo.conf 파일을 엽니다. 예를 들어, 한 콘솔에서 다음 명령을 입력한 다음 Enter 키를 누릅니다.
    vi/etc/lilo.conf
    Linux 부팅 옵션이 포함된 파일과 다음과 유사한:
    ### LILO global section 
    boot    = /dev/hda           # LILO installation target: MBR 
    vga     = normal             # normal text mode (80x25 chars) 
    read-only 
    
    lba32                        # Use BIOS to ignore 
                                 # 1024 cylinder limit 
    prompt 
    password = q99iwr4           # LILO password (example) 
    timeout = 80                 # Wait at prompt for 8 s before 
                                 # default is booted 
    message = /boot/message      # LILO's greeting 
    
    ### LILO Linux section (default) 
      image  = /boot/vmlinuz     # Default 
      label  = linux 
      root   = /dev/hda7         # Root partition for the kernel 
      initrd = /boot/initrd 
    
    ### LILO Linux section (fallback) 
      image  = /boot/vmlinuz.shipped 
      label  = Failsafe 
      root   = /dev/hda7 
      initrd = /boot/initrd.suse 
      optional 
    
    ### LILO other system section (Windows) 
      other  = /dev/hda1         # Windows partition 
      label  = windows 
    
    ### LILO memory test section (memtest) 
      image  = /boot/memtest.bin 
      label  = memtest86
  2. 이 파일의 ### LILO Linux 섹션 (기본값) 영역에 다음 항목을 입력하십시오.
    추가 = "시계 ="
    이 영역에는 다음과 같이 합니다.
    ### LILO Linux section (default) 
      image  = /boot/vmlinuz     # Default 
      label  = linux 
      root   = /dev/hda7         # Root partition for the kernel 
      initrd = /boot/initrd
      Append = "clock=pit"
  3. 파일에 변경 내용을 저장하고 Vi 종료하십시오.
  4. lilo 명령을 실행하십시오. 예를 들어, 다음 명령을 입력한 다음 Enter 키를 누릅니다.
    /sbin/lilo
  5. Linux 기반 가상 컴퓨터를 다시 시작하십시오.

추가 정보

가상 컴퓨터를 일반적으로 실제 호스트 컴퓨터와 해당 시간을 동기화하는 데 어려움이 있습니다. 이 문제를 해결하는 데 도움이 되는 Microsoft 가상 Server 2005 가상 컴퓨터용 의도한 있지만 있는 게스트 운영 체제에 시스템 시간을 추적하는 방식 때문에 시간 동기화 문제가 발생할 수 있습니다. 모든 종류의 운영 체제 자체 방법은 시스템 시간을 추적할 수 있습니다. Linux 2.6 커널 세 가지 서로 다른 알고리즘 사용하여 시스템 시간을 표시합니다. 이러한 알고리즘은 Linux 2.4 커널 및 이전 Linux 커널이 사용되는 알고리즘을 것보다 더 효율적입니다.

가상 컴퓨터 시간 동기화

일반적으로 운영 체제를 특정 하드웨어 장치에 의해 생성된 주기적인 시간 인터럽트를 사용하여 시간을 추적합니다. 일반적으로 운영 체제 운영 체제 시작 절차를 수행하는 동안 배터리 지원 CMOS) 질문의 금속 Oxide Semi-conductor (시계 시간을 가져옵니다. 다음 운영 체제 정기적으로 인터럽트를 타이머 장치를 구성합니다. 운영 체제가 이러한 인터럽트를 계산 시간을 추적합니다.

가상 컴퓨터 호스트 운영 체제 및 게스트 운영 체제에서 실제 실제 하드웨어가 공유됩니다. 가상 컴퓨터 시간 인터럽트 생성하면 게스트 운영 체제를 실행 중인 또는 실행되고 있을 수 있습니다. 따라서 게스트 운영 체제에 즉시 일부 이러한 인터럽트를 고려하지 않습니다. 이 문제를 해결하려면 이러한 인터럽트 백로그에 가상 컴퓨터 유지합니다. 또한 실행 중인 가상 컴퓨터 타이머 인터럽트 빈도가 증가합니다. 타이머 인터럽트 증가된 빈도는 게스트 운영 체제에 올바른 시간 유지 관리하는 데 도움을 주기 위한 것입니다. 그러나 이러한 인터럽트 증가된 빈도를 일부 인터럽트를 받지 못한 게스트 운영 체제에서 발생할 수 있습니다. 이러한 누락된 인터럽트는 "손실된 틱 같이." 라고 틱 원인을 게스트 운영 체제 시간 지연 실제 기간 뒤에 손실되었습니다. 물리적 컴퓨터에서 이 문제가 발생할 수 있지만 가상 시스템에서 실행 중인 게스트 운영 체제에 이 문제가 발생할 가능성이 있습니다.

타이머에 의해 전달된 타이머 인터럽트를 Linux 2.4 커널 및 이전 Linux 커널을 의존합니다. Linux 2.4 커널 시간 동기화에 대한 구현된 알고리즘은 손실된 틱 계정 작업을지 않습니다. 실제 클럭 뒤에 구성원과의 간격을 시스템 시간을 운영 Linux 게스트가 이 동작이 발생할 수 있습니다. 이 문제를 해결하는 데 도움이 되는 몇 가지 Linux 배포를 빠른 속도로 타이머 인터럽트를 배달하도록 Linux 2.4 커널 패치. 그러나 게스트 운영 체제에 여전히 시간 동기화 문제 때문에 발생할 수 Linux 틱 손실되었습니다.

Linux 2.6 커널이 시간 동기화 문제를 해결하려면 보다 효율적인 알고리즘을 구현합니다. Linux 2.4 알고리즘을 달리 Linux 2.6 알고리즘이 손실된 틱 조정합니다. 그러나 이 조정 시간 얻으려고 Linux 기반 가상 컴퓨터 발생할 수 있습니다. 커널에 부팅 시 전달할 수 있는 세 가지 다른 시계 매개 변수가 Linux 2.6 커널이 있습니다. 이러한 매개 변수를 사용하여 시간 동기화에 사용할 알고리즘을 선택합니다. 이러한 알고리즘에 대한 자세한 내용은 "계측의 Linux" 절을 참조하십시오. 이러한 계측 알고리즘을 각각 장단점이 있습니다. 그러나 실제 컴퓨터에서 가상 시스템에 비해 단점이 알 수 가능성이 높습니다.

컴퓨터 타이머 하드웨어

모든 운영 체제 자체의 메서드로 계측 문제를 처리할 수 있습니다. 다양한 종류의 컴퓨터에서 시간을 유지하려면 사용되는 타이머 메커니즘이 있습니다. 이러한 타이머가 메커니즘은 다음과 같습니다.
  • 프로그래밍 가능한 간격 타이머 (PIT)
  • CMOS 실시간 시계 (RTC)
  • 로컬 고급 프로그램 가능 인터럽트 컨트롤러 (APIC) 타이머
  • 고급 구성 및 전원 인터페이스 (ACPI)이 이 메커니즘을 칩셋 Timer 알려져 있습니다.
  • 시간 스탬프 카운터 (TSC가)
  • 높은 정밀도 이벤트 타이머 (HPET)

Linux 계측

x 86 기반 플랫폼에서는 다음과 같은 종류의 시간을 추적하기 위해 시계 Linux 2.6 커널 작용하는:
  • 전원 관리 타이머가 (PMTMR)
    이 시계를 특징은 다음과 같습니다.
    • 이 시계를 사용하여 설정되어 있는 시계 pmtmr = 커널 매개 변수.
    • 이 시계를 ACPI 타이머가 사용합니다.
    • 이 시계를 작은 시간 향상을 발생할 수 있습니다.
  • 시간 스탬프 카운터 (TSC가)
    이 시계를 특징은 다음과 같습니다.
    • 이 시계를 사용하여 설정되어 있는 시계 tsc = 커널 매개 변수. 이 기본 매개 변수입니다.
    • 이 시계를 시간 보간 PIT 카운터 및 해당 TSC가 사용합니다.
    • 이 시계를 overcorrection 가상 컴퓨터 환경에서 발생할 수 있습니다. 따라서 게스트 운영 체제가 클럭 너무 빨리 실행할 수 있습니다.
    • 이 시계를 최대 10%의 시간 향상을 발생할 수 있습니다.
  • 프로그래밍 가능한 간격 타이머 (PIT)
    이 시계를 특징은 다음과 같습니다.
    • 이 시계를 사용하여 설정되어 있는 시계 = 커널 매개 변수.
    • 이 시계를 시간 보간 PIT 카운터를 사용합니다.
    • 이 시계를 간단한 사용할 알고리즘을 사용합니다.
    • 손실된 눈금 수정 코드를 사용하지 않기 때문에 이 클럭 시간을 얻이 있지 않습니다.
Virtual Server 2005에 대한 자세한 내용은 다음 Microsoft 웹 사이트를 방문하십시오.
http://www.microsoft.com/windowsserversystem/virtualserver/default.mspx
이 문서에 나와 있는 다른 공급업체 제품은 Microsoft와 무관한 회사에서 제조한 것입니다. Microsoft 는 이러한 제품의 성능 및 신뢰성에 관하여 명시적이든 묵시적이든 어떠한 보증도 하지 않습니다.

속성

기술 자료: 918461 - 마지막 검토: 2006년 5월 4일 목요일 - 수정: 1.1
본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft Virtual Server 2005 R2 Standard Edition
  • Microsoft Virtual Server 2005 R2 Enterprise Edition
키워드:?
kbmt kbtshoot kbenv kbdeployment kbprb KB918461 KbMtko
기계 번역된 문서
중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.

피드백 보내기

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com