Microsoft MVP성태의 닷넷 이야기
개발 환경 구성: 9. VPC로 구성하는 개인 환경 [링크 복사], [링크+제목 복사],
조회: 18694
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

혹시 저처럼 개발 환경을 구성하고 계신 분이 있을지 모르겠네요. ^^

개발자 분들이라면 잘 알고 계시겠지만. 운영 체제를 가끔 새로 설치하고 싶을 때가 있지요. 아니면 새로운 운영체제가 나와서 재설치를 해야 하는 경우도 있습니다.
저 같은 경우에는, 한번 PC에 운영체제를 설치하면 특별한 사유가 없는 한 거의 재설치는 하지 않습니다. 이 노트북도 지금 구입한지 1년 6개월 정도가 지났지만 처음 구매하고 설치한 운영체제 그대로 사용하고 있는 중입니다.
그렇긴 해도 역시나 언젠가는 운영체제를 밀어야 할 일이 있긴 하지요.

운영체제 밀고 다시 설치할 때, 가장 고민이 되는 부분이 "개인 환경"일 것입니다.
이메일도 잡아줘야 하고 - 솔직히 비밀번호조차도 가물가물합니다. - 각종 응용 프로그램의 Configuration도 이전 환경과 같이 잡아줘야 하지요.
그런 잡다한 설정이 정말이지 ^^; 너무 싫어서 저는 몇달 전부터 Virtual PC / Server를 활용해오고 있습니다.

개념은 간단합니다. ^^ 자신의 PC에 Virtual Server 또는 Virtual PC를 설치하시고요. (두 개 모두 무료인 거 아시죠?)
그 안에 새로운 운영체제를 설치합니다.

이후에, 그 운영체제에 아웃룩, 블로그 리더, 잘 쓰지 않는 2차 메신저 등을 설치하면 끝입니다.
앞으로는 호스트 운영체제는 적당히 재설치하시고요. 거기에 Virtual Server를 재설치 한 다음, 기존 구성해 놓은 VHD 파일을 붙여만 주시면 개인 운영 환경은 모두 재설정된 셈입니다. ^^

직업이 이렇다 보니 부가적으로 원격 개발 용도의 PC처럼 사용할 수 있다는 장점도 있기 때문에 ^^ 괜찮은 것 같습니다.

그 외에 자잘한 얘기를 더 하자면. 저 같은 경우에 Windows 2003을 노트북에 설치해서 사용하는데, 문제는 Windows 2003용으로 나온 적절한 비디오 카드 디바이스 드라이버가 없다는 것입니다.
그래서 ^^; 웬만큼 GUI 요소를 사용하는 프로그램들이 올라오게 되면 GDI 리소스에 문제가 발생하게 되는데요. 그래서, GDI 요소를 많이 잡는 프로그램들까지도 Virtual PC/Server에 설치를 해버렸습니다.

---------------
아무리 그래도 좀 출혈이 큰가요? ^^

Virtual PC/Server를 응용하게 되면 메모리가 많이 필요합니다. 저는 위의 VHD에 512 MB를 할당했습니다. 다행히 노트북 메모리를 2GB로 업그레이드해서 그나마 여유가 있지요. ^^
노트북 메모리 가격도 무척 저렴해 졌으니 이 부분은 자신이 마음만 먹으면 그다지 어렵지 않게 해결하실 수 있을 것입니다.

문제는,,, ^^ CPU 스케쥴링인데요. 대부분 기존 노트북 CPU는 하이퍼 쓰레딩조차도 지원을 안하는 순수 Single Core CPU죠.
개인적으로 이 점이 무척 아쉬운 부분인데요. 내년에 ^^ 제 노트북 교환 시기가 되면 그때는 정말 제대로 된 Core Duo 노트북을 장만할까 합니다. ^^
그때가 되면, 제법 부드러운 CPU 스케쥴링을 경험할 수 있겠지요. ^^ ( 그나저나, 노트북 CPU에도 가상화 기법을 구현하려나? ^^ )








[최초 등록일: ]
[최종 수정일: 6/24/2021]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 46  47  48  49  50  51  52  53  54  55  56  57  58  59  [60]  ...
NoWriterDateCnt.TitleFile(s)
12474정성태1/4/202120123.NET Framework: 994. C# - (.NET Core 2.2부터 가능한) 프로세스 내부에서 CLR ETW 이벤트 수신 [1]파일 다운로드1
12473정성태1/4/202119013.NET Framework: 993. .NET 런타임에 따라 달라지는 정적 필드의 초기화 유무 [1]파일 다운로드1
12472정성태1/3/202118978디버깅 기술: 178. windbg - 디버그 시작 시 스크립트 실행
12471정성태1/1/202119771.NET Framework: 992. C# - .NET Core 3.0 이상부터 제공하는 runtimeOptions의 rollForward 옵션 [1]
12470정성태12/30/202019807.NET Framework: 991. .NET 5 응용 프로그램에서 WinRT API 호출 [1]파일 다운로드1
12469정성태12/30/202024078.NET Framework: 990. C# - SendInput Win32 API를 이용한 가상 키보드/마우스 [1]파일 다운로드1
12468정성태12/30/202020846Windows: 186. CMD Shell의 "Defaults"와 "Properties"에서 폰트 정보가 다른 문제 [1]
12467정성태12/29/202020751.NET Framework: 989. HttpContextAccessor를 통해 이해하는 AsyncLocal<T> [1]파일 다운로드1
12466정성태12/29/202018201.NET Framework: 988. C# - 지연 실행이 꼭 필요한 상황이 아니라면 singleton 패턴에서 DCLP보다는 static 초기화를 권장 [1]파일 다운로드1
12465정성태12/29/202021928.NET Framework: 987. .NET Profiler - FunctionID와 연관된 ClassID를 구할 수 없는 문제
12464정성태12/29/202019673.NET Framework: 986. pptfont.exe - PPT 파일에 숨겨진 폰트 설정을 일괄 삭제
12463정성태12/29/202018612개발 환경 구성: 520. RDP(mstsc.exe)의 다중 모니터 옵션 /multimon, /span
12462정성태12/27/202021173디버깅 기술: 177. windbg - (ASP.NET 환경에서 유용한) netext 확장
12461정성태12/21/202020871.NET Framework: 985. .NET 코드 리뷰 팁 [3]
12460정성태12/18/202018881기타: 78. 도서 소개 - C#으로 배우는 암호학
12459정성태12/16/202020489Linux: 35. C# - 리눅스 환경에서 클라이언트 소켓의 ephemeral port 재사용파일 다운로드1
12458정성태12/16/202017512오류 유형: 694. C# - Task.Start 메서드 호출 시 "System.InvalidOperationException: 'Start may not be called on a task that has completed.'" 예외 발생 [1]
12457정성태12/15/202018583Windows: 185. C# - Windows 10/2019부터 추가된 SIO_TCP_INFO파일 다운로드1
12456정성태12/15/202019620VS.NET IDE: 156. Visual Studio - "Migrate packages.config to PackageReference"
12455정성태12/15/202019102오류 유형: 693. DLL 로딩 시 0x800704ec - This Program is Blocked by Group Policy [1]
12454정성태12/15/202019594Windows: 184. Windows - AppLocker의 "DLL Rules"를 이용해 임의 경로에 설치한 DLL의 로딩을 막는 방법 [1]
12453정성태12/14/202020577.NET Framework: 984. C# - bool / BOOL / VARIANT_BOOL에 대한 Interop [1]파일 다운로드1
12452정성태12/14/202020912Windows: 183. 설정은 가능하지만 구할 수는 없는 TcpTimedWaitDelay 값
12451정성태12/14/202018415Windows: 182. WMI Namespace를 열거하고, 그 안에 정의된 클래스를 열거하는 방법 [5]
12450정성태12/13/202019707.NET Framework: 983. C# - TIME_WAIT과 ephemeral port 재사용파일 다운로드1
12449정성태12/11/202020790.NET Framework: 982. C# - HttpClient에서의 ephemeral port 재사용 [2]파일 다운로드1
... 46  47  48  49  50  51  52  53  54  55  56  57  58  59  [60]  ...