2007-07-08 [ĹǯÆüµ­]

_[diary]¤¢¡¼¤¢¡¼¶È̳ϢÍí¥Ç¥¹

¤Ê¤Ë¤ä¤é7/10¤«¤éÆþ±¡¤¹¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤·¤¿¡£ ¤µ¤é¤Ã¤È½Ð½ê¤·¤¿¤¤¤È¤³¤Ç¤¹¤¬¡¢ °ì¥ö·î¤°¤é¤¤¤«¤«¤Ã¤Á¤ã¤¦¤«¤â¤·¤ì¤Ê¤¤¤½¡¼¤Ç¤¹¡£

¤á¤ó¤É¤¤¤Ç¤¹¤¬¡¢¤·¤ç¤¦¤¬¤Ê¤¤¤«¤ó¤¸¤Ç¤´¤¶¤¤¤Þ¤¹¡£

_[netbsd]pthread¿·ÈǤÈsaÈǤÎdiff

¤Ê¤ó¤Á¤å¡¼¤«°­Ì´¤òÉÔÀ°¹ç¤Ê¤¯¼è¤ê¹þ¤á¤¿¤è¤¦¤Êµ¤¤¬¤¹¤ë¤Î¤Ç¡¢ µ×¡¹¤Ë¥½¡¼¥¹ÆÉ¤ó¤Ç¤ß¤¿¤ê¡£

pthread.cº¹Ê¬¡¢ pthread_int.hº¹Ê¬¡¢ pthread_lock.cº¹Ê¬¡£ ¤Ê¤ó¤«¤ä¤Ã¤Ñ¤ê¤¢¤ó¤Þ¤êÊѤï¤Ã¤Æ¤Ê¤¤µ¤¤¬¤·¤Þ¤¹¤Ç¤¹¤è¡£

pthread__start()
 * sa_enable()¤·¤Ê¤¯¤Ê¤Ã¤¿
   ¤Ä¤Þ¤êupcall¤Ç¥¹¥ì¥Ã¥É¤¬³ä¤ê¹þ¤Þ¤ì¤ë¤³¤È¤Ï¤Ê¤¤
 * idle¥¹¥ì¥Ã¥É¤Èupcall¥¹¥ì¥Ã¥É¤ÏÍѺѤߤˤʤä¿
 * alarm¥­¥å¡¼¤â¤Ê¤¯¤Ê¤Ã¤¿
 
pthread_create()
 * ¥¹¥ì¥Ã¥ÉÀ¸À®»þ¤Ë_lwp_create()¤ÇÀìÍÑlwp¤ò¤¯¤Ã¤Ä¤±¤ë¤è¤¦¤Ë¤Ê¤Ã¤¿
 
pthread_t
 * pt_next,pt_parent,pt_trapuc,pt_sig*¤¢¤¿¤ê¤Î¥­¥â¤¤ÊÑ¿ô¤È¤ª¤µ¤é¤Ð
 
pthread__spinlock()
 * unlockÂÔ¤Á»þ¤Ëpthread__switch()¤·¤Æ¤¿¥È¥³¤òsched_yield()¤¹¤ë¥À¥±¤Ë
pthread_*()¤¬_lwp_*()¤ËľÍ¤µ¤ì¤ë·¹¸þ¤Ë¤¢¤ë´¶¡£ ¤Ê¤Î¤Ç¡¢¥æ¡¼¥¶¸«¤¿ÌܤˤϤۤȤó¤Éµ¡Ç½Äɲäµ¤ì¤Æ¤¤¤Ê¤¤¡£ ¥¹¥¿¥Ã¥¯¤Î»È¤¤Êý¤â¤Û¤ÜƱ¤¸¡£

¥¹¥¿¥Ã¥¯¥µ¥¤¥º²ÄÊѲ½¤Ï¤â¤Ã¤È³Ú¤Ë¤Ç¤­¤ë¤ó¤¸¤ã¤Ê¤¤¤À¤í¡¼¤«¡£ ¥¹¥ì¥Ã¥ÉÍ¥ÀèÅ٤μ¸½¤Ïlwp¦¤ËºÙ¹©¤ò¤·¤Ê¤¤¤È̵Íý¤«¡£¡£¡£

ËÜÆü¤Î¥Ä¥Ã¥³¥ß(Á´1·ï) [¥Ä¥Ã¥³¥ß¤òÆþ¤ì¤ë]
_ nobby (2007-07-10 02:57)

¤Þ¤¡¡¢¿ÍÀ¸¤Þ¤À¤Þ¤ÀŤ¤¤·¡¢¤Î¤ó¤Ó¤êËܤǤâÆÉ¤ó¤Ç²á¤´¤¹¤Î¤â¤è¤¤¤ó¤Ç¤Ê¤¤¤«¤¤¡©

[]
ËÜÆü¤Î¥ê¥ó¥¯¸µ