Windows 7 Inside Linux는 기본 OS (그래픽 및 비디오 용 ESP)만큼 실행하기 좋습니까?


10

새로운 리눅스 사용자. VMPlayer를 통해 Ubuntu / Linux Mint에서 Windows 7을 실행하는 것이 주 OS로 Windows 7을 실행하는 것과 똑같을 지 궁금했습니다.

"같은"이란 말은 특히 의미합니다 :

  • 그래픽과 비디오 렌더링 품질이 좋아 질까요?

  • HDMI 또는 WiDi 사용과 같은 하드웨어 문제가 있습니까?

  • 충분한 RAM이 할당되는 한 응용 프로그램이 원활하게 실행됩니까?

눈에 띄는 차이가 없도록 기계가 얼마나 강력해야합니까? 내 컴퓨터의 특정 사양은 다음과 같습니다. http://www.gadgetspecs.info/2011/07/asus-u46e-bal5-review-of-specs-and.html . SSD도 설치되어 있습니다.

배경 : 현재 Windows 7에서 Linux Mint 및 Ubuntu와 반대의 설정이 있으며 비디오 품질이 Windows 7의 품질과 같지 않다는 것을 알게되었습니다.

답변:


11

아래 답변에 많은 것을 추가했지만 원래의 답변은 그대로 유지했습니다.

TL : DR : 가상 머신은 하나의 도구이며 다른 OS 내에서 하나의 OS를 쉽게 사용할 수 있지만 시스템을 최대한 활용하기 위해서는 컴퓨터의 기본 용도가 무엇인지 잘 알고 있어야합니다. .

귀하의 질문은 가상 머신 사용의 그래픽 및 인터페이스 성능 가능성에 크게 기울어 진 것이므로 그 가능성에 대해 대답하겠습니다.

주된 문제는 게스트 운영 체제가 장치에 대한 액세스를 안전하게 관리하고 (따라서 게스트 OS가 호스트를 짓밟거나 침입하는 것을 방지하기 위해) 사용하려는 모든 장치를 "에뮬레이션"해야한다는 것입니다.

이는 게스트 OS에서 볼 수 있는 그래픽 카드가 호스트 OS에서 볼 수있는 그래픽 카드와 동일 하지 않다는 것을 의미합니다. 게스트에서 3D 렌더링과 같은 기능을 활성화 할 수 있지만 게스트의 중간 드라이버가 처리하여 3D를 렌더링하기 위해 요청을 안전한 방식으로 호스트에 전달합니다.

지원되는 HDMI 디스플레이에 블루 레이 디스크를 안전하게 재생하는 데 필요한 기능과 같은 기능이 게스트 그래픽 카드 드라이버에 의해 에뮬레이션되므로 작동하지 않을 가능성이 매우 높습니다.

기본적으로 호스트에서 하드웨어 지원이 필요한 것은 게스트에서 제대로 작동하지 않을 수 있습니다. WiDi의 작동 방식을 모르지만 비디오 카드 메모리를 텔레비전에 공유하기 위해 비디오 카드 메모리에 직접 액세스해야하는 경우 호스트 (Linux) 운영 체제에서 사용하지 않으면 작동하지 않습니다.

성능 측면에서 VM은 기본 OS 인 경우와 거의 비슷하지만 하드 드라이브 장치 액세스 또는 호스트가 사용중인 다른 리소스와의 경합 측면에서는 항상 위약금이 부과됩니다.

처음에는 ...

처음에는 컴퓨터가 있었는데 그 컴퓨터는 하나의 운영 체제 만 실행할 수있었습니다. 이 운영 체제는 시스템에있는 특정 프로세서 및 기타 하드웨어에서만 제대로 실행되는 경향이 있었으며, 다른 운영 체제는 사용 가능한 기본 하드웨어에서만 제대로 실행되지 않았습니다.

사람들이 다른 플랫폼의 특정 플랫폼에 대해 소프트웨어를 사용할 수 있으려면 (예 : Commodore Amiga에서 Pre-OSX MacOS 소프트웨어 사용) "소프트웨어 설치"이상이 필요했습니다. 이 두 시스템은 완전히 다른 프로세서 아키텍처와 보조 하드웨어를 사용했습니다. 하나의 OS가 다른 시스템의 하드웨어에서 실행될 수있는 방법은 없었습니다.

에뮬레이션

에뮬레이션은 가상화의 사촌과 유사하며 실제로 관련이 있으며 유사한 목표를 가지고 있습니다. 한 사람은 다른 사람을 그대로 be습니다.

이러한 서로 다른 하드웨어 플랫폼의 의미는 컴퓨터의 다른 OS에서 하나의 소프트웨어를 사용하려면 해당 컴퓨터의 모든 기능 을 분석하여 작동 방식을 확인한 다음 하드웨어 부분과 같은 방식으로 이것은 모든 부분, 프로세서, 그래픽 컨트롤러, 메모리 컨트롤러, 모든 것에 대해 수행되어야했습니다 .

그런 다음이 모든 조각들이 합쳐지고 각 조각이 약간의 하드웨어를 모방 할 때 우리는 이것을 에뮬레이트 된 기계 라고 불렀습니다 . 그런 다음이 에뮬레이트 된 머신 위에서 운영 체제를 실행합니다.

문제는이 방법이 느리다는 것입니다. 원래 하드웨어 속도의 1/10 속도를 달성 할 수 있다면 운이 좋았습니다. 최고 속도 근처의 어느 곳에서나 에뮬레이트 된 컴퓨터를 실행하려면 말 그대로 대상 에뮬레이션 된 머신보다 몇 배 더 빠른 머신이 필요했습니다.

그래서 무엇이 바뀌 었습니까?

글쎄, 여기 멋진 것이 있습니다. 별로. 유일한 큰 변화는 하드웨어 플랫폼이 표준화되었다는 것입니다. 우리는 모든 OS에 대한 커스텀 하드웨어를 얻지 못했고 OS는 모두 단일 표준 플랫폼으로 이동했거나 생성되었습니다.

요즘 Mac을 구성하는 구성 요소는 대체로 PC를 구성하는 구성 요소와 동일합니다. 리눅스는 항상 PC 하드웨어에서 실행되었으므로 새로운 것은 없습니다.

한 OS에서 다른 OS로 소프트웨어를 실행하려는 경우 오랫동안 에뮬레이션이 표준이었습니다. 또는 원하는대로 운영 체제를 이중 부팅하고 실행할 수 있지만 Linux 코딩에서 Windows 게임으로 이동하려는 경우 고통스럽고 성가신 일입니다.

그리고..

기본 하드웨어가 동일하므로 두 OS가 모두 공유 할 수없는 이유는 무엇입니까?

우리는 QEMU와 WiNE 및 유사한 소프트웨어 솔루션으로 끝났습니다. QEMU는 오랫동안 컴퓨터의 하드 에뮬레이션으로 선호되어 왔으며 WiNE는 OS API 호출을 트랩 및 패치하고 코드가 프로세서에서 기본적으로 실행되도록하여 Windows 응용 프로그램을 Linux에서 실행할 수있었습니다.

QEMU는 WiNE와 비슷한 작업을 수행했지만 훨씬 낮은 수준에서 수행했습니다. 여전히 효과적으로 에뮬레이터이지만 모든 하드웨어 호출에 대해 "패치 및 리디렉션"방법을 사용하여 모든 호출이 자체 에뮬레이트 된 하드웨어 플랫폼으로 이동했습니다. 프로그램에서 대부분의 작업 코드는 실제로 하드웨어 호출을 포함하지 않았기 때문에 (대부분은 결과를 표시하기 위해 호출이있는 간단한 계산 스트림입니다).

이로 인해 실제 에뮬레이션되지 않은 머신의 거의 모든 프로그램에 대해 즉각적인 속도 향상이 이루어졌습니다 . 프로그램은 머신을 얼마나 잘 에뮬레이트 할 수 있는지가 아니라 "가상"하드웨어에 얼마나 많이 액세스했는지에 따라 속도가 느려졌습니다. 속도의 1/10 속도로 달리기보다는 이제 마치 기본 속도와 거의 같은 속도로 달리고있었습니다.

이제 프로세서에서 실행중인 경우 왜 그래픽 카드가 작동하지 않습니까?

이 새로운 가상 머신의 유일한 문제점은 운영 체제 가 컴퓨터에있는 모든 하드웨어를 직접 제어 할 수 있으므로 메모리 관리 및 하드웨어 액세스 제어와 같은 기능을 제공 할 수 있다고 가정한다는 것 입니다.

이것이 의미하는 바는 가상 머신이 적어도 방법으로는 에뮬레이션에서 완전히 벗어날 수 없다는 것입니다. "게스트"운영 체제가 해당 하드웨어를 완전히 제어 할 수 있도록 가상 시스템에서 실행중인 OS에 그래픽 카드 또는 네트워크 카드와 같은 소프트웨어의 특정 기능을 에뮬레이션해야합니다 . 기본 OS (보안 요구 사항에 따라)는 하드웨어에 직접 액세스하는 프로그램으로부터 보호해야하며 이로 인해 게스트 운영 체제가 제한됩니다.

이를 위해서는 컴퓨터의 모든 부분에 대해 "가상"하드웨어 조각을 에뮬레이션해야합니다. 모든 코드는 현재 프로세서에서 기본적으로 실행되므로 느리지는 않지만 가상 하드웨어의 각 부분은 소프트웨어로 작성해야하며, 성능면에서 약간의 페널티와 기능면에서 큰 페널티가 발생할 수 있습니다. .

즉, 가상 그래픽 카드는 실제 그래픽 카드 와 동일한 기능을 가질 수없고 가질 수 없습니다 . 최고의 성능을 얻기 위해 가상 하드웨어는 가장 많이 사용되는 기능을 지원하도록 작성 될 수 있으며 이제 가상 머신에서 3D 렌더링이 가능하지만 실제 하드웨어와 동일하지는 않습니다.

이는 호스트 운영 체제가 최상의 하드웨어 옵션을 얻는 반면 게스트 운영 체제는 일반 하드웨어 옵션을 얻는다는 것을 의미 합니다.

가상 머신은 실제 하드웨어만큼 좋지 않으며, 한 시스템에서 다른 시스템으로 도구를 사용하여보다 쉽게 ​​작업 할 수있는 도구 일뿐입니다.

어떻게해야합니까?

컴퓨터의 주요 목적을 원하는 것을 선택해야합니다.

고성능 그래픽 카드에서 최신 게임을 플레이하고 동일한 그래픽 카드를 사용하여 400 "HDMI TV에서 풀 1080p 영화를 재생하지만 때로는 일부 Linux 프로그래밍 만 원한다면 Windows가 최선의 방법 일 것입니다 Linux를 게스트로 사용합니다.

Linux 커널에서 작업하고 컴퓨터의 장치에 대한 하드웨어 드라이버를 만들고 때로는 Windows 용 소프트웨어를 작성하여 "표준"Windows 시스템과 비슷한 수준으로 테스트하려는 경우 Linux를 사용하는 것이 좋습니다. 호스트로서 그리고 게스트로서 Windows.

Mac의 사용 편의성을 좋아하지만 Windows 용 프로그램을 원하거나 Windows 전용 소프트웨어 패키지가 필요한 경우 옵션이기도합니다.

나는 리눅스가 게임을 할 수 없거나 MacOS가 프로그래머에게 적합하지 않다는 말은 아닙니다. 어떤 OS가 당신이하고 싶은 것에 더 적합 할 수 있는지 말할 수있는 사람은 바로 당신 입니다.

당신은 정말 당신이 당신의 컴퓨터가 수행 할 작업을 이해해야 첫째 . 그래야만 가상 머신이 할 수있는 일을 해결할 수 있습니다.

질문에 대답하려면 :

Will the graphics and video rendering quality will be just as good?

에뮬레이트 된 그래픽 카드는 호스트 그래픽 카드의 일부 기능을 제공 할 수 있지만 하드웨어 비디오 가속 또는 CUDA 프로그래밍 기능과 같은 복잡한 기능은 지원하지 않을 수 있습니다.

Will there be any hardware issue such as using HDMI or WiDi?

다시 말하지만, 이러한 추가 기능은 사용 가능한 에뮬레이트 / 가상 하드웨어의 기능이 아닐 수 있습니다.

Will applications run just as smoothly as long as enough RAM is allocated?

대부분의 응용 프로그램 (특정 하드웨어 기능이 필요하지 않은 한)은 호스트 나 메모리 게스트가 굶주 리지 않는 한 실제 하드웨어에서와 거의 같은 속도로 실행 됩니다.


귀하의 답변에 +1 감사합니다. "경사"를 반영하도록 질문을 변경하겠습니다.
Kamil Sindi

8

게스트 시스템은 호스트 시스템에서 실행되는 프로그램이므로 가상 시스템 (VM)은 항상 호스트 시스템보다 느리게 실행됩니다. 하드웨어를 직접 제어 할 수 없습니다. 그러나 하드웨어가 처리 할 수 ​​있으면 속도가 너무 눈에 띄지 않을 수 있습니다.

그 이유는 프로세서가 한 번에 하나의 명령 만 실행할 수 있기 때문입니다. 프로그램은 일반적으로 수천 또는 수백만의 기계 명령어로 구성됩니다. 머신이 시작되면 부트 로더에 대한 마스터 부트 레코드 (MBR)를 스캔합니다. 그런 다음 부트 로더가 커널을 시작합니다. 커널은 모든 하드웨어를 제어하는 ​​주요 프로세스입니다. 여러 작업을 전환하는 멀티 태스킹을 사용하면 주어진 순간에 하나만 실행 되더라도 한 번에 둘 이상의 프로그램을 실행할 수 있습니다. 대부분의 프로세서는 시간의 약 20 % 만 수학 계산을 수행합니다. 멀티 코어 프로세서를 사용하면 다른 코어가 연산을 수행 할 때까지 대기하면서 다음 명령을 가져올 수 있으므로 유휴 시간이 줄어들고 시스템 속도가 크게 향상됩니다. 커널 외에도 셸 (사용자에게 인터페이스를 제공함)이 있습니다.

가상화 소프트웨어는 다른 응용 프로그램과 마찬가지로 커널이 관리하는 응용 프로그램입니다. 따라서 VM의 커널은 호스트 커널에서 허용되는 작업이 수행 될 때까지 기다려야하며 자주 중단됩니다. 호스트 시스템에서 실행중인 프로세스가 많을수록 VM에 할당되는 실행 시간이 줄어들어 속도가 느려집니다. VM은 일반적으로 물리적 시스템보다 3-4 배 느리게 실행됩니다.

게임이나 그와 비슷한 것을 실행하려면 가능한 많은 RAM과 커널 시간을 할당하십시오. 여러 프로세서가 도움이됩니다. 그러나 RAM을 너무 많이 할당하면 데이터에 액세스하는 데 시간이 오래 걸리고 호스트 시스템에 과도한 하드 디스크 캐싱이 발생할 수 있으므로 시스템 속도가 느려집니다. 그러나 반면에 너무 적 으면 게스트에 과도한 양의 하드 디스크 캐싱이 발생합니다. Windows는 리소스가 너무 부족하여 최소 2 ~ 4GB의 RAM을 할당하지만 RAM의 절반 이상을 VM에 할당하지 않습니다.

응답 속도가 너무 느리면 이중 부팅이 더 좋습니다. 이렇게하면 둘 다 시스템 리소스를 완전히 활용할 수 있지만 불행히도 한 번에 하나씩 만 실행할 수 있습니다. 이 작업을 수행하는 경우 Linux 용, Windows 용 및 파일 용으로 최소 3 개의 파티션이 필요할 수 있습니다.


눈에 띄는 차이가 없도록 기계가 얼마나 강력해야하는지 아십니까?
Kamil Sindi

내 컴퓨터의 호스트로 Windows 만 실행했기 때문에 확실하지 않습니다. 내 추천은 그것을 시도하고 그것이 제대로 작동하는지 확인하는 것입니다. 그렇지 않으면 이중 부팅을 사용합니다. 내 개인적인 경험은 Wordperfect와 같은 것들이 충분히 빠르지 만 게임은 VM에서 제대로 수행되지 않는다는 것입니다.
ctype.h

시스템의 특정 세부 사항은 무엇입니까? 당신은 얼마나 많은 RAM을 가지고 있습니까? 프로세서의 주파수와 코어 수는 얼마입니까? HAV (Hardware Assisted Virtualization)를 지원합니까?
ctype.h

매우 흥미로운 개요는 +1입니다. 내 사양은 8GB RAM, 솔리드 스테이트 드라이브 및 Intel Core i5-2410M (2.3GHz의 클럭 속도)입니다. HAV에 대해 잘 모르겠습니다. 매우 새로운 모델입니다 (2011).
Kamil Sindi

6

그래서. VMWare Player는 유형 2 하이퍼 바이저입니다. 즉, 게스트가 OS 위에 앉아 있음을 의미합니다. 유형 1 하이퍼 바이저에서 가상화 플랫폼은 하드웨어 위에 있습니다. VMWare Player가 Type 2 하이퍼 바이저에 있기 때문에 Type 1보다 느리게 실행되기 때문입니다. 그러나 VMWare Player는 VM의 하드웨어 요구 사항을 사용자 지정할 수있는 기능을 제공합니다. 따라서 4GB RAM이 장착 된 쿼드 코어 프로세서가 장착 된 시스템을 사용하는 경우 1 ~ 2 개의 코어를 제공 한 다음 2GB의 RAM (Windows x64의 경우 최소 요구 사항)을 제공하여 효율적으로 VM을 운영 할 수 있습니다.

예를 들어 XPS 14z가 있고 Windows 7이 설치되어 있습니다. Windows 7 VM도 실행합니다. 2GB의 RAM과 2 개의 프로세서 코어 (4 개)를 할당했습니다.

따라서 프로그램 (메모장 ++, Transwiz, Outlook, Word, Excel 등)에서 프로그램을 실행할 때 눈에 띄게 느려지지 않습니다. 나는 그것에 강렬한 소프트웨어를 실행하려고 시도하지 않았습니다 (Photoshop 등). 따라서 용도에 따라 유형 2 하이퍼 바이저가 필요에 맞거나 맞지 않을 수 있습니다. 게임에 사용하려면 게임에 따라 다릅니다. 몇 가지 Steam 게임을 실행했는데 아무런 문제가 없었습니다 (때때로 Fedora 컴퓨터에서 VM까지 RDP).하지만 실제로 게임의 요구 사항에 달려 있습니다. 모든 의미에서 게임을 위해 VM을 사용하지는 않습니다. 내 W7 컴퓨터에서 게임을 한 다음 VM (실제로 Fedora)을 사용하여 다른 작업을 수행합니다. 가장 집중적 인 응용 프로그램이 먼저 하드웨어에 액세스하기를 원합니다.


1

그래서 VMWare Player를 통해 Linux Mint 12에 Windows 7을 설치했습니다. Linux Mint 내에서 Windows 7의 비디오 렌더링은 기본 OS로서 Windows 7보다 나쁩니다. 나는 아무것도 구성하지 않았으며 avi 파일의 비디오 렌더링을 향상시키기 위해 구성해야 할 것이 있는지 모르겠습니다.

8GB 메모리 시스템에서 앱 실행 속도가 빠르다는 것을 알았습니다. 그것은 문제가되지 않았습니다. 즉, 비디오 또는 사진 편집과 같은 슈퍼 메모리를 많이 사용하지는 않았습니다. 일반 Office 앱만 있습니다.


가상 머신에 항상 더 많은 CPU, RAM 또는 비디오 메모리를 할당 할 수 있습니다.
iglvzx

1

VM 기술의 문제점은 해당 메모리를 사용하여 실제 OS를 실행하는 경우 동일한 방법으로 실제 메모리를 처리 할 수 ​​없다는 것입니다. VM 이미지는 두 운영 체제를 동시에 실행할 수없는 동일한 물리적 주소 공간을 사용하여 실행 된 경우 논리적 메모리 주소 지정을 사용합니다. 최신 VM은 90 % -95 % 수준의 게임을 말할 수있는 먼 길을 걸어 왔지만 여전히 게임을 최고 속도로 실행할 수있는 능력이 부족합니다. 90 % -95 %는 순수하게 컴퓨터 메모리의 논리적 주소 지정과 물리적 주소 지정을 목표로합니다. 이제 메모리 주소 지정 / 할당 인수 만 다루므로 다른 문제는 Windows가 DirectX를 사용한다는 것입니다 .VMware를 포함한 VM 소프트웨어가 최신 DX를 완벽하게 지원하지 않는다는 것을 알고 있습니다. 따라서 DX 9 이외의 것을 사용하면 거의 망할 수 있습니다.

Linux의 QEMU는 아마도 게임에 가장 적합 할 것입니다!

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.