<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="http://valley.egloos.com/rss/style/style.xsl" type="text/xsl" media="screen"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel>
		<title>이글루스 'semaphore' 태그 최근글</title>
		<link>http://valley.egloos.com/tag/semaphore</link>
		<description>semaphore</description>
		<language>ko</language>
		<pubDate>Sun, 21 Nov 2010 00:11:52 +0900</pubDate>
		<generator>Egloos</generator>
		<item>
	<title><![CDATA[쓰레드(Thread) 동기화 예제 소스]]></title>
	<link>http://dakuo.egloos.com/1122158</link>
	<guid>http://dakuo.egloos.com/1122158</guid>
	<description>
	<![CDATA[ 
메모리 접근 동기화 :  1. 크리티컬 섹션(Critical Section) 기반의 동기화 - 유저 모드   Critical_SectionEx.cpp 2. 인터락 함수(Interlocked Family Of Function) 기반의 동기화 - 유저 모드   interlockedEx.cpp 3. 뮤텍스(Mutex) 기반의 동기화 - 커널 모드   MutexEx.cpp 4. 세마포어(Semaphore) 기반의 동기화 - 커널 모드   SemaphoreEx.cpp 5. 이름있는 뮤텍스(Named Mutex) 기반의 프로세스 동기화 - 커널 모드   NamedMutexEx.cpp    실행 순서의 동기화 :  1. 이벤트 기반의 동기화   EventEx.cpp 2. 이벤트 + 뮤텍스 동기화   EventMutexE	]]>
	</description>
	<pubDate>Sun, 21 Nov 2010 00:11:52 +0900</pubDate>
	<dc:creator><![CDATA[dakuo]]></dc:creator>
</item>
<item>
	<title><![CDATA[Kernel Locking Techniques]]></title>
	<link>http://shad0w.egloos.com/1378134</link>
	<guid>http://shad0w.egloos.com/1378134</guid>
	<description>
	<![CDATA[ 
  커널 락킹에 대한 좋은 문서입니다.  리눅스 저널에 기고된 기사이며, 2002년에 작성되었는데 내용이 좋아 많은 이들에게  좋은 공부자료로 사용되고 있는 거 같습니다.   http://www.linuxjournal.com/article/5833   written by Robert Love (rml@tech9.net) is a Computer Science and Mathematics   student at the University of Florida and a kernel engineer at MontaVista Software.   Robert is the maintainer of the preemptible kernel and is involved in various other kernel   de	]]>
	</description>
	<pubDate>Mon, 20 Apr 2009 14:57:19 +0900</pubDate>
	<dc:creator><![CDATA[Always as First]]></dc:creator>
</item>
<item>
	<title><![CDATA[POSIX semaphore]]></title>
	<link>http://purewell.egloos.com/3945459</link>
	<guid>http://purewell.egloos.com/3945459</guid>
	<description>
	<![CDATA[ 
POSIX 함수에 대해 글 쓴 지가 너무 오래 전이라 까맣게 잊고 있었다. 오늘은 두서 없이 세마포어라는 놈을 건들여보도록 하자. 일단 세마포어 하면 유명한 예제가 있다. 철학자라는 것들이 가서 포크랑 나이프랑 한 벌 씩 더 가져오면 해결할 수 있는 문제를 굳이 앉아서 남이 썼던 것 더럽게 씻지도 않고 빌려쓰고... 암튼 그런 드러운 문제를 해결하기 위해 세마포어가 탄생했다...라고 하는데 드럽긴 마찬가지고 좀 그렇다. 세마포어 개념은 안드로메다 같은 곳에서 찾아보길 바란다. 그래도 귀찮은 사람은 세마포어를 들어갈 수 있는 사람 수를 한정한 매점(PX?)이라고 생각해도 좋을 것이다. '세마포어 값'은 매장에 들어갈 수 있는 사람 수 여분을 뜻한다.    일단 세마포어도 SysV에서 뛰쳐나온 IPC개념인데, 	]]>
	</description>
	<pubDate>Fri, 17 Oct 2008 14:19:35 +0900</pubDate>
	<dc:creator><![CDATA[Purewell.BIZ]]></dc:creator>
</item>
<item>
	<title><![CDATA[뮤텍스랑 바이너리 세마포어랑...]]></title>
	<link>http://handmade.egloos.com/4074857</link>
	<guid>http://handmade.egloos.com/4074857</guid>
	<description>
	<![CDATA[ 
이색퀴들이 뭐가 다른지 알아보려고 적으려다가 결판을 못낸...    이놈의 뮤텍스와 세마포어는 뭐가 다른가!    lkd&amp;gt; dt _KMUTANT  nt!_KMUTANT     +0x000 Header           : _DISPATCHER_HEADER     +0x010 MutantListEntry  : _LIST_ENTRY     +0x018 OwnerThread      : Ptr32 _KTHREAD     +0x01c Abandoned        : UChar     +0x01d ApcDisable       : UChar      lkd&amp;gt; dt _KSEMAPHORE  nt!_KSEMAPHORE     +0x000 Header           : _DISPATCHER_HEADER   	]]>
	</description>
	<pubDate>Thu, 10 Jan 2008 21:22:19 +0900</pubDate>
	<dc:creator><![CDATA[獨手工房]]></dc:creator>
</item>
<item>
	<title><![CDATA[쓰레드와 스레드 동기화 III]]></title>
	<link>http://handmade.egloos.com/3973192</link>
	<guid>http://handmade.egloos.com/3973192</guid>
	<description>
	<![CDATA[ 
 쓰레드와 쓰레드 동기화 II  솔직히 이걸가지고 3편에 걸쳐서 쓰기(라고 적었지만.. 실제적인 내용은 이 앞의 포스팅으로 끝..)엔 너무 질질 끄는 느낌이다.    우선 파일하나 받으시고..    남은 질문들은 다음과 같다.  테이블 핸들값을 3개의 레이어로 나눴다. 왜?! '3개'로 나눴을까? 2개, 4개는 안되나? 더 많이 나누면 메모리를 더 효율적으로 쓸수 있을거 같은데.. 왜! 굳이 3개로 나눴나?WinDbg로 핸들 카운트, 레포런스 카운트를 보여줘! 보여주라고! XP에서도 되는 방법을 찾아서 알려줘!쓰레드의 대기 리스트에 있는 모든 쓰레드의 정보를 정확하게 알수 있지 않을까? (하지만..쓰레드 대기 리스트는 항상 변경되는데.. 알 방법이 있나?)프로그래밍을 통해서(Ex&amp;gt; SetThreadPri	]]>
	</description>
	<pubDate>Fri, 30 Nov 2007 20:08:15 +0900</pubDate>
	<dc:creator><![CDATA[獨手工房]]></dc:creator>
</item>
<item>
	<title><![CDATA[쓰레드와 쓰레드 동기화.]]></title>
	<link>http://handmade.egloos.com/3965729</link>
	<guid>http://handmade.egloos.com/3965729</guid>
	<description>
	<![CDATA[ 
동시에 다양한 작업을 하기위해 멀티 프로세스 방식을 사용할수 있다.  멀티 프로세스 방식을 사용할때 많은수의 프로세스 생성은 빈번한 컨텍스트 스위칭(Context Switching)으로 이어져 성능에 부담을 준다.     쓰레드는 프로세스의 정보를 공유하기 때문에, 쓰레드 간에 컨텍스트 스위칭이 발생하더라도, 프로세스간 컨텍스트 스위칭보다 부담이 덜하다.     프로세스와 쓰레드의 차이점  쓰레드는 하나의 프로그램 내에서 여러 개의 실행 흐름을 두기 위한 모델쓰레드는 프로세스처럼 완벽히 독립적인 구조가 아님. 쓰레드들 사이에는 프로세스의 정보를 공유.쓰레드는 공유하는 요소가 있기 때문에 컨텍스트 스위칭에 걸리는 시간이 프로세스에 비해 짧음  쓰레드 특성  쓰레드별로 독립적으로 스택을 할당 받는다.   스택은	]]>
	</description>
	<pubDate>Tue, 27 Nov 2007 19:18:54 +0900</pubDate>
	<dc:creator><![CDATA[獨手工房]]></dc:creator>
</item>
	</channel>
</rss>

