<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>김 용묵의 절대공간 - 블로그: EXE와-DLL의-경계-1에 달린 최근 댓글/트랙백 목록</title>
		<link>http://moogi.new21.org/tc/</link>
		<description>그런즉 이제 애호박, 단호박, 늙은호박 이 셋은 항상 있으나, 그 중에 제일은 늙은호박이니라.</description>
		<language>ko</language>
		<pubDate>Thu, 16 Jul 2026 01:51:29 +0900</pubDate>
		<generator>Textcube 1.7.8 : Con moto</generator>
		<image>
		<title>김 용묵의 절대공간 - 블로그: EXE와-DLL의-경계-1에 달린 최근 댓글/트랙백 목록</title>
		<url>http://moogi.new21.org/tc/attach/1/1226640661.jpg</url>
		<link>http://moogi.new21.org/tc/</link>
		<width>216</width>
		<height>185</height>
		<description>그런즉 이제 애호박, 단호박, 늙은호박 이 셋은 항상 있으나, 그 중에 제일은 늙은호박이니라.</description>
		</image>
		<item>
			<title>Lyn님의 댓글</title>
			<link>http://moogi.new21.org/tc/1045#comment8677</link>
			<description>맥의 유니버셜 바이너리가 부러워지는 때입니다 ㅡㅜ</description>
			<author>(Lyn)</author>
			<guid>http://moogi.new21.org/tc/1045#comment8677</guid>
			<comments>http://moogi.new21.org/tc/1045#comment</comments>
			<pubDate>Wed, 31 Dec 2014 14:58:54 +0900</pubDate>
		</item>
		<item>
			<title>사무엘님의 댓글</title>
			<link>http://moogi.new21.org/tc/1045#comment8678</link>
			<description>맥OS는 osxcr???.so (OS X C-runtime) 이런 문제가 있지는 않나 궁금하네요. ㅋㅋㅋㅋ
xcodecr???.so (xcode C-runtime)가 운영체제 보급품과는 따로 논다거나..</description>
			<author>(사무엘)</author>
			<guid>http://moogi.new21.org/tc/1045#comment8678</guid>
			<comments>http://moogi.new21.org/tc/1045#comment</comments>
			<pubDate>Wed, 31 Dec 2014 15:49:28 +0900</pubDate>
		</item>
		<item>
			<title>Lyn님의 댓글</title>
			<link>http://moogi.new21.org/tc/1045#comment8679</link>
			<description>맥OS는 .so 가 아니라 .dylib 에요 ㅎㅎ

맥OS는 전통적으로 dynamic 이 아닌 static link 를 굉장히 선호 하고, 만약 dynamic 으로 배포 하더라도 한 파일로 다 패키징 해서 배포하는게 보통이라 (요즘은 규모가 커지다보니 덜 그렇지만... 간단하게 윈도우에서 DLL 이나 모든 데이터를 다 exe 파일의 리소스로 넣는 식이라고 보시면 편합니다) 그런문제가 덜합니다. 심지어는 iOS 는 아예 dynamic link 자체가 안되요

그리고 컴파일러와 OS 의 버전 차이로 생길수 있는 문제는.... 그냥 새 컴파일러로 빌드 안하면 새 OS에서 안돌아가게 만들어 버리는걸로 해결합니다 (...)

윈도우 처럼 하위버전 컴파일러에서 상위 OS의 API 를 동적으로 끌어다 쓰는것도 가능 하긴 하지만 ... 사실상 OS가 아니라 펌웨어가 되버린 상황이라 거의 대부분의 유저들이 버전 업을 하니 그런 면에서는 부담이 적은 편이지요</description>
			<author>(Lyn)</author>
			<guid>http://moogi.new21.org/tc/1045#comment8679</guid>
			<comments>http://moogi.new21.org/tc/1045#comment</comments>
			<pubDate>Wed, 31 Dec 2014 16:44:21 +0900</pubDate>
		</item>
		<item>
			<title>Lyn님의 댓글</title>
			<link>http://moogi.new21.org/tc/1045#comment8680</link>
			<description>dll의 exe의 경계는...

WinMain이 엔트리포인트냐 아니냐의 차이 같습니다 ㅋㅋ</description>
			<author>(Lyn)</author>
			<guid>http://moogi.new21.org/tc/1045#comment8680</guid>
			<comments>http://moogi.new21.org/tc/1045#comment</comments>
			<pubDate>Wed, 31 Dec 2014 16:15:43 +0900</pubDate>
		</item>
		<item>
			<title>Lyn님의 댓글</title>
			<link>http://moogi.new21.org/tc/1045#comment8681</link>
			<description>게다가 MacOS 는 베이스가 되는 런타임이 C 기반이 아니라 Obj-C 기반인 Cocoa 이고, Obj-C 는 매소드 링크가 컴파일 타임이 아닌 런타임에 이루어 지기 때문에 비교적 그런 문제에서 자유롭습니다.

... 문제는 매소드 호출의 오버헤드가 그만큼 크다는거지만</description>
			<author>(Lyn)</author>
			<guid>http://moogi.new21.org/tc/1045#comment8681</guid>
			<comments>http://moogi.new21.org/tc/1045#comment</comments>
			<pubDate>Wed, 31 Dec 2014 16:44:34 +0900</pubDate>
		</item>
		<item>
			<title>사무엘님의 댓글</title>
			<link>http://moogi.new21.org/tc/1045#comment8783</link>
			<description>오덕 인증. ㅋㅋㅋㅋ
그나저나 확실히 개발 분야뿐만 아니라 개발 환경의 세대차이를 느끼게 하는 대목이네요. 기윤 님 정도의 Windows 프로그래밍 경력으로 DLL을 만들 일이 지금까지 없으셨다니. &amp;lt;날개셋&amp;gt; 한글 입력기는 커널 라이브러리는 말할 것도 없고 플러그 인, IME 외부 모듈, 훅 프로시저까지 전부 DLL이지요.</description>
			<author>(사무엘)</author>
			<guid>http://moogi.new21.org/tc/1045#comment8783</guid>
			<comments>http://moogi.new21.org/tc/1045#comment</comments>
			<pubDate>Mon, 05 Jan 2015 11:07:34 +0900</pubDate>
		</item>
		<item>
			<title>김 기윤님의 댓글</title>
			<link>http://moogi.new21.org/tc/1045#comment8781</link>
			<description>프로그래밍도 프로그래밍이지만, 저는 A와 B의 경계라고 하니까, 오덕력이 발휘해 버리네요(..)

파동과 입자의 경계
인간과 요괴의 경계
생과 사의 경계
이차원과 삼차원의 경계
색과 공의 경계

등의 기술을 가지고 있는 캐릭터라거나 (...)


각설하고, 플밍을 접한 지로 10년이 넘어가는데, 저는 아직도 DLL 을 한번도(!!) 만든 적이 없네요.
아직까지는 그냥 exe 만으로 충분했거나, 혹은 이제 그런게 아무래도 좋은 모바일 계열로 넘어간다거나
하다보니, dll 을 쓸 일이 없었습니다..(..</description>
			<author>(김 기윤)</author>
			<guid>http://moogi.new21.org/tc/1045#comment8781</guid>
			<comments>http://moogi.new21.org/tc/1045#comment</comments>
			<pubDate>Mon, 05 Jan 2015 09:17:37 +0900</pubDate>
		</item>
		<item>
			<title>사무엘님의 댓글</title>
			<link>http://moogi.new21.org/tc/1045#comment8687</link>
			<description>감사합니다. 맥까지 정말 모르는 게 없으시네요~ ^^;; OS가 아니라 펌웨어래.. ㅋㅋㅋㅋ
확실히 Windows만 유난히도 DLL+스레드를 좋아하긴 하는군요.
그리고 옵씨는 메시지 방식이어서 Windows의 C++ 개발처럼 가상 함수가 바뀔 때마다 DLL 심벌이 다 바뀌고 바이너리 호환성이 깨지는 걱정을 할 필요가 없어서 참 좋긴 하겠습니다.</description>
			<author>(사무엘)</author>
			<guid>http://moogi.new21.org/tc/1045#comment8687</guid>
			<comments>http://moogi.new21.org/tc/1045#comment</comments>
			<pubDate>Wed, 31 Dec 2014 19:53:23 +0900</pubDate>
		</item>
		<item>
			<title>사무엘님의 댓글</title>
			<link>http://moogi.new21.org/tc/1045#comment8688</link>
			<description>진짜로 엔트리포인트 함수의 프로토타입의 차이밖에 없는 거나 마찬가지 같네요.
EXE는 int func() 밖에 없고 나머지 핸들 같은 부가정보는 C 라이브러리가 GetStartupInfo, GetModuleHandle, GetCommandLine 같은 Windows API를 따로 호출해서 얻어 와서 WinMain에다 전달하는 반면,
DLL과 함께 전달되는 reason은 운영체제가 직통으로 함수 인자로 전해 주지요~</description>
			<author>(사무엘)</author>
			<guid>http://moogi.new21.org/tc/1045#comment8688</guid>
			<comments>http://moogi.new21.org/tc/1045#comment</comments>
			<pubDate>Wed, 31 Dec 2014 19:55:13 +0900</pubDate>
		</item>
		<item>
			<title>Lyn님의 댓글</title>
			<link>http://moogi.new21.org/tc/1045#comment8689</link>
			<description>유닉스 계열은 전통적으로 fork 기반으로 많이 움직였으니까요.

그 당시엔 커넥션간 인터렉션 자체가 거의 없는 시대이기도 했고(사실 요즘 그 시절로 다시 돌아가는게 아닌가 싶기도 합니다.... 게임이나 메신저 같은게 아니라면) 프로세스 생성이 굉장히 가볍기도 하고... Linux 같은경우는 상당히 오랜 기간 Kernel mode thread 가 없었다는 이유도 있었겠지요. 작업용이 아니라 서버용이었으니까

윈도는 프로세스 생성이 아무래도 상당히 느린 편이고 대신 Thread 성능이 굉장히 좋은 편인데다 개인용으로 많이 쓰이는 이슈가 컸을 것 같습니다.

개인용으로 쓸땐 아무래도 프로세스가 여러개 체인이 걸리면 사용자 실수로 죽일 가능성도 높으니까요</description>
			<author>(Lyn)</author>
			<guid>http://moogi.new21.org/tc/1045#comment8689</guid>
			<comments>http://moogi.new21.org/tc/1045#comment</comments>
			<pubDate>Thu, 01 Jan 2015 01:53:55 +0900</pubDate>
		</item>
	</channel>
</rss>
