노트북 터치 패드의 드라이버 진단 단축키 방지

대부분의 노트북에 붙어있는 터치패드 Synaptics
이 놈의 특허권 기간이 아직 남아서 다른 대안이 없는데
터치패드가 먹어버리는 단축키가 있다.

Alt + Shift + L

이걸 누르면 “TouchPad Driver Diagnostics” 팝업이 뜬다.
이 단축키를 먹지 않도록 하기 위해서는

경로: HKLM/SYSTEM/CurrentControlSet/Services/SynTP/Parameters/Debug
이름: DumpKernel
타입: DWORD
값: 0

위와 같이 Registry 에 입력하고 Windows 리붓하면 된다.

특허도 좋은데 이런 횡포?는 좀 안하면 좋겠다.

프린터 드라이버 삭제

사용하지 않는 프린터 드라이버가 누적될 수 있다.
예를 들면 노트북을 집 프린터를 사용하다, 카페에서 잠깐 다른 프린터를 사용하다, 도서관에서 다시 다른 프린터를 사용한다거나…

근데 불필요하게 설치된 프린터 드라이버를 찾아서 지우는 도구가 잘 보이지 않는다.

  1. 관리자 권한의 명령프롬프트를 실행
  2. printui /s
  3. 드라이버 탭에서 원하는 작업 수행

탐색기에서 파일 경로 복사

은근히 이걸 잘 모르는 사용자가 많다.
Windows Explorer(탐색기)에서 파일이나 폴더를 우클릭하면 다양한 메뉴를 볼 수 있는데, 그냥 우클릭한 경우와 Shift를 누르고 우클릭한 경우 출력되는 메뉴의 내용이 다르다.

Shift 우클릭을 한 경우 추가로 나오는 대표적인 메뉴가 “경로로 복사” 이다.

예를 들어 D:\Downloads 를 우클릭하여 경로로 복사를 하면, 클립보드에 “D:\Downloads” 라는 문자열이 복사된다.

이걸 사용하지 않고 동일한 작업을 하려면 속성을 열어서 경로와 파일명을 각각 다시 복사해야 하는데, 속성은 또다른 기능을 수행하므로 불편하다.

매일 쓰는 컴퓨터와 OS의 기능을 최대한 활용하는 것이 업무의 효율을 높이고 본인도 편하게 작업할 수 있음을 꼭 기억하자.

WSL – Windows Subsystem for Linux

  • Windows 에서 Linux 프로그램을 맛볼 수 있는 기능
  • Windows 10 1607 에서 시작
  • 64비트만 가능
    당연히 이 가짜 Linux에서 실행되는 프로그램도 64비트용이어야 하고
  • Windows Server 2019 부터 서버 제품에도 포함되었음

처음에는 Ubuntu 만 가능했지만 Windows 1709 부터 Windows Store 를 통해 배포되는 형식으로 바뀌면서 Fedora, SUSE 이미지도 제공됨… 그리고 점점 늘어나고 있긴 함.

그런데 이걸 어디다가 써먹지!!!???

일단은 무조건 개발자를 위한 도구라는 것!!!
일반적인 Linux 로 생각하고 사용하기에는 성능이 너무 너무 떨어짐.
Hyper-V에 Linux 설치한 것이 더 빠를지도 모름

BS 생각엔…
MS가 생각하길… 이대로 있다가는 안될 거 같아. 뭔가 변화가 필요해…
그리하여 MS는 Linux와 친해지고, Open Source Project 들과 친해지는 과정을 가는데…
GitHub를 인수하고, Eclipse 재단에 가입하고, MS의 OS가 아닌 환경을 위한 Visual Studio Code를 만들고, 몇몇 MS의 제품을 Open Source로 바꾸고…
그런 일련의 변화 중에서 Linux 개발을 위해 MS Windows 를 버리고 Linux 나 macOS 를 사용할 필요가 없이 Windows 하나로 모두 해결 가능한 상태를 만들고 싶었고,
Windows NT 시절의 그 모습이 떠올랐던게 아닐까? [위키의 Windows NT 구조]

아직은 갈 길이 멀지만… 업계에서 핫한 소프트웨어들 중심으로 점차 안정적인 모습을 갖춰가고 있음.

참고자료
[MS의 릴리즈 노트]

VM – Virtual Machine

VM(Virtual Machine)

물리 컴퓨터 안에서 가상의 컴퓨터를 만든 것을 말함
Java, Javascript, .NET Framework 등으로 만들어진 프로그램이 돌아가는 환경도 VM 이지만…
보통은 Host OS에서 가상화 솔루션들(Hyper-V, Xen, Parallels, VMWare, …)을 통해 사용하는 가상 컴퓨터를 뜻한다.
일반 사용자?들은 Windows – VMWare, macOS – Parallels, Linux – VirtualBox 정도를 많이 쓰는 듯…

Host OS

물리 컴퓨터에서 동작하는 OS

Guest OS

VM 내부에서 동작하는 OS

PV(Para-Virtualization)

Guest OS가 Para-API라고 불리우는 시스템콜을 통해 H/W에 직접 접근하는 방식의 가상화를 의미
당연히 H/W에 Host OS의 시스템콜을 통해 접근하므로 빠르다.
단, API의 기능에 의존적일 수 밖에 없고, Guest OS가 PV 를 지원해야 가능하다.
이에 따라 Guest OS 위에서 실행되는 프로그램이 요구하는 동작을 Host 의 API가 제공하지 않는 경우 실행 오류가 발생할 수 있다.

HVM(Hardware-assisted Virtual Machine)

H/W 전체를 가상화한다. 그래서 Guest OS의 수정이 없이 사용할 수 있다. (물론 Guest OS가 HVM이 제공하는 가상 H/W를 지원해야 하겠지만…)
Guest OS를 수정하지 않고 사용한다는 것은 Guest OS 위에 실행되는 대부분의 프로그램이 물리 컴퓨터에 설치했을 때와 동일한 동작을 보장한다.
하지만, 전체를 가상화하기 때문에 성능은 PV보다 떨어진다. 이를 개선하기 위해 일부 Hypervisor는 Guest OS에 서비스 프로그램을 설치하거나, 디바이스 드라이버를 설치해서 가속해주는 기능을 제공하기도 한다.

Hypervisor

PV나 HVM을 Host OS에서 만들어 주는 소프트웨어를 말한다.
Hyper-V, VMWare, Parallels, Xen 등등이 있다.
BS의 경험으로는 가정용이 아니라면 Hyper-V, Xen, VMWare 정도가 아닐까 생각된다.
각자의 장단점이 있기 때문에 이것이 정답이다 라고 할 수 없지만, 사설 가상화 환경을 구축한다면 아무래도 Host 에 Linux, Hypervisor는 Xen이 무난할 거 같다.

가상화 vs 물리 서버

가상화를 사용하면
OS 구매 비용에 대한 부담이 줄어들고
H/W 구매에 대한 부담도 줄어들고
서버 이전이 용이하고
프로그램을 통한 서버 확장, 축소가 가능하고
서비스의 이용량에 따라 동적으로 사용할 수 있어 전체적으로 비용 절감의 효과가 있다
하지만 네이X나 카카X처럼 시도 때도 없이 접속자가 있고 장사가 잘 되면 오히려 비용이 늘어날 수 있다.
가상화로 가볍게 시작해서 어느 수준이 넘어서면 자체적인 가상화를 마련해야 한다.

가상화 vs 에뮬레이터

에뮬레이터는 H/W를 제어하는 기능을 소프트웨어로 흉내내는 것이다.
예를 들어, x86 계열의 CPU를 사용하는 PC에서 히타치 SuperH-2 CPU를 사용하는 Sega Saturn 게임기 소프트웨어를 구동하는 에뮬레이터의 경우
소프트웨어가 실행하는 기계어나 H/W 입출력을 Host의 H/W에 맞게 변환해서 실행하고 그 결과를 다시 변환해서 소프트웨어에게 알려주는 구조이다.
이런 명령 변환 과정이 있기 때문에 에뮬레이터는 성능이 좋을 수 없다.
가상화는 이런 변환 과정이 거의 없다.
Host의 CPU가 x86계열인데 Guest의 OS를 ARM용 Android로 설치할 수 없다.
Guest도 역시 x86을 위한 OS여야 한다.
물론 NIC, VGA, HDD, ODD 등의 H/W는 일부 에뮬레이션을 하기도 한다.

참고자료

[Xen Project]
자칭 업계 표준 가상화 솔루션
PV, HVM 모두 지원한다. HVM의 경우 QEMU 기반의 에뮬레이션에 위에서 설명한 Guest OS용 프로그램을 통해 PV 수준의 I/O를 사용할 수 있다고 한다.

[VMWare]
데스크탑 제품군에서 서버 제품군까지 오래전부터 가상화에 열심히 달려온 기업이다.
쌓인 것이 많으니 당연히 화려한 기능들이 많지만 역시 가격이…
BS는 Windows 데스크탑 제품군에서 Hyper-V 가 기본 내장되면서부터 거의 사용하지 않는다.
과자 찾아서 먹이기도 싫고, 돈 주고 사기도 싫고, 평가판은 더 싫고, 무료 제품은 쓸 이유가 없어서…

[VirtualBox]
Innotek GmbH 라는 독일 회사에서 시작해서
BS는 Sun Microsystems 가 인수한 뒤에 사용했었는데
이후 Oracle이 Sun을 인수하면서… 그냥 사용하지 않기로.
왠지 Oracle이 인수한 Open Source 관련된 모든 것이 정상적이지 않게 되어 사용 안함.

[Hyper-V]
MS의 Hypervisor로 BS가 사용하는 오래된 노트북에서도 VMWare나 VirtualBox와 달리 문제없이 사용할 수 있다.
독립 설치형 미디어도 있고(이걸 설치하면 일반적은 Windows 사용은 못하고 오로지 Hyper-V만 사용할 수 있음)
Windows Server에 기능을 추가하여 사용하거나
Windows Desktop에 기능을 추가하여 사용할 수 있다.
MS가 개발도구에 모바일 환경을 추가하면서 모바일 환경과 유사한 환경을 제공해서 디버깅을 할 수 있어야 함을 깨닫고?
Windows Desktop 제품인 Windows 8 에 추가하면서 일반 사용자들도 사용할 수 있게 되었다.
따라서 Server 제품군의 Hyper-V를 Desktop 제품군의 Hyper-V에서 바라지는 말자.