ã¿ãªããããã«ã¡ã¯ïŒ
以åã®æçš¿ã§ãç§ã¯ããŒã€ã³ã°B737NBGã®å»ºèšã§åŸããã貎éãªçµéšã«ã€ããŠæžããŸããã
ãã®ãã¹ã以æ¥ãå€ãã®ç°ãªãã€ãã³ããçºçããŸãããç¹ã«ãããŒã€ã³ã°ã¯ã¿ã€ã ãã¬ãã·ã£ãŒã¢ãŒãã§ã®å€§èŠæš¡ãªãªãŒããŒããŒã«ãçã延ã³ãæçµçã«ãšã¢ãã¹A320ã«é¢ãããã¹ããæžãããšã«æãããããŸããã
ãã¹ãã2ã€ã«åããŸãã1ã€ã¯äž»ã«ITã«é¢ãããã®ã§ããã1ã€ã¯äž»ã«å»ºèšæ®µéã®ã¹ã©ã€ãã«é¢ãããã®ã§ãã
è¡ãã
å
¥é
2012幎8æã«ãæ°ãããã©ã€ãã·ãã¥ã¬ãŒã¿ã®æ§ç¯ãå§ããã°ããã®ãããžã§ã¯ãã«åå ããŸããã åœæã¯ã次ã®ãããªãã®ã§ããïŒ
- ã¢ãã€ã«ãã©ãããã©ãŒã ãšãã£ãã³ã泚æããã補é ãããŸããã
- ã·ãŒã¹ã¯çç£äžã ã£ã
- ãã¯ãŒãã¬ãŒã ã®ãã¶ã€ã³ã¯çµãããŸãã
- ãããžã§ã¯ã¿ãŒã¯è³Œå
¥ããããã§ã«åšåº«ããããŸããã
æåã«ãå¥åŠãªããšã«ãç§ã¯ITã€ã³ãã©ã¹ãã©ã¯ãã£ãäœæããããšããŸããã
ITã€ã³ãã©
é ã®äžã¯ãã¹ãŠã·ã³ãã«ã§ãããã·ãã¥ã¬ãŒã¿ãŒãšããŠãX-Plane 10ã䜿çšããŠãç»åãåçæ圱ã«å€åœ¢ããããšãã§ããŸãã
ã¹ã±ãŒãªã³ã°ãå¿
èŠã§ããã€ãŸãã5å°ã®ãµãŒããŒãããããšãæå³ããŸãã1å°ã¯ãã€ããã¯ã¹ãèšç®ãã3å°ã¯3å°ã®ãããžã§ã¯ã¿ãŒã®ç»åã圢æãã4å°ç®ã¯ã¯ã©ã€ã¢ã³ãã®ãããªã¯ãªããèšé²ã·ã¹ãã ã®ç»åãçæããŸãã
Project Magentaã³ã³ããŒãã³ãã¯ãä»ã®ã»ãŒãã¹ãŠã®ããšãè¡ããŸãã
Projectmagenta
- ãã£ãã³ç»é¢ã«çµµãæã-ãšã¢ãã¹ã°ã©ã¹ã³ãã¯ãããã ABGC
- é£è¡æ©æ§èœã¬ãã¥ãŒ-pmSystems
- é£è¡ç®¡çããã³èªå°ã·ã¹ãã ã®å®è£
-MCDU
- ãªãŒããã€ãããã ãã©ã€ãã³ã³ãããŒã«ãŠãããã FCUã«å®è£
- é»æ°ãªã¢ãŒãèªç©ºæ©å¶åŸ¡ã·ã¹ãã ãç§ãã¡ã®æèŠã§ã¯ããã©ã€ãã€ã¯ã€ã€ã ãŸãããµã€ãã¹ãã£ãã¯ãããã«ããšã³ãžã³å¶åŸ¡ãããªã©ã®ã³ã³ãããŒã«ãåããã€ã³ã¿ãŒãã§ãŒã¹ãæäŸããŸãã ããã«ããã®ã¢ãžã¥ãŒã«ã§ã¯ã倧ããããããŒã«ãå±éºãªããããªã©ãé²ããæ³åŸããèšããããŠããŸãã-é£è¡å¶åŸ¡æ³-pmFBW
- é³-ããããªãã§ãããªã«ã pmSounds
äœãå¿ããŠããªãããã§ãã
ãã§ãã¯ãšãã©ã³ã¹ã®ã·ã¹ãã
ã€ã³ãã©ã¹ãã©ã¯ãã£ã®èšèšã¯ãããŒã€ã³ã°ã®å¶éãšçµéšã®çµã¿åããããçãŸããŸããã
ããŒã€ã³ã°ã§ã®çµéšããã®åé¡ã®1ã€-ã©ãã¯å
ã®ãµãŒããŒãã»ãããåéããããããéç±ãå§ããã ãããã£ãŠãæãè² è·ã®é«ãã³ã³ãã¥ãŒã¿ãŒïŒããã¯X-PlaneïŒã¯ãµãŒããŒã«ãŒã ã«é
眮ããå¿
èŠããããŸãã
ãã£ãããUSBãåŒãåºããŸã-ç«ãã€ãããããªã³ããŒãã³ã³ãã¥ãŒã¿ãŒãå¿
èŠã§ãã
ã¢ãã€ã«ãã©ãããã©ãŒã ã«æèŒãããŠããå ŽåãSSDãŸãã¯ãã£ã¹ã¯ã¬ã¹ã®ããããã§ãã ã¡ã¢ãªãŒå
ã®SSDã2åãªãŒããŒããŒãããããããã£ã¹ã¯ã¬ã¹ããŒãã«ã€ããŠåŠç¿ããŸãã Windowsã«ãããã¹ãŠã®ããªã³ããŒãããœãããŠã§ã¢ã¯ãiSCSIã«ãªããŸãã
ãããã¯ãŒã¯çµç±ã§6å°ã®ã³ã³ãã¥ãŒã¿ãŒãããŠã³ããŒãããŸãã垯åå¹
ãå¿
èŠã§ããã€ãŸãããã©ã³ã¯ããµããŒãããã¹ã€ãããå¿
èŠã§ãã éžæã¯D-Link DGS-1210-16ã§æ±ºãŸããŸããã
X-Planeã¯è€æ°ããããããã®ã·ããªãªã¯ãiSCSIãããã¯ã¢ãããªã©ã«å ããŠäžèŽããå¿
èŠãããããããã¡ã€ã«ãµãŒããŒãŸãã¯NASãå¿
èŠã§ãã äŸ¡æ Œãšå質ã®æ¯ã§ã¯ãSynology RS-812 +ã¯æ倧3GBã®ã¡ã¢ãªã¢ããã°ã¬ãŒããèãåºããŸããã åæã«ããã©ã³ã¯ããµããŒãããŸãã
ãµãŒããŒã«ãŒã ã¯ã¯ãªãŒã³ã§ããå¿
èŠããããŸããã€ãŸãããã¢ãéããå¿
èŠããããŸããã€ãŸãããªã¢ãŒãã¢ã¯ã»ã¹ãæ倧åããIP KVMã§ããå¿
èŠããããŸãïŒå®éã«ã¯ãVNCã䜿çšããã®ã䟿å©ã§ããïŒã
ããã«ããªã³ããŒãã³ã³ãã¥ãŒã¿ãŒãé
眮ãããŠããã³ãã¯ãããã¹ããŒã¹ã«ç»ãéã«ã圌女ã¯ãŸã£ããç¬ããªããããå°ãªããšã1ã€ã¯ãªã³ãšãªããåãæ¿ããããšãã§ããªããã°ãªããŸããã ãã®ããããé»æºããã¿ã³ãæŒãããšãã§ããéçã³ã³ã¯ãªãŒãäœæ¥è£
眮ãå¿
èŠã§ãã ããç¥ãããŠããé»åæè¡è
ã«ãã£ãŠæ³šæãããŸãããäžé£ã®å埩ã®åŸãé»æºãã¿ã³ããæŒããããšãã§ããEthãåããããã€ã¹ãå
¥æããŸããã
次ã®ããã«ãªããŸãã
ãããããŒãã¯ããã¹ã¿ãŒãã§ããããã¹ã¬ãŒããã¯RS-485ãä»ããŠæ¥ç¶ãããŸãã åãã¹ã¬ãŒããã«ã¯8ã€ã®ãã£ã³ãã«ããããåãã£ã³ãã«ã«ã¯2ã€ã®åå¥ã®å
¥åïŒé»æºLEDãšHDDãæ¥ç¶ããããïŒãšé»æºãã¿ã³çšã®1ã€ã®åºåããããŸãã
åŒç€Ÿã®ãããžã§ã¯ã¿ãŒã¯é«äŸ¡ã§åžå°ã§ããäºåå·åŽãªãã§ã¯é»æºãåãããšã¯ã§ããŸããããå
¥åé»å§ããªããªã£ãå Žåã¯ã人ã«é Œããã«èªåçã«ãããžã§ã¯ã¿ãŒãšãªã³ããŒãã³ã³ãã¥ãŒã¿ãŒã®é»æºãåãå¿
èŠããããŸãã ãã®ããããããã¯ãŒã¯ã€ã³ã¿ãŒãã§ã€ã¹ãåããUPSãå¿
èŠã§ããããããžã§ã¯ã¿ãŒã«ãæèŒãããŠããããã䜿çšããå¿
èŠããããŸãã
äžè¬ã«ãæ°é±éã®èšèšã®çµæã次ã®ãããªã¹ããŒã ãåŸãããŸããã
4 GBã®ã¡ã¢ãªãæèŒããCeleron G540 2.5 GHzãšãã®ã¬ãã€ãã®ã¡ã¢ãªãæèŒããRadeon HD 6450ãããã«åºã¥ãããŒãããã¡ã€ã«ã°ã©ãã£ãã¯ã¹ã«ãŒããæèŒãããªã³ããŒãã³ã³ãã¥ãŒã¿ãŒããããŸãã
X-Planeçšã°ã©ãã£ãã¯ãµãŒããŒ-8GB RAMãšãã©ãŒå
ã«2å°ã®500GBãã©ã€ããæèŒããCore i5-3470ã çµµãæãããã®GeForce GTX 670 c 2048MBã§ãã ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ãšããŠãUbuntu 12.04 LTS 86_64ããããX-Planeã¯64ãããã§ãã
ãã€ããã¯ã¹ãèšç®ãããµãŒããŒ-Core i7-3770ã®Win7_32ã§ã¯ãçµ±åãããªã«ãŒãã䜿çšããŸãã ããã§ã¯X-Planeã¯32ãããã§ãããã¢ãã€ã«ãã©ãããã©ãŒã ãšã®ã€ã³ã¿ãŒãã§ãŒã¹çšã®ãã©ã°ã€ã³ã¯32ãããããã³Windowså°çšã§ããããããµãŒããŒã¯Windowsã®äžã«ãããŸãã
ã±ãŒãã«ãšã¯ã€ã€ãŒ
ã¹ãŒããŒãŽãŒã«ã¯ããã€ã¹ããã¢ãšé»æºã±ãŒãã«ã®ã¿ããã£ãã«å
¥ãããã«ã·ãã¥ã¬ãŒã¿ãæ§ç¯ããããšã§ããã ãããŠãçµå±ããã¯èµ·ãããŸããã
220Vé»æºã±ãŒãã«ãã¹ã€ããïŒãã©ã³ã¯ïŒãæ¥ç¶ããããã®2ã€ã®ãã€ã¹ããã¢ãHDMI延é·ã³ãŒãçšã®3ã€ã®ãã€ã¹ããã¢ãããã³ã¯ãããšãã©ãããã©ãŒã ã®ã³ã³ãããŒã«ããã«çšã®å¥ã®ãã€ã¹ããã¢ã¯ãå€éšãããã£ãã³ã«è¡ããŸãã
ç§ã¯Hama HDMIã䜿çšãã延é·ã³ãŒãã圌ãã¯åœŒãã®ã¿ã¹ã¯ã«å¯ŸåŠããŸãã
ã©ãã§ããã€ã¹ããã¢-CAT6 FTPã
ãããšã¯å¥ã«ããã£ãããããšå¯åãã©ãããã©ãŒã ã®éã®æ¢åã®ãã€ãã«ãã€ã¹ããã¢ãäœæããŠåŒã䌞ã°ãããšã«ããæ¹æ³ãæžã䟡å€ããããŸãã ã±ãŒãã«ã°ãªãŒã¹ã䜿çšããŠããŠããããã¯ã°ãããäœæ¥ã§ãããããã«ãåŸã§ããã«2æ¬ã®ãã€ãã延é·ããŸããã
é»æ°
ããŒã€ã³ã°ã§ã¯ãééã£ãé»æ°ãããã¯ãŒã¯ã®åé¡ã«çŽé¢ãããããä»åã¯åº§ã£ãŠåç·å³ãæããŸããïŒèŠã€ããããŸããïŒã
ã¢ã€ãã¢ã¯ããã¹ãŠã®ã©ã€ã³ãèªåæ©ã§ä¿è·ããããã«æé»ãã人ã
ãä¿è·ããããšã§ããã
è² è·èšç®ã«ãããšããã£ãå
šäœïŒãããžã§ã¯ã¿ãŒãã³ã³ãã¥ãŒã¿ãŒãI / Oã³ã³ãããŒã©ãŒãæ©å
ææ°ãã¹ã€ããïŒã«ã¯3000VAã§ååã§ãã
5å°ã®ãµãŒããŒã§ã¯ãNASãã¹ã€ãããKVMãã»ãŒåãå¿
èŠããããŸãã
å€éšã¿ã¯ã·ãŒãã¡ã³ãã€ã³ã¹ãã©ã¯ã¿ãŒã¹ããŒã·ã§ã³ãã©ã³ããã©ã€ãã¯1500VAæªæºã§æžããããå€ã1500 SmartUPSã圹ç«ã¡ãŸãã
åèšUPSã®ã³ã¹ãã¯4ã€ã§ãã2ã€ã®Ippon Smart Winner 3000 VAãšè¿œå ã®ããããªãŒããã¯ãããã³2ã€ã®1500VA SmartUPSãããŒã€ã³ã°ã®æ¹è¯ã®1ã€ããæ®ã£ãŠããŸãã
ãµãŒããŒã«ãŒã ã¯3ã¯ããããã1ã¯ãã-ãã£ãã³å
šäœã«ããã£ãŠããŸãã ãã£ãã³ãšã€ã³ã¹ãã©ã¯ã¿ãŒã¹ããŒã·ã§ã³ã®ææ°å£ã1500ã«ã¶ãäžãã£ãŠããŸããããã1ã€ã¯åšåº«ããããŸãã
èªåŸçãªãšãã«ã®ãŒæºïŒUPSïŒã®å¯çšæ§ãèãããšã人ã
ãä¿è·ããããã®RCDã¯UPSãã€ãŸã ç§ãã¡ã®ç¡åé»è£
眮ã¯ã·ãŒã«ãã«ãåãä»ããããŠããŸããã
ææ°ãšç©ºèª¿
ãµãŒããŒã«ãŒã ã¯éåžžã«å°ãããçŽ5å¹³æ¹ã¡ãŒãã«ã§ãã©ãã¯ããã®2kWã®ç±ãšããããããã©ãããã©ãŒã å¶åŸ¡ãã£ããããããã®1kWãããã«å²ãåœãŠãããŸãã ããã§ãã³ã³ãããã¢ã ãåãããŸãã
ã³ã³ãã¯Samsung AQ12TSBNã«éžã°ããçŽ3.5kWã®äœæž©æ§èœãæã£ãŠããŸãã ç§ã¯èªåã§ã€ã³ã¹ããŒã«ãè¡ããŸãããããŒã«ãšæ©åšã®å©ç¹ã¯ä»¥åã«è³Œå
¥ãããåœã§ã®ã³ã³ãã®ã€ã³ã¹ããŒã«ã«äœ¿çšãããŸããã
å€ã¯æ£ããéžæã瀺ãããµãŒããŒã«ãŒã ã®æž©åºŠã¯èšå®ããã19床ååŸã§å€åããŸããã
宀å
æ©ãé»æ°ããã«ã«æããã®ã¯éŠ¬é¹¿ããééãã ã£ãã®ã§ãææ°Žã«ã¯ç¹å¥ãªæ³šæãæããªããã°ãªããŸããã§ããã ããŒããŒãéå°ã¯ãããŸããã§ããããæ¥å¹Žã®å€ãŸã§ã«ææ°Žãã³ããèšçœ®ããŸãã
ææ°ã®ãããã£ãã³ã§ã¯ãããã¯ããã»ã©åçŽã§ã¯ãããŸããã
ç§ãã¡ã«ã¯2ã€ã®ããªã¥ãŒã ããããŸãã人ã
ã座ãã³ãã¯ãããèªäœãšãã¢ã€ãã³ããããžã§ã¯ã¿ãŒãã³ã³ãã¥ãŒã¿ãŒãããã³ãã¯ãããã¹ããŒã¹ã§ãã
åœåãããç§ãã¡ã¯ç©ºèª¿ãè¡ããªãããšã«æ±ºããŸãã-å瞮液ã«ã¯å€ãã®åé¡ããããŸãã
ã³ãã¯ãããã®ç©ºéã§ã¯ã1æéãããçŽ250ç«æ¹ã¡ãŒãã«ã®å®¹éã®äœéšé³ãã¡ã³ã«ãã£ãŠæµå
¥ãšææ°ãè¡ãããŸããã ã³ã³ãã¥ãŒã¿ãŒèšçœ®å Žæãžã®æµå
¥
ããŒã-ãããžã§ã¯ã¿ãŒã®è¿ããæäžéšïŒåçã®å質ã«ã€ããŠã¯ç³ãèš³ãããŸããïŒ
å®éããå±æ ¹ãã®ç©Žã«ãã¡ã³ãå·®ã蟌ãã§ãåé¡ã¯ãããŸãããã枩床枬å®ã§ã¯ãã®ãããªå¿
èŠæ§ã¯ç€ºãããŸããã
ãã£ãã³å
ã®ç©ºæ°ã埪ç°ãããããã«ãå€åŽã«å€§ããª2000 ccã®é颚ãã¡ã³ããããããŒãã¯èã®äžããé£ç¶ããŠç«ã€2ã€ã®éããªãããã¯ã§äœãããŠããŸãã
åœåãèšç®ã«ãããšãç§ã¯ãã¡ã³ã®éžæãééããŸããã2000ccã®ã¹ãŒããŒãã£ãŒãžã£ãŒãåŸã«ç»å ŽããŸãããæåã¯250 ccã®ãµã€ã¬ã³ããããã¯ããããŸããã
ãã£ãã³ã«2000人ã®ãã¡ã³ãããŠãæãã®ã§ãã·ã¹ãã ãããã«æ¹åããæ¹æ³ãæ€èšããŠããŸãã
æŸèæãæŸèæããã³æŸèæ
åœåããããæ£ã補åã§ããå€ãã®æŸèæã§å
ãå¿
èŠãããããšã¯æããã§ããã
骚æ¥åè¡ã«ã¯ããã€ãã®åé¡ããããŸããã
- X-Planeå
±æããŒã¿ã®åæ
- ãããžã§ã¯ã¿ãŒã®ãªã³/ãªãèªåå
- 倱æããProject Magentaã³ã³ããŒãã³ãã®åèµ·å
X-PlaneïŒåæãšèµ·å
X-PlaneããŒã¿ãåæããããã«ãæçµçã«NASããrsyncãéžæãããŸããã
ç§ã¯NFSããŒã«ããçŽæ¥å®è¡ããããšããŸããããWindowsãšLinuxã®äž¡æ¹ãX-Planeã®ãã£ã¬ã¯ããªæ§é ãããããšãèãããšãããã¯é
ã£ãããåŠã§çºæãããåæ§æã«ã¯ç¬èªã®ã¹ã¯ãªãããšäžè¬çãªããŒã¿ããããšå€æããŸããX-Planeãèµ·åãŸãã¯åèµ·åãããã³ã«ãããã¯ãŒã¯çµç±ã§åæããŸãã
ã¡ãªã¿ã«ãããŒã«ããçŽæ¥X-Planeãèµ·åãããšããã¢ã€ãã¢ãèããªããããã€ããªãç·šéããŠãæžã蟌ã¿çšã«éãããã¹ãŠã®ãã¡ã€ã«ãåããã£ã¬ã¯ããªã«ããããã«ããŸããã ãã®ã¹ãããã®åçã次ã«ç€ºããŸãã
ãã¹ãŠãæ£åžžã«å®äºãã2æ¥åŸã«æŽæ°ãè¡ãããŸããã ãã®åŸãrsyncãå®è¡ããããšã«ããŸããã
èµ·åã¹ã¯ãªããã¯æ¬¡ã®ããã«ãªããŸããã
X-Planeã¯çµ¶å¯Ÿã«ãŠã£ã³ããŠãããŒãžã£ãŒãå¿
èŠãšããªããããå®éã®èµ·åã¯xinitãä»ããŠè¡ãããŸãã
/usr/bin/xsetroot -cursor_name top_left_arrow DISPLAY=:0.0 /usr/bin/X11/xset s 0 DISPLAY=:0.0 /usr/bin/X11/xset s noblank /root/bin/shm_wipe.sh /usr/bin/x11vnc -display :0 -ncache 10 -many & umask 0000 /xplane.64/X-Plane-x86_64 --no_crash_reporter /usr/bin/killall -9 x11vnc
shm_wipe.shã¯ç§ã®æ inessã§ãã å®æçã«ãå
±æã¡ã¢ãªã®æ¯æžã«ããx11vncãèµ·åãåæ¢ãããããæªäœ¿çšã®ã»ã°ã¡ã³ããèŠã€ããŠãã»ãããããã®ã€ã³ã¿ãŒãããã¬ã·ããèŠã€ãããŸããã
ããã«ãcronãä»ããŠãX-Planeã¯æ©æã«åèµ·åãããã¡ã¢ãªãªãŒã¯ãçºçããŸãã ããã«ãäžãäžã«åããŠããããžã§ã¯ã¿ãŒã®é»æºããªãã«ããã³ãã³ããäžããããŸãã
Windowsã§ã¯ããã¹ãŠããŸãšããªããã§ã¯ãªãã®ã§ãå®æçã«æã§rsyncåæãè¡ããŸã...
ãªã³ããŒãã³ã³ãã¥ãŒã¿ãŒç£èŠ
ProjectMagentaã®ããªãŒãºããã³ã³ããŒãã³ãã«å¯ŸåŠããããã«ãPowerShellã¹ã¯ãªããå
šäœããªã³ããŒãã³ã³ãã¥ãŒã¿ãŒã§èšè¿°ãããããã«.NETèŠçŽ ãèšè¿°ãããŸããã
ã¹ã¯ãªããã¯ã倱æããUSBããã€ã¹ã®æ€åºããå§ãŸãããã®åŸããã§ã«ä»ã®ãã¹ãŠã®ãã®ã§ã«ããŒãããŠããŸããã
ã³ã³ããŒãã³ãã¯ããã®ã¹ã¯ãªãããéããŠããŒãã«èµ·åããããã¬ã€äžã«èª°ããããããã¢ãŠããããã©ããã確èªããŸãã
EHIDã«ã€ããŠã¯å¥ã®è¡ã§èª¬æããŸãã
EHIDã¯ãã¿ã¯ã·ãŒããŒããŠã§ã¢ïŒI / Oã³ã³ãããŒã©ãŒïŒãšãœãããŠã§ã¢ã³ã³ããŒãã³ãéã®ã€ã³ã¿ãŒãã§ã€ã¹ã§ãã NDAã®äžã§é
åžãããç§ã¯ããã«çœ²åããçŸåšç§ã¯ä»æ§ã®èªãã«æãææè
ã§ãã ãããŸã§ã«ãX-Planeã®åãã€ã䜿çšãããã°ã®ã¬ã¹åã«é©çšããŸãããããã«ã€ããŠã¯ã以äžã§èª¬æããŸãã
äžçªäžã®è¡ã¯ãã³ã³ããŒãã³ãA320_EHID.exeïŒãããã£ãŠãããŒã€ã³ã°ã®å Žåã¯B737_EHID.exeïŒããããã³ãã¯ãããã®ãã¹ãŠã®ã³ã³ããŒãã³ãã®ãããªãŒããšãã¢ããã°è»žãLEDããã°ã«ã¹ã€ãããããã³äžè¬çãªãã®ãå«ãŸããŠããŸãã
åã¢ã€ãã ã«ã¯ç¬èªã®ååãš32ãããIDããããŸãã
ã¢ããªã±ãŒã·ã§ã³ã¯ããŒããŠã§ã¢ã«çŽæ¥ã¢ã¯ã»ã¹ããŸããããEHIDã«ã¢ã¯ã»ã¹ããŸãã éä¿¡-TCPã«å ããŠãã€ãã³ãé§ååã ããŒãªã³ã°ã¯ãã¹ãŠEHIDã§å®è£
ãããŠããããããã®æŠå¿µã¯äººçã倧å¹
ã«ç°¡çŽ åããŸãã
ãã®ä»æ§ã¯ãããŒããŠã§ã¢ãšEHIDã®éãããã³EHIDãšã¢ããªã±ãŒã·ã§ã³ã®éã®2ã€ã®ã¬ãã«ãã«ããŒããŠããŸãã
USB HIDã®äžã«ãããã³ã«ã®èª¬æãå«ãäžäœã¬ãã«ã衚瀺ãããã³ã³ãããŒã©ãŒãã¡ãŒã ãŠã§ã¢ã«ãå®è£
ãããŸãã
æŽæ°ïŒã·ãã¥ã¬ãŒã¿ãŒã®ã³ã³ããŒãã³ãã®çžäºäœçšã®çµµãæãã
åé¡ã¯ãWindowsãã©ã€ããŒãšãã¡ãŒã ãŠã§ã¢ã®EHIDå®è£
ãšã®éã®ã€ã³ã¿ãŒãã§ãŒã¹ã§ãæåŸã®ãã¹ããèŠã€ãã£ãããšã§ããå€æ°ã®ããã€ã¹ããã®ããŒã¿ãåæã«å°çãããšãEHIDå
ã§äœãäžæè°ãªããšãèµ·ãããDoSã«ã€ãªãããŸãã èŠã€ããã®ã¯ç°¡åã§ããç¥ã«æè¬ããŸããEHIDã¯ã¢ããªã±ãŒã·ã§ã³ãªã¯ãšã¹ããžã®å¿çãåæ¢ããŸãã ããã¯ãç£èŠã®åºç€ãšãªããã®ã§ãã
Govnokod-ãã®1ã€ã蹎ããªãã§ãã ããã
Import-Module c:\scripts\Release\DeviceManagement.psd1 [int] $Port = 21843 $IP = "192.168.XX" $Address = [system.net.IPAddress]::Parse($IP) $LogDirs = @("C:\EHID","C:\MCDU","C:\RMCDU","C:\FBW","C:\pmSystems","C:\FCU","C:\xpuipc") Write-Host "Starting the supervisor script..." # Check if we just started $p = Get-Process -Name xpwideclient -ErrorAction silentlycontinue if (!($p)) { Write-Host "Just started" # Find and remove logfiles foreach($logdir in $LogDirs) { del $logdir\*.log -ErrorAction SilentlyContinue } del R:\*.tmp -ErrorAction SilentlyContinue # Set the routing for the goddamn windows shitty default gw to iSCSI target route delete 0.0.0.0 route add 0.0.0.0 mask 0.0.0.0 192.168.XX # Start XPUIPC Start-Process C:\xpuipc\xpwideclient.exe -WorkingDirectory "C:\xpuipc" -WindowStyle Minimized Start-Process C:\EHID\A320_EHID.exe -ArgumentList "-run" -WorkingDirectory "C:\EHID" -WindowStyle Minimized Start-Sleep -Seconds 3 } else { Write-Host "Already working" $startFlag=0 } # Cycle forever while ( 2 -ge 1) { # Clear the flag $failFlag = 0 # Get the list of the failed devices $FailedDevices = Get-WmiObject Win32_USBControllerDevice |%{[wmi]($_.Dependent)} | Where-Object {$_.Status -ne "OK"} foreach($fDevice in $FailedDevices) { # Set the flag to restart the processes $failFlag = 1 # Disable and then enable device $dDev = Get-Device | Where-Object {$_.InstanceID -eq $fDevice.DeviceID} Write-Warning "Failed device found:" $fDevice.DeviceID Disable-Device -TargetDevice $dDev -Verbose Enable-Device -TargetDevice $dDev -Verbose } # Detect hang of A320_EHID # Create IP Endpoint $End = New-Object System.Net.IPEndPoint $address, $port # Create Socket $Saddrf = [System.Net.Sockets.AddressFamily]::InterNetwork $Stype = [System.Net.Sockets.SocketType]::Stream $Ptype = [System.Net.Sockets.ProtocolType]::TCP # Create byte array [Byte[]] $Message = 0x02,0x03,0x00,0x04 $buffer = new-object System.Byte[] 8192 Try { $Sock = New-Object System.Net.Sockets.Socket $saddrf, $stype, $ptype $Sock.TTL = 26 $Sock.ReceiveBufferSize = 8192; $Sock.ReceiveTimeout = 500; $Sock.Blocking = 1; # Connect to socket $Sock.Connect($end) $Sent = $Sock.Send($Message) Start-Sleep -m 30 $Received = $Sock.Receive($buffer) $Sock.Close() } Catch [Exception] { Write-Host "Error checking EHID" $_.Exception.Message; $failFlag=1; } # Detect restart file-flag $FileExists = (Test-Path "R:\restart.txt" -PathType Leaf) if ($FileExists) { Write-Host "Restart file exists!" del R:\restart.txt $failFlag = 1 } # Restart the processes if ($failFlag -eq 1) { Write-Warning "Restarting processes" Write-Warning "Freezing..." Start-Process C:\scripts\sim_pause.exe -WorkingDirectory "C:\scripts" -WindowStyle Minimized Stop-Process -Name A320_EHID -force -ErrorAction silentlycontinue Stop-Process -Name pmFBW -force -ErrorAction SilentlyContinue Stop-Process -Name pmSystems -force -ErrorAction SilentlyContinue Stop-Process -Name MCDU -force -ErrorAction SilentlyContinue Stop-Process -Name RMCDU -force -ErrorAction SilentlyContinue Stop-Process -Name FCU -force -ErrorAction SilentlyContinue # Set start flag $startFlag=1 } if ($startFlag -eq 1) { Start-Process C:\EHID\A320_EHID.exe -ArgumentList "-run" -WorkingDirectory "C:\EHID" -WindowStyle Minimized Start-Sleep -Seconds 3 } # FIXME Workaround for the falling PM processes $p = Get-Process -Name RMCDU -ErrorAction silentlycontinue if (!($p)) { Write-Host "RMCDU dead, restarting." Start-Process C:\RMCDU\RMCDU.exe -WorkingDirectory "C:\RMCDU" -WindowStyle Minimized } $p = Get-Process -Name FCU -ErrorAction silentlycontinue if (!($p)) { Write-Host "FCU dead, restarting." Start-Process C:\FCU\FCU.exe -WorkingDirectory "C:\FCU" } $p = Get-Process -Name MCDU -ErrorAction silentlycontinue if (!($p)) { Write-Host "MCDU dead, restarting." Start-Process C:\MCDU\MCDU.exe -WorkingDirectory "C:\MCDU" } $p = Get-Process -Name pmFBW -ErrorAction silentlycontinue if (!($p)) { Write-Host "pmFBW dead, restarting." Start-Process C:\FBW\pmFBW.exe -WorkingDirectory "C:\FBW" } $p = Get-Process -Name pmSystems -ErrorAction silentlycontinue if (!($p)) { Write-Host "pmSystems dead, restarting." Start-Process C:\pmSystems\pmsystems.exe -WorkingDirectory "C:\pmSystems" } if ($startFlag -eq 1) { # Clear the flag and start the processes $startFlag = 0 Start-Sleep -Seconds 45 Write-Warning "Un-Freezing..." Start-Process C:\scripts\sim_unpause.exe -WorkingDirectory "C:\scripts" -WindowStyle Minimized } Start-Sleep -Seconds 5 }
X-PlaneãTillerãããã³æŸèæ
ãã£ã©ãŒã¯ãããã³ããã©ãŒãããã³ã³ãããŒã«ãã³ãã«ã§ãã å°äžã§ã®ã¿ãã·ã³ã°ã«å¿
èŠã§ãã
2ã€ã®æ¹æ³ã§æ瞊ã§ããŸã-ãã£ã©ãŒãšããã«ã ç¹å®ã®é床ã«éãããšããã£ã©ãŒã¯åäœãåæ¢ããããã«ã®ã¿ãæ®ããŸãã
åé¡ã¯ãX-PlaneïŒãã®èè
ã«ãã£ãŠèªããããŠããããã«ïŒã§ããŒã¿åç
§ãã倱ã£ããããšã§ãã ãã£ã©ãŒã®äœçœ®ãæžã蟌ãããšãã§ããå
éšå€æ°ã
ããã«ããžã§ã€ã¹ãã£ãã¯ãX-Planeã«æ¥ç¶ãããŠããªãå Žåã圌ã¯ç§ãã¡ãããŒããŒãäžãé£ã¶æ²æšãªè²§åŒ±ãªç
®ç©ã ãšä¿¡ããŠããã®ã§ãããã³ããã³ãã«ãæäœããŠãµã€ãã¹ãã¢ãªã³ã°ãã€ãŒã«ããã®ã³ãã³ãããªã³ã«ããå¿
èŠããããŸãã
X-Plane Austin Meyerã®èè
ïŒãã®éã圌ã¯ãã¹ããªãã¯ãªã€ã®ã§ããããšãå€æããŸããããããããªããmoiïŒãšããã®ä»¶ã«é¢ããŠéåžžã«åµã®ãããªéä¿¡ãè¡ããŸããã圌ã¯ãªãªãŒã¹ã®1ã€ã§ãã®ãžã§ã€ã³ããä¿®æ£ããããšãçŽæããŸããã åŸ
ã£ãŠããŸãã
åŸ
ã£ãŠããéã«ãäžæ¹ã§ã¯ä»®æ³ãžã§ã€ã¹ãã£ãã¯ïŒVJoyïŒã«ããã¿ã€ãæŸèæãæžããããäžæ¹ã§ã¯ãããã¯ãŒã¯ãä»ããŠEHIDããã£ã©ãŒãã³ãã«ã®äœçœ®ã®å€ãååŸããŸãã
X-Planeã§ã¯ãåäžã®è»žãå²ãåœãŠãŸãããããã¯ãã£ã©ãŒã§ãããX-Planeã®ç®ã«ã¯äžæ£ã§ããããšããªããªã£ãããããµã€ãã¿ãŒã³æ©èœã¯ãµã€ãã¹ãã£ãã¯ã«ãã£ãŠãªãã«ãªããŸããã
ãã®æŸèæã«ã¯è€éãªãã®ãçãããã®ããªãã®ã§ããœãŒã¹ãæã£ãŠããçç±ã¯ãããŸããã ç§ã®æèŠã§ã¯ã.NETã§1æéã§æžãããŠããŸãã
ãããã«
ããããããã«ã€ããŠè©³ãã説æããã®ã§ãæçš¿ã¯éåžžã«åããªããŸããã
次ã®éšåã§ã¯ãã¹ã©ã€ããšãšã¢ãã¹ã®å»ºèšã®æŽå²ããããŸãã
ã·ãŒãã®å Žå-ãã®æ®µéã®åçïŒ
èªãã§ãããŠããããšãïŒ