ã¨ãã¨ããªã話ã§ãããä»ã©ãã®Linuxã®ããã±ã¼ã¸ã³ã°ã®ç¨®é¡ã¨SteamDeckããä¸æ°ã«æ¹åãããDirectX å¨ãã®è©±ã§ãã社å ã®åå¼·ä¼ã§å ±æããè³æ
ã¿ããã¿ã¤ãã³ã°ã¯ãã½ã³ã³ã®åºæ¬æä½ã®ã²ã¨ã¤ã¨ãã¦å¤ãã®æ¹ãç¿çãã¦ãããã¨ã¨æãã¾ãã ã¿ããã¿ã¤ãã³ã°ã¯ãã¼ã ãã¸ã·ã§ã³ã«ä¸¡æãç½®ããã¨ãéè¦ã§ãããããã¹ããç·¨éããã¨ãªãã¨ããã£ã¬ããï¼æåã«ã¼ã½ã«ï¼æ¿å ¥ç¹ï¼ã移åãããããããã¹ããåé¤ãããã§ãã©ããã¦ããå³æã大ããå¤ããå ´æã«åãã¦ãã¾ããã¡ã§ãããã£ãããã¼ã ãã¸ã·ã§ã³ãå´©ãã¦ãã¾ãã¨ããã¼ã ãã¸ã·ã§ã³ã«æãæ»ãã¨ããããããç´ããã¨ã«ãªããããã¹ãå ¥åã®å¹çãè½ã¡ã¦ãã¾ãã¾ãã ããã§ãMacã¦ã¼ã¶ã¼ã®æ¹ã«ãããããããã®ãEmacsãã¼ãã¤ã³ãã®ç¿å¾ã§ããEmacsãã¼ãã¤ã³ãããã¹ã¿ã¼ããã¨ãä¸è¿°ã®ãã¼ã ãã¸ã·ã§ã³ã大ããå´©ãã¦ãã¾ããããªæä½ãã両æããã¼ã ãã¸ã·ã§ã³ã«ç½®ããã¾ã¾å®è¡ã§ããããã«ãªãã¾ãã æ¬è¨äºã§ã¯Macã§ä½¿ããEmacsãã¼ãã¤ã³ãã«ã¤ãã¦èª¬æãã¾ãã Emacsãã¼ãã¤ã³ãã¨ã¯ Emacsã¯å¤
ACããããæãã¦ããã ãã Program Library HOWTO: http://www.linux.or.jp/JF/JFdocs/Program-Library-HOWTO/ é常ã«ããã¾ã¨ã¾ã£ã¦ãã¦çåã氷解ãã¾ããã éè¦ãããªã¨ãããå¼ç¨ãã¾ãã éçã©ã¤ãã©ãª .aã¯éçã©ã¤ãã©ãªãarã³ãã³ãã§ãªãã¸ã§ã¯ããã¡ã¤ã«ãã¾ã¨ãããã®ã éçã©ã¤ãã©ãªã¯ -l ãªãã·ã§ã³ã§ãªã³ã¯ãè¡ã å ±æã©ã¤ãã©ãª ãã¹ã¦ã®å ±æã©ã¤ãã©ãªã¯ãsonameãã¨ããç¹å¥ãªååããã¤ã ãã£ã¬ã¯ããªålibxxx.so.ãã¼ã¸ã§ã³çªå· ãã¼ã¸ã§ã³çªå·ã¯ã¤ã³ã¿ã¼ãã§ã¼ã¹ãå¤ãã£ãã¨ãã«å¤ããã ãã¹ã¦ã®å ±æã©ã¤ãã©ãªã¯ãrealnameãã¨ããç¹å¥ãªååãæã¤ã soname.ãã¤ãã¼çªå·.ãªãªã¼ã¹çªå· ãlinker nameã sonameãããã¼ã¸ã§ã³çªå·ãé¤ãããã® ldconfig ã¯
ãã¯ããã°ãã¡ã¯!! å°¾è¤ a.k.a. BTO ã§ãã ã¿ãªãããUnixãã¼ã¢ã³ãã使ã£ã¦ã¾ãããã Webã¨ã³ã¸ãã¢ãªããWebãµã¼ããã¡ã¼ã«ãµã¼ããDBãµã¼ããcronãªã©ããã使ãããã®ã§ã¯ãªãã§ããããã 24æé365æ¥é»ã ã¨åãç¶ããUnixãã¼ã¢ã³éã 身è¿ãªåå¨ã ã¨æãã¾ãããå®ã¯ã©ãããä»çµã¿ã§åãã¦ããã®ããåããªãæ¹ãå¤ãã®ã§ã¯ãªãã§ããããã å æ¥ããªããã³ã¯ã§Unixãã¼ã¢ã³ã®ä»çµã¿ã«ã¤ãã¦åå¼·ä¼ããã£ãã®ã§ããã®å 容ãã¾ã¨ãã¾ãã ãã¼ã¢ã³ã¨ã¯ ã§ã¯ããã¼ã¢ã³ã¨ã¯ãã£ããä½ãªã®ã§ããããã Unixã©ã¤ã¯ã·ã¹ãã ã«ããã¦ãããã¯ã°ã©ã³ãã§åä½ãã¦æ§ã ãªå¦çãå®è¡ãã¦ãããããã»ã¹ããã¼ã¢ã³ã§ãã ãã¼ã¢ã³ã«ã¯æ確ãªå®ç¾©ã¯ããã¾ããããã ããã次ã®ãããªæ¡ä»¶ãæºããããã»ã¹ããã¼ã¢ã³ã¨å¼ã°ãã¾ãã ããã¯ã°ã©ã³ãã§åä½ãã¦ãã å¶å¾¡ç«¯æ«ãæããªã ä»ã®ããã»ã¹
ãã®ããã¥ã¡ã³ãã®å 容ã¯ã以ä¸ã®éãã§ãã æ¦è¦ æµã sohashttpget() soparsehttpvers() soishttpconnected() soisconnected() ã¡ã¢ Apacheã®æ§è½ãåä¸ãããããã® FreeBSDã®ã«ã¼ãã«ã¢ã¸ã¥ã¼ã« Accept Filter(accf_http.ko) ã®ä¸èº«ãæ°ã«ãªã£ã¦ããã®ã§ãé©å½ã« accf_http.c ãèªã¿ã¾ããã accp_http.c ã¯ã FreeBSD ã® /usr/src/sys/netinet/accf_http.c ã«ããã¾ãã http://www.jp.freebsd.org/cgi/cvsweb.cgi/src/sys/netinet/accf_http.c æ¦è¦ socketããã°ã©ãã³ã°ã§ã¯ãæ¥ç¶ãå¾ ã¡åãããªã¯ã¨ã¹ããèªã¿è¾¼ãã¿ã¤ãã®ãã¼ã¢ã³ã¯ãaccept()ã·ã¹ãã ã³ã¼ã«ã§
ãã¡ã¤ã«æå®ã§ããã¼ã¸ãã£ãã·ã¥ã«ã®ã£ã¦ããã確èªããã追ãåºãããããPerlã¢ã¸ã¥ã¼ã«ãæ¸ãã¾ããã https://metacpan.org/release/Sys-PageCache https://github.com/hirose31/Sys-PageCache Linux ãªãåãã¯ãã§ãããåããªãã£ããæãã¦ãã ããããã¨ä¸å¿ãFreeBSD 8.3以ä¸ã§ãåãã¨æãã¾ãã æ¢åã®å®è£ ã«Googleã®linux-ftoolsãã¨ããã¤ã·æ°ã®pagecache-toolãããã¾ãããããã®Perlã¢ã¸ã¥ã¼ã«å®è£ ï¼XSï¼ã«ãªãã¾ãã https://code.google.com/p/linux-ftools/ https://github.com/nhayashi/pagecache-tool ãã¾ã«freeã³ãã³ãã§ã¿ãã¨buffers/cacheãé£ã£ã¦ã¦swapãã¦ã
ãªãã»ã©Unixããã»ã¹ â Rubyã§å¦ã¶Unixã®åºç¤ãèªã¿ã¾ãããUNIXããã»ã¹ã®è©±ãç¹ã«å®ç¨çãªforkã®å©ç¨æ¹æ³ã«ã¤ãã¦ã®è©±ãã³ã³ãã¯ãã«ã¾ã¨ã¾ã£ã¦ãã¦ããããããã£ãã§ãããã¾ã詳細ã«è¸ã¿ããã§ããã¨ããæãã§ã¯ãªããã©ãã¨ã£ãããã«ãã®æ¬ã«ãããããªç¥èãããã®ã¯è¯ãã¨æãã¾ããã(ã·ã§ã«ã¹ã¯ãªãããã"foreman start"ããã¨ãã«Ctrl-Cã§çµäºã§ããªãç¾è±¡ã®è§£èª¬ - ã¯ãã¹ããã° â¨ã§ã¯ã¾ãåã«èªãã§ããããããã£ã¨ã¯ããåé¡è§£æ±ºã§ããã¨æãã¾ãã) 第18ç« ãã¼ã¢ã³ããã»ã¹ã«é¢ä¿ãã¦äºåç®ã®forkã«ã¤ãã¦ãããã調ã¹ãã®ã§ããã£ãããªã®ã§ã¡ã¢ãæ®ãã¦ããã¾ãã*1 第18ç« ãã¼ã¢ã³ããã»ã¹ ã§ã¯ãããã»ã¹ããã¼ã¢ã³åããããã«å¿ è¦ãªæé ãä¸å¯§ã«èª¬æããã¦ãã¾ãããã®ä¸ã§ãããã»ã¹ãå¶å¾¡ç«¯æ«ããåãé¢ãæé ã¨ãã¦ä»¥ä¸ã®ãããªã³ã¼ããç´¹ä»ããã¦ãã¾ããã
ã³ã³ãã¥ã¼ã¿ã¼ï¼Cè¨èªè¬åº§ï¼fork,exec,pipeã«ã¤ã㦠ãã®ãã¼ãã¯ã©ã¡ããã¨ããã¨UNIXç³»ã®è©±é¡ã«ãªã£ã¦ãã¾ãã®ã§ãããPCç³»ã§ã¯DOSã®æ代ã«ã¯ãã«ãã¿ã¹ã¯ãã§ãã¾ããã§ããã®ã§ãå¹³è¡ã«ã¯èµ°ãã¾ããã§ããããCè¨èªã®å¦çç³»ç¬èªã®é¢æ°ãããããããã¾ãããWindowsã«ãªã£ã¦ããã¯UNIXç³»ã¨ä¼¼ã¦ãã¾ããããã¾ã å°ãéãããã§ãã èªåã§ä½æããããã°ã©ã ããä»ã®ã³ãã³ããå®è¡ããããã¨ãããã¨ã¯è¯ããããã¨ã ã¨æãã¾ããä¾ãã°ããã£ã¬ã¯ããªã¼ã®ä¸èº«ãç°¡åã«å¾ããå ´åãªã©ã¯UNIXã§ã¯lsã³ãã³ããå®è¡ããã¦ãçµæããããã®ãç°¡åã«æãä»ãã¨æãã¾ããã¨ãã«UNIXã®ã³ãã³ãã¯ãã®ããã«çµã¿åããã¦ä½¿ããããã§ãã¦ãã¦ãå¿ è¦ãªæ å ±ã ããæ確ã«è¿çããã³ãã³ããã»ã¨ãã©ã§ã(ãã®åãåå¿è ãèªåã§ã³ãã³ãã使ãæã«ä¸è¦ªåãªã®ã§ãã)ã system() 大æµã®äººãä¸è¨ã®ãããª
æè¿ãæ¥æ¬çµæ¸æ°èé»åçã«æ²è¼ãããä¸æé¦å¤«ããã½ããã¯åä¼é·ã®è¨èã«ãç§ã¯ããè¡æãåãã¾ãããããã¦æãåºãããã¨ã¯ãæ¥æ¬ã®é»æ©ã¡ã¼ã«ã¼ã§ã®ä¼çµ±çãªã½ããã¦ã¨ã¢ã®è»½è¦ãã¨ãããããã½ããå«ããã®ä¼çµ±ã§ãã ãã®è¨èãåºã¦ããè¨äºã¯ã2012å¹´7æ2æ¥æ²è¼ã®ããããã°ããã½ããã¯ãç¥ããããã«ãªã¹ãã®è¸ä¸ãã§ããçµå¶ã®ç¬¬ä¸ç·ãéãä¸æé¦å¤«åä¼é·ã¸ã®ã¤ã³ã¿ãã¥ã¼ã«åºã¥ãè¨äºã§ããã®ä¸ã«ãããªè¨èãåºã¦ãã¾ãã åã¯ããé»æ©æ¥çã«ã¯ITã¨ããéç³ï¼ããããï¼ã¿ãããªããè½ã¡ã¦ããããã¨ãä»ã§ãããæãã¨ããã§ããã ãã®è¨èã¯ãä¸æ´é»æ©ã®è²·åï¼2008å¹´ã2009å¹´ï¼ã®æ¯éã«é¢ããæèã®ä¸ã§åºã¦ããè¨èã§ããããã¦ã次ã®ããã«ç¶ãã¾ãã ã©ã¤ãã¹ã¿ã¤ã«ãä½ããã¹ã¦ãå¤ãã¦ãã¾ã£ããããããã¸ã¿ã«åã®æ³¢ãæ¥æ¿ã«ãã£ã¦ãã¦ãããããã®ãããªã¡ã¼ã«ã¼ã¯ããã¦ã©ããããã¨èããã°ãªããªããªã£ãã ã
UNIXã®æ´å²ã«ã¯ãã大ããªè»¢æç¹ããããããã«ã¯ãããä¸ã¤ã®æªæ¥ãã®å¯è½æ§ãéãã¦ãã¾ããããã®è»¢ææã«èµ·ãã£ãåºæ¥äºã¯ãUNIXæ¦äºãã¨ãã¦ç¥ããã¦ãã¾ããããã®èæ¯ã«ãUNIXãC++ã§åæ£OSã«æ¸ãç´ããã¨ããéå¿çãªè¨ç»ããã£ããã¨ã¯ãä»ã§ã¯ã»ã¨ãã©èªããããã¨ã¯ããã¾ããã ç§ã¯ããã®ä¸é£ã®åºæ¥äºã®ææã«ããæ¥çµã¨ã¬ã¯ãããã¯ã¹ãã®è¨è ã¨ãã¦UNIXã®ååã追ã£ã¦ãã¾ãããå½æã®åºæ¥äºã®æ¦è¦ããåæè ã®è¦ç¹ããæ¸ãè¨ãã¦ããããã¨æãã¾ããå¤ãã®èªè ã«ã¨ã£ã¦åè³ã®æ å ±ãå«ã¾ãã¦ããã¨æãã¾ãã ä¸é£ã®åºæ¥äºã®çºç«¯ã¯1987å¹´ã«çºè¡¨ããããSunãAT&TãMicrosoftã«ããçµ±åUNIXã®çºè¡¨ã§ãããã®çºè¡¨ã®åå¤ãã©ãããæ代ã ã£ãããã¨ãã話ãã¾ãå¿ è¦ã§ãããã çµ±ååå¤ 1980年代å¾åã¯ãã³ã³ãã¥ã¼ã¿ã®æ´å²ã§ãéè¦ãªææã§ããããã®ææã32ãããã»ãã¤ã¯ãããã»ããµ
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}