C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
분야별 포럼
C++빌더
델파이
파이어몽키
C/C++
프리파스칼
파이어버드
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

자유게시판
세상 살아가는 이야기들을 나누는 사랑방입니다.
[14524] 윈도우7의 하위버전 호환성
김상구.패패루 [peperu] 4702 읽음    2008-05-26 15:11
지난주 겨우 프린터 드라이버 개발 프로젝트의 첫 릴리즈 버전을 마치고 이제 좀 한 숨 돌릴 수 있게 됐습니다.
저로서는 드라이버 개발은 이번이 처음이었던 관계로 꽤나 고생을 했네요.
한가지 재밌는건, 보통은 프로젝트를 하나 마치고 나면 '아, 고생은 했지만 참 많이 배웠다...' 이런 생각이 들기 마련입니다만 이번 프로젝트만큼은 그런 느낌 보다는 '마이크로 소프트가 과연 윈도우 차기 혹은 차차기 버전의 소스 컨트롤을 해 낼 수 있을까?' 라는 의문이 들 정도로 윈도우 소스코드 내부는 개판 오분전일 것 같다는 생각을 떨칠 수가 없습니다.
업그레이드에 업그레이드를 거치면서, 하위 호환성을 유지하기 위해 자료 구조체는 떡칠에 떡칠을 해 놓은 느낌이고, 윈도우의 그래픽 시스템의 근간인 GDI 조차도 윈도우 버전별로 다른 동작을 보이는 판에 하나의 드라이버로 윈도우 2000, XP, VISTA에서 완벽하게 동일하게 동작하도록 만드는 것은 애시당초 불가능한 것은 아닌가...

그런데 오늘 조금 서핑을 하다보니 Windows7에서는 하위호환성을 상당부분 버리고 갈거라는 기사가 눈에 띄더군요. 저도 아직 내용을 제대로 읽어보지 않았기 때문에 링크를 걸지는 않습니다만, 기사 타이틀을 보는 것 만으로도 그럴만 하겠다는 생각이 들었습니다. 개인적인 느낌으로는 그래픽 엔진과 유저 인터페이스 쪽은 전면적인 수술이 필요할 듯 합니다. 전에 윈도우즈 모바일 7의 UI는 실버라이트로 간다는 기사를 본 적이 있는데, 제 생각엔 그게 데스크탑으로도 적용될 것 같습니다. MS가 가상화기술 업체들을 계속 인수하는 것도 사실은 하위 호환성을 가상화 기술로 커버하고 싶어하는게 아닐까 싶습니다. 윈도우 비스타가 사실상 실패한 지금으로써는 그게 마이크로소프트의 유일한 돌파구가 아닐까 싶네요.

지금까지 작성한 내용은 지극히 개인적인 경험에서 나온 추측일 뿐이므로 너무 심각하게 받아들이진 마시길 빕니다.
홍환민.행복 [hhshhm]   2008-05-26 16:32 X
그럴수 있겠군요..
간단한 프로그램조차도 하위호환성을 지키려면 엄청 복잡해지는데...
윈도우즈 같이 큰 프로그램은 또 어떨까...
이세상의 복잡성을 어떻게 관리하고 있을까.....
라는 생각을 하니까 머리가 뽀개지려고 하네요...

저만 이런 생각을 하는 것일까요?
제가 만들었던 간단한 프로그램조차 여러가지 경우의 수를 다 만족시키고,
여러 운영체제 및 독특한 PC운영환경 등에 다 작동하게 만드는 일...

점점 복잡성은 기하급수적으로 늘어갈텐데..
그런 것들이 어떻게 관리가 되는지 모르겠습니다.
Lyn [tohnokanna]   2008-05-26 16:33 X
개인적으론 Win64API에서 API 를 좀 정리했으면 했었습니다만...(어차피 16비트시절에 쓰던 파라메터, 함수는 다 쓸모 없으니까)

원소스로 32/64 다 지원하려는 전략인지 정리가 하나도 안되었더군요 ㅜㅜ
아제나 [azena]   2008-05-26 19:24 X
ㅎㅎ 그래도 윈도우 95/98 시절 커널에 비하면 지금 커널은 할아버지 수준이잖아요.
그거에 만족하며 살아야죠.
제 생각에는 MS에서 하위 호환성 포기하는 엄한 선택은 안 할 것이라고 봅니다.
MS에 돈을 지불하는 사람은 유저인데, 유저들은 호환성이 중요하지 코드의 지저분함은 중요하지 않거든요 ㅡ.ㅡ 개발자들이나 신경쓰죠 ㅡ.ㅡ
강신영.Divinespear [kang594]   2008-05-27 01:15 X
혹시나 해서 구글링 해보니 이런 글이 있군요.

http://windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/
김호광 [testcode]   2008-05-27 01:31 X
directx 10에서 그 전 버전의 레거시를 제거했습니다. -;; 욕 먹었죠. 그러나 개발 회사들이 잘 따라갑니다. ㅠㅠ
닷넷으로 세상을 새로 만들겠다고 하다가 결국 보니 MFC를 다시 확장해서 버전업했습니다.

윈도우95에서는 문명의 독특한 메모리 관리자의 사용법 - 도스 커널 버그를 이용한 메모리 할당까지도 시뮬레이션해줬습니다. 게임이 안돌면 운영체제는 망하는 길이라는 걸 잘 알았기 때문이죠

비스타의 경우에도 욕을 먹긴 했지만 게임의 호환성을 보장한다는 기본 방침에서는 어긋나지 않았습니다.

윈도우7에서는 느리게 돌겠지요. 아마도 윈도우 98이나 XP의 애뮬레이트 모드가 별도로 제공되지 않을까 싶습니다. 지금도 비스타에는 그 실행 파일이 95 . 98/ME, 2000, XP, XP sp2, windows 2003 등 호환성을 선택하게 되어 있습니다.

아무래도 몇몇 드라이버는 정리하고 최적화하여 배포될 것이 확실합니다.

특히 모든 윈도우 버그의 대다수인 엔비디아 칩셋의 드라이버 버그 문제에 대해서는 앞으로 호환성이나 테스트가 강화 될 것입니다.

예전에 OpenGL과 경쟁하기 위해서 D3D 호환 그래픽 카드를 남발한 레거시와 인텔 내장형 그래픽 카드에 비스타 사용이라고 남발했던 것들을 정리할 것이라 생각됩니다.
김호광 [testcode]   2008-05-27 01:33 X
한마디로, 이제는 사실상 대장이기 때문에 어느 정도 욕을 먹어도 유저들이 따라올 것이라 생각했던 비스타가 욕을 먹으니까 드라이버 레벨의 호환성과 안정성을 확보하되, 유저 편의성은 증가 시킬 것이라 생각됩니다...
김도완 [purplecofe2]   2008-05-27 09:38 X
일단 비스타의 한 문제라는 점유 용량 문제는 드라이버가 많아서 그러는 문제이니 해결보기는 힘들 것 같고(이건 호환성 문제가 아니네요 -_-), 비스타가 많은 기업들에서 퇴출당하고 있는 것을 보면 아마도 윈도우즈7이 조금 빠르게 나오지 않나 생각이 듭니다.

어느 칼럼 리스트가 비스타 문제에 대한 글 내용을 보면 호환성이라는 측면을 강하게 이야기하고 있더군요. 현재의 비스타를 채택하지 않는 이유 중 큰 것이 많은 이전의 회사에서 사용하는 프로그램이 운용되지 않아서 그렇다는 내용을 본 것 같습니다.


+ -

관련 글 리스트
14524 윈도우7의 하위버전 호환성 김상구.패패루 4702 2008/05/26
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.