문서의 임의 삭제는 제재 대상으로, 문서를 삭제하려면 삭제 토론을 진행해야 합니다. 문서 보기문서 삭제토론 와인(소프트웨어) (문단 편집) == 개발 과정 == 1993년 6월자 comp.os.linux의 유즈넷 관련 토론으로 시작되었다. Wine의 일차적인 목표는 다음과 같다. 윈도 프로그램을 돌리기 위해서 윈도에서 제공하는 [[애플리케이션 프로그래밍 인터페이스|API]]/ABI를 똑같이 제공한다. 이 목표를 달성하기 위하는 가장 쉬운 방법은 윈도의 바이너리 코드를 [[리버스 엔지니어링]]으로 필요한 코드를 얻은 다음 필요에 맞게 변형하는 것이다. 또 [[Windows 2000]]과 [[Windows NT 4.0]]은 이미 2004년에, [[Windows XP]]와 [[Windows Server 2003]]은 2020년에 '''소스코드의 일부가 유출됐다.'''[* [[마이크로소프트]]는 2001년 5월부터 [[OEM]] 파트너, 일부 국가의 정부, 일부 개발자들을 대상으로 자사 제품의 소스 코드를 '''공유할 수 있게''' 만든 'Shared Source Initiative'라는 프로그램을 운영한다. 따라서 MS 개발자가 아닌 사람들 중에도 MS 제품의 소스코드를 입수할 수 있는 사람들이 이미 꽤 많은 상태이다. 그래서 이들 중에 일부가 소스코드를 맘대로 또는 실수로 유출시키는 일들이 벌어진 것이다.] 하지만 이런 것들을 가져다 쓰면 안 되는데, 동일한 코드가 들어가면 [[저작권]] 분쟁이 생기는 것이다.[* 실제로 [[ReactOS]] 쪽에서 개발 중에 MS의 바이너리와 동일한 어셈블리 코드가 들어간 게 발견된 바람에 털린 적이 있다. '''Windows는 엄연히 돈 받고 파는 상품이다.'''] 그래서 Wine 측에서는 윈도 API에 대해서 API 문서나 MS의 지원 페이지는 열심히 참고할 수 있고, 코드에 대해서 여러 가지 실험을 해 볼 수도 있지만, 코드를 까서 보는 것은 안되며, 지원 페이지 중에서도 API가 구현된 방식에 대해서 설명된 것은 보지 못하도록 규칙을 정하고 있다. 정확하게는 Wine을 직접 개발하는 프로그래머들이 절대로 윈도의 구성 요소를 역어셈블하지 않고 유출된 소스코드도 보지 않은 채 스스로 온갖 삽질을 하면서 독자적인 Wine 소스코드를 작성하면, 그 코드를 다른 프로그래머들이 혹시 Windows의 역어셈블한 코드나 유출된 코드와 비슷하지 않은지 검토해서 비슷하지 않으면 차기 버전으로 공개하는 식으로 프로젝트를 진행한다고 한다. 곧 Wine의 개발자들은 Wine 위에서 윈도용 소프트웨어가 '''작동하는 것'''은 Windows 위에서 실행하는 것과 동일하도록 만들어야 하지만 Wine 자체의 '''구조'''를 윈도 내부와 다르게 만들어야 한다는, 어찌 보면 '''서로 지향점이 반대인 두 가지 목표'''를 '''항상''' 한꺼번에 달성해야 하기에 --이걸로 돈을 버는 것도 아니면서-- 굉장히 어려운 작업을 하고 있는 셈이다. --감사해야 한다.-- 그렇다면, 어차피 API는 프로그램 제작자를 위해 깔끔하게 정리돼 있으니까, '각 파일에 대해서 마이크로소프트가 제공하는 공식 API 문서에 규격화된 대로 구현만 하면 될까?'라고 생각할 수 있으나, 그것도 여의치 않다. * Windows에서 제공하는 API를 그대로, 정말 있는 그대로, MS에서 잘못 만든 버그마저 똑같이 구현해야 Windows 프로그램을 돌릴 수 있다. 프로그램 개발자 입장에서 이런 버그 때문에 덧댄 부분이 의도치 않게 동작할 수도 있고, 생각없이 버그가 정상적인 결과인 줄 알고 버그를 활용했을 수도 있고, 다른 버그를 가리기 위하는 별수 없는 수단으로 이 버그를 활용했을 수도 있다. * 또 앱 개발자들이 기본적인 윈도 API만을 써서 만드는 것도 아니라, 하드웨어를 직접 조작하는 요령을 부린 프로그램들도 있다. 이러면 호환성은 떨어져도 성능 면에서 이득이기 때문이다. --Wine에서는 성능이 더 떨어질 수 있다.-- * Windows도 매년 새로운 API와 기능이 추가된다. 그런데 [[ZD|어떤 한]] [[https://news.naver.com/main/read.nhn?mode=LSD&mid=sec&oid=092&aid=0002179325&sid1=001|기사]]에서 [[마이크로소프트]]가 오픈소스 기여에 참여한 것을 명분으로 Windows 소스 코드를 자발적으로 Wine에 제공했다는 내용이 보도되었지만, 실제로는 관계 없는 이야기에 기자 자신의 뇌피셜을 섞어 쓴 것에 불과한 것으로 나중에 밝혀졌다. 사실 MS의 변호인 브리핑 내용은 API 저작권에 대한 마이크로소프트의 입장일 뿐, MS가 Wine 프로젝트에 기여했다는 내용이 아니다.저장 버튼을 클릭하면 당신이 기여한 내용을 CC-BY-NC-SA 2.0 KR으로 배포하고,기여한 문서에 대한 하이퍼링크나 URL을 이용하여 저작자 표시를 하는 것으로 충분하다는 데 동의하는 것입니다.이 동의는 철회할 수 없습니다.캡챠저장미리보기