X86-64 ã¢ããªã±ãŒã·ã§ã³ã®é«åºŠãªãããã°ææ³
ãã®èšäºã§ã¯ãé«åºŠãªãããã°æè¡ãæ·±ãæãäžããŠãéçºè ãè€éãªãœãããŠã§ã¢ã®ãã°ã«åãçµãã®ã«åœ¹ç«ã€ x86-64 ã¢ããªã±ãŒã·ã§ã³ã®é«åºŠãªæŠç¥ãæ¢ããŸãã

é«åºŠãªãããã°ã®æŠèŠ
ãããã°ã¯ããœãããŠã§ã¢ ã¢ããªã±ãŒã·ã§ã³å ã®åé¡ãç¹å®ãåãåããä¿®æ£ãã现å¿ã®ããã»ã¹ã§ããé«åºŠãªãããã°ã¯ããã«æ°ã¹ããããé²ããé«åºŠãªæè¡ã䜿çšããŠãå€§èŠæš¡ãè€éããŸãã¯é«æ§èœã® x86-64 ã¢ããªã±ãŒã·ã§ã³å ã§çºçããè€éãªãœãããŠã§ã¢ã®åé¡ãè§£æããŸãããœãããŠã§ã¢åäœã®è€éãªç¶²ãç©æ¥µçã«æãäžããããšã¯ãéåžžã«ç¹æ®ãªç¶æ³äžã§çŸããããŸãã¯ã·ã¹ãã ã¬ãã«ã®çžäºäœçšã«æ·±ãæ ¹ããããšããã©ããã®ãªããã°ã蚺æããéã«ãæšæºçãªãããã°æ¹æ³ã§ã¯äžååãªå Žåã«ç¹ã«éèŠã§ãã
é«åºŠãªãããã°æŠç¥ã®å€çšéãªæŠåšã¯ãx86-64 ã¢ãŒããã¯ãã£ã«æ ¹ä»ããéçºè ããœãããŠã§ã¢ ãšã³ãžãã¢ã«ãšã£ãŠæãéèŠã§ããããã¯ãåŸæ¥ã®å°å·ã©ã€ã³ ãããã°ã IDE ããŒã¹ã®ããŒã«ãè¶ ããŠãã¡ã¢ãªåæãèªåãããã° ã¹ã¯ãªããããªããŒã¹ ãšã³ãžãã¢ãªã³ã°ãªã©ã®åŒ·åãªãŠãŒãã£ãªãã£ã掻çšããããšãæå³ããŸãããã®ã¹ãã«ã»ãããæã£ãŠãããšãéçºè ã¯ãã°ãä¿®æ£ããã ãã§ãªãããœãããŠã§ã¢ãå éšã§ã©ã®ããã«åäœãããã«ã€ããŠããæ·±ãæŽå¯ãåŸãããšãã§ããŸããããã¯ã峿ã®åé¡è§£æ±ºãšé·æçãªãœãããŠã§ã¢å質åäžã®äž¡æ¹ã«ãšã£ãŠéåžžã«è²Žéãªç¥èã§ãã
é«åºŠãªãããã°ã«ã¯ãçµ¶ãéãªã奜å¥å¿ãšåæçæèã®èãæ¹ãçµã¿èŸŒãŸããŠããŸãããããã¬ã¯ãã¢ã»ã³ã㪠ã¬ãã«ã®ã³ãŒããããã²ãŒãããè€éãªã¹ã¬ããã®çžäºäœçšãè§£ãã»ãããå¿èãšå°éç¥èãå¿ èŠãšãã粟床ã§ããã©ãŒãã³ã¹ã®ããã«ããã¯ãåæããå¿ èŠããããŸããé«åºŠãªãããã°ãç¿åŸãããšããèžè¡ãšç§åŠã®å¢ç®ã§è¿·ã£ãŠããäžæ¹ã§ãéçºè ã¯æãé åºãªãã°ã«èªä¿¡ãæã£ãŠåãçµã¿ã匷å㪠x86-64 ãã©ãããã©ãŒã äžã§ãœãããŠã§ã¢ã®å埩åãšä¿¡é Œæ§ãåäžã§ããããšãçŽæãããŠããŸãã
次ã®ã»ã¯ã·ã§ã³ã§ã¯ããããã®é«åºŠãªãã¯ããã¯ã®æ žå¿ãæãäžãããããã°ã®å·šå ã«ãªãããã®éçºè ã®æ ã®ããã«å³éžãããå®è·µçãªç¥èã玹ä»ããŸããããã§èª¬æããåæŠç¥ãšããŒã«ã¯ãããŒã«ããã¯ã¹ã«ãšã£ãŠäŸ¡å€ããããx86-64 ã¢ããªã±ãŒã·ã§ã³éçºã®èœåãæ¡åŒµããæè¡ãåäžãããŸãã
ãããã°ã«é¢ãã x86-64 ã¢ãŒããã¯ãã£ã®çè§£
ããŒããŠã§ã¢ã®è€éããçè§£ããããšã¯ãç¹ã« x86-64 ã¢ãŒããã¯ãã£ã§ã¢ããªã±ãŒã·ã§ã³ããããã°ããå Žåã«éåžžã«åœ¹ç«ã¡ãŸãã AMD64 ãŸã㯠Intel 64 ãšãåŒã°ãã x86-64 ã¯ãx86 åœä»€ã»ããã® 64 ããã ããŒãžã§ã³ã§ããã32 ãããã®åã¢ãã«ã«æ¯ã¹ãŠããã€ãã®æ©èœåŒ·åãå°å ¥ãããŠããããœãããŠã§ã¢ ã¢ããªã±ãŒã·ã§ã³ã®ãã°ãæããã«ããããäžæçã«ãããããããšãã§ããŸãã
äœããããŸããx86-64 ã¢ãŒããã¯ãã£ã«ãããã¯ããã«å€§ããªã¢ãã¬ã¹ç©ºéãžã®ã¢ã¯ã»ã¹ãå¯èœã«ãªããŸããã€ãŸããéçºè ã¯çè«äžæå€§ 16 ãšã¯ãµãã€ãã®å€§éã®ã¡ã¢ãªã䜿çšããŠäœæ¥ã§ããããšã«ãªããŸãããã®å®¹éã¯å€§èŠæš¡ãªã¢ããªã±ãŒã·ã§ã³ã«ã¯æçã§ããããã€ã³ã¿ã 32 ããããã 64 ãããã«æ¡åŒµãããããšãæå³ãããã€ã³ã¿ã®ç®è¡æŒç®ãã¡ã¢ãª ã¢ãã¬ã¹æå®ã«é¢é£ããæ°ããªçš®é¡ã®ãã°ãçºçããå¯èœæ§ããããŸãããããã£ãŠãx86-64 ã§ãœãããŠã§ã¢ããããã°ããå Žåã¯ãã¡ã¢ãª ã¢ãã¬ã¹æå®ã«é¢ãã誀ã£ãä»®å®ããã€ã³ã¿åã®èª€çšã«ãã£ãŠçŸããå¯èœæ§ã®ãããšã©ãŒã«æ³šæããå¿ èŠããããŸãã
x86-64 ã¢ãŒããã¯ãã£ã«ã¯ã远å ã®æ±çšã¬ãžã¹ã¿ãŒãšæ°ããåœä»€ãçµã¿èŸŒãŸããŠãããããã©ãŒãã³ã¹ãæé©åãããã°ã«å¯Ÿããæ°ããéãäœãåºãããšãã§ããŸãããããã°ã®ã³ã³ããã¹ãã§ã¯ãã¢ããªã±ãŒã·ã§ã³ãå®è¡äžã«ãããã®ã¬ãžã¹ã¿ãã©ã®ããã«äœ¿çšããããçè§£ããããšãéèŠã§ããã¬ãžã¹ã¿ã«ã¯éèŠãªå€ãå«ãŸããŠããå¯èœæ§ãããã管çã誀ããšãã»ã°ã¡ã³ããŒã·ã§ã³éåãã32 ãããç°å¢ããã埮åŠãªé倧ãªåé¡ãçºçããå¯èœæ§ããããŸãããããã£ãŠããããã®ã¬ãžã¹ã¿ã®ç¶æ ãæç¢ºã«è¡šç€ºããã¢ããªã±ãŒã·ã§ã³ã®å®è¡äžã«ãã®äœ¿çšç¶æ³ã远跡ã§ãããããã¬ãäžå¯æ¬ ã§ãã
èæ ®ãã¹ããã 1 ã€ã®åŽé¢ã¯ã以åã®ããŒãžã§ã³ãšæ¯èŒããå Žåã« x86-64 ã§ç°ãªãåŒã³åºãèŠçŽã§ãã x86-64 ã§ã¯ã颿°ã®æåã®ããã€ãã®åŒæ°ã¯ãåŸæ¥ã® 32 ããã x86 ã®ããã«ã¹ã¿ãã¯äžã§ã¯ãªããã¬ãžã¹ã¿ã§æž¡ãããŸãããããã°æã颿°ã®ãã©ã¡ãŒã¿ãŒãçè§£ããããšãããšãã«ãã©ã®ã¬ãžã¹ã¿ããã§ãã¯ããå¿ èŠãããããç¥ãããšã¯äžå¯æ¬ ã§ããåŒã³åºãèŠçŽã誀ã£ãŠè§£éãããšã颿°ã®å®è¡ããã°ã®åå ã«ã€ããŠèª€ã£ãçµè«ã«ã€ãªããå¯èœæ§ããããŸãã
1 ã€ã®åœä»€ã§è€æ°ã®ããŒã¿ ãã€ã³ããåŠçã§ãã SIMD (åäžåœä»€ãè€æ°ããŒã¿) åœä»€ã x86-64 ã¢ãŒããã¯ãã£ã§æ¡åŒµãããŠããŸãããããã¬ã¯ãã¢ããªã±ãŒã·ã§ã³ãããŒã¿ã䞊ååŠçããæ¹æ³ãæç¢ºã«ææ¡ããããã«ãSIMD ã¬ãžã¹ã¿ã®ç¶æ ãš SIMD åœä»€ã®çµæãè§£éã§ããªããã°ãªããŸããããããã®åœä»€ã誀ã£ãŠäœ¿çšãããšã誀ã£ãåºåãçæãããããã¯ã©ãã·ã¥ãçºçããããããã°ãç°¡åã«çºçããå¯èœæ§ããããŸãã
ãããã®è€éããèæ ®ãããšãx86-64 ã®ãããã°ã§ã¯ãå€ãã®å ŽåãããŒããŠã§ã¢æ©èœãšãœãããŠã§ã¢ ããžãã¯ã®éã®åŸ®åŠãªçžäºäœçšãçè§£ããããšãéèŠã«ãªããŸããå€ãã®ã·ããªãªã§ã¯ãã³ãŒããããŒããŠã§ã¢äžã§ã©ã®ããã«å®è¡ããããã«ã€ããŠã®éçºè ã®èª€ã£ãæ³å®ãããã°ãçºçããå¯èœæ§ããããŸããã³ãŒãã®å®è¡ãã·ãã¥ã¬ãŒãããCPU ã³ã¢ã§ã®åäœãäºæž¬ããã¬ãžã¹ã¿ãã¡ã¢ãªã®ç¶æ ã®å€åã衚瀺ã§ããããŒã«ã¯ããããã° ããŒã«ãããã®éèŠãªã³ã³ããŒãã³ãã«ãªããŸãã
AppMaster ãã©ãããã©ãŒã ã§äœæ¥ããéçºè ã«ãšã£ãŠããã©ãããã©ãŒã ã¯åºç€ãšãªãã¢ãŒããã¯ãã£ã®è€éããåŠçãããããx86-64 ãçè§£ããããšã¯ããã»ã©éèŠã§ã¯ãããŸãããããã«ãããããããæ·±ãç¥èãããã°ãéçºè ã¯ãã©ãããã©ãŒã ã®æ©èœãããé©åã«æŽ»çšããå¿ èŠã«å¿ããŠããäœãã¬ãã«ã§å®è¡ãããæäœãçè§£ã§ããããã«ãªããŸãã

ãããã°ç°å¢ã®ã»ããã¢ãã
x86-64 ã¢ããªã±ãŒã·ã§ã³ããããã°ããæ ã¯ã匷åãªãããã°ç°å¢ãšãã匷åºãªåºç€ãæ§ç¯ããããšããå§ãŸããŸããçµéšè±å¯ãªéçºè ã§ãããã®éèŠãªèšå®ããªããã°ããœãããŠã§ã¢ã®åé¡ãè€éã«çµ¡ã¿åã£ãŠè¿·ã£ãŠããŸãå¯èœæ§ããããŸããçæ³çãªç°å¢ã§ã¯ãé©åãªãŠã£ãžã§ãããã¬ãžã§ãããè£ åãããã ãã§ãªããããã»ã¹ãåçåãããã³ãŒãã®èšºæãæç¢ºã«ãªããŸãã x86-64 ã®åãçµã¿ã«å¹æçãªãããã°ãã€ãŒãäœæããæ¹æ³ã¯æ¬¡ã®ãšããã§ãã
ãããã¬ã®éžæ
ãããã¬ãŒã¯ããããã° ããŒã«ãããã®èŠã§ãã x86-64 ã¢ããªã±ãŒã·ã§ã³ã®å Žåããã®åºç¯ãªæ©èœã»ãããšæè»æ§ã«ããã GDB (GNU Debugger) ãªã©ã®äžè¬çãªãããã¬ãŒãäžè¬çã«å©çšãããŸãããŸããææ°ã®èšèšãš Clang ã³ã³ãã€ã©ãªã©ã®ããŒã«ãšã®çµ±åã§ç¥ããã LLVM ãããžã§ã¯ãã®äžéšã§ãã LLDB ãéžæãã人ãããŸãããããã¬ãŒãéžæãããšãã¯ãSSE ãã¯ãã«åœä»€ããããŒããŠã§ã¢äŸå€åŠçãŸã§ãx86-64 ã¢ãŒããã¯ãã£ã®ãã¹ãŠã®åŽé¢ããµããŒãããŠããããšã確èªããŠãã ããã
IDE ãšã®çµ±å
çµ±åéçºç°å¢ (IDE) ã¯ãã³ãŒãã®ç·šéãæ§ç¯ããããã°ã 1 ã€ã®ã€ã³ã¿ãŒãã§ã€ã¹ã§çµã¿åãããããšã§ããããã° ããã»ã¹ãç°¡çŽ åã§ããŸããã€ã³ããªãžã§ã³ã¹ãšçŽæçãªã€ã³ã¿ãŒãã§ã€ã¹ãåãã Visual Studio ãŸã㯠JetBrains Rider ããäžéšã®äººã«ãšã£ãŠé Œãã«ãªãéžæè¢ãšãªããŸãããããã¯ã·ãŒã ã¬ã¹ãªãããã¬ãŒçµ±åãæäŸãããã¬ãŒã¯ãã€ã³ãã®èšå®ãã³ãŒãã®ã¹ãããå®è¡ã倿°ã®æ€æ»ã«å¯ŸããèŠèŠçãªã¢ãããŒããæäŸããŸãã
ã³ã³ãœãŒã«ã®æ¡çš
å®è·µçãªã¢ãããŒãã奜ãæãªããã®éã®å Žåã GDB ãªã©ã®ãããã¬ãŒã§ã³ã³ãœãŒã« ã³ãã³ãããã¹ã¿ãŒãããšãããã°ã©ã ã®å®è¡ãããæ·±ãçè§£ã§ããããã«ãªããè€éãªã·ããªãªã§ãããæè»ã«å¯Ÿå¿ã§ããããã«ãªããŸããã³ã³ãœãŒã«ã®ã»ããã¢ããã§ã¯ãé »ç¹ãªã¿ã¹ã¯ãšãã§ãã¯ãèªååããã«ã¹ã¿ã ã¹ã¯ãªãããšãšã€ãªã¢ã¹ãã倧ããªã¡ãªãããåŸãããŸãã
ã·ã¹ãã ãšãã°ã®ç£èŠ
ã·ã¹ãã ã¬ãã«ã®ã€ãã³ããæ³šææ·±ã芳å¯ãããšããããã¬ãŒãçŽæ¥å°éã§ããªãåé¡ãè§£æã§ããå¯èœæ§ããããŸãããããã£ãŠãã·ã¹ãã ç£èŠããŒã«ãçµã¿èŸŒã¿ããã°ã«ã¢ã¯ã»ã¹ããããšãéèŠã§ãã dmesg ã journalctl ããŸãã¯ãã©ãããã©ãŒã åºæã®ç£èŠãŠãŒãã£ãªãã£ã䜿çšãããšãã¢ããªã±ãŒã·ã§ã³ã®åäœã«åœ±é¿ãäžããå¯èœæ§ã®ããã«ãŒãã« ã¬ãã«ã®ã€ãã³ãã«ã€ããŠã®æŽå¯ãåŸãããšãã§ããŸãã
ãããã¡ã€ãªã³ã°ãšããã©ãŒãã³ã¹åæã®æºå
x86-64 ã¢ããªã±ãŒã·ã§ã³ã®åé¡ã¯ãå¿
ãããã¯ã©ãã·ã¥ãäžæ£ãªåäœã«é¢ãããã®ã§ã¯ãããŸãããç¹ã«éäžçãªèšç®ã¿ã¹ã¯ãå®è¡ããã¢ããªã±ãŒã·ã§ã³ã§ã¯ãããã©ãŒãã³ã¹ã®ããã«ããã¯ãåæ§ã«é倧ã«ãªãå¯èœæ§ããããŸãããããã£ãŠãå¹çã®åé¡ãæ€åºããŠä¿®æ£ããã«ã¯ã perf ã Valgrind ããŸã㯠Intel VTune Profiler ãªã©ã®ããã©ãŒãã³ã¹ ãããã¡ã€ãªã³ã° ããŒã«ããããã° ã¹ã€ãŒãã«å«ããŸãã
ããŒãžã§ã³ç®¡çã®éèŠæ§ã匷調ãã
æ°ããã³ãããããšã«ãã°ãå
¥ã蟌ãå¯èœæ§ãããããã倿Žã远跡ããæ°ããåé¡ãšé¢é£ä»ããããã«ã¯ããŒãžã§ã³ç®¡çã·ã¹ãã ã®å°å
¥ãäžå¯æ¬ ã§ãã git ãªã©ã®ãµãŒãã¹ã¯ããããã° ããŒã«ãšé£æºããŠããã°ããã€ã©ãã«äŸµå
¥ããããç¹å®ã§ããŸãã
No-codeãã©ãããã©ãŒã ã®åœ¹å²
ã³ãŒã ãããã°ã®è¿·è·¯ã®äžã§ãã AppMasterã®ãã㪠ããŒã³ãŒã ãœãªã¥ãŒã·ã§ã³ã¯ãã·ã³ãã«ãã®ãªã¢ã·ã¹ãæäŸã§ããŸãã AppMaster ãããŒã¿ ãããŒãšããžãã¹ ããžãã¯ãèŠèŠçã«è¡šçŸããããšã§ã詳现ãªã³ãŒã ãããã°ã®å¿ èŠæ§ã軜æžããç¹å®ã®ã·ããªãªã§ã¯ãéçºã®åææ®µéã§ã®ãã°ã®çºçãé²ãããšãã§ããŸãã
éçºè ã¯ãæ³çã«èšèšããããããã°ç°å¢ãéããŠãx86-64 ã¢ããªã±ãŒã·ã§ã³ã®ãããã°ã®è€éãªåé¡ãèªä¿¡ãæã£ãŠå·§ã¿ã«ããã²ãŒãã§ããŸããäžèšã®ããŒã«ãšå®è·µæ¹æ³ã¯åºçºç¹ã«ãããŸããããããžã§ã¯ãã®èŠæ±ãš x86-64 ã¢ãŒããã¯ãã£ã®åŸ®åŠãªéãã«æãããé©åããããã«ããã®ç°å¢ãç¶ç¶çã«åŒ·åããã³ã«ã¹ã¿ãã€ãºããããšãç¥æµãšãªããŸãã
ãã¬ãŒã¯ãã€ã³ããšãŠã©ãããã€ã³ããã€ã³ããªãžã§ã³ãã«æŽ»çšãã
è€é㪠x86-64 ã¢ããªã±ãŒã·ã§ã³ããããã°ããã«ã¯ãã³ãŒãã培åºçã«çè§£ããèªç±ã«äœ¿ãããããã° ããŒã«ãçŽæçã«äœ¿ãããªãå¿ èŠããããŸãããããã®äžã§ãããã¬ãŒã¯ãã€ã³ããšãŠã©ãããã€ã³ãã¯ãææ°ã®ãããã¬ã®æã匷åãªæ©èœã®äžéšãšããŠéç«ã£ãŠããŸãããããã䜿çšãããšãç¹å®ã®æ¡ä»¶äžã§ããã°ã©ã ã®å®è¡ã忢ããã¢ããªã±ãŒã·ã§ã³ã®ç¶æ ãšå€æ°ã®å€ããªã¢ã«ã¿ã€ã ã§èª¿ã¹ãããšãã§ããŸãã
ãã¬ãŒã¯ãã€ã³ãã¯äŒçµ±çã«ãéçºè ããã°ãçããæ€æ»ãå¿ èŠãšããå®è¡å¯èœãã¡ã€ã«å ã®ã³ãŒããŸãã¯ã¢ãã¬ã¹ã®ç¹å®ã®è¡ã«é 眮ãããŸãããã ããé«åºŠãªäœ¿çšæ³ã«ã¯ãå®è¡ãäžæåæ¢ããã ãã§ã¯ãããŸãããæ¡ä»¶ä»ããã¬ãŒã¯ãã€ã³ãã¯ããã«é²åãããã®ã§ãç¹å®ã®æ¡ä»¶ãæºããããå Žåã«ã®ã¿ã¢ããªã±ãŒã·ã§ã³ãäžæåæ¢ããç¡é¢ä¿ãªããŒã¿ã®éžå¥ã«ãããæéãæå°éã«æããŸããããšãã°ã倿°ãç¹å®ã®å€ã«éãããšãã«ã¢ã¯ãã£ãã«ãªãããã«æ¡ä»¶ä»ããã¬ãŒã¯ãã€ã³ããèšå®ãããšãç°åžžãªåäœãçºçããæ£ç¢ºãªç¬éãç¹å®ã§ããã¯ã©ãã·ã¥ãè«çãšã©ãŒãåŒãèµ·ãããšããžã±ãŒã¹ãç¹å®ããã®ã«éåžžã«åœ¹ç«ã¡ãŸãã
ãã 1 ã€ã®é«åºŠãªãã¯ããã¯ã¯ãã¢ããªã±ãŒã·ã§ã³ã忢ããã«ã³ã³ãœãŒã«ããã¡ã€ã«ã«ããŒã¿ãèšé²ãããªã©ã®ã¢ã¯ã·ã§ã³ãå®è¡ãããã¬ãŒã¯ãã€ã³ãã䜿çšããããšã§ãããã®ææ³ã«ãããããã°ã©ã ã®è€æ°åã®å®è¡ãŸãã¯é·æå®è¡ã·ããªãªäžã«æ å ±ãåéã§ããŸããããã¯ãæéã®çµéãšãšãã«çŸããåé¡ããåŸæ¥ã®ãããã° ã»ãã·ã§ã³ã§ã¯ç°¡åã«åçŸã§ããªãç¹å®ã®äœ¿çšãã¿ãŒã³ã®äžã§çŸããåé¡ãç¹å®ããŠè§£æ±ºããå Žåã«ç¹ã«åœ¹ç«ã¡ãŸãã
ããŒã¿ ãã¬ãŒã¯ãã€ã³ããšãåŒã°ãããŠã©ãããã€ã³ãã¯ãx86-64 ã¢ããªã±ãŒã·ã§ã³ããããã°ããããã®ãã 1 ã€ã®åŒ·åãªæ©èœã§ããæå®ãããã¡ã¢ãªäœçœ®ã®å 容ã倿Žããããšãã«éçºè ã«èŠåã§ããŸããããã¯ã倿°ã«äžæ£ãªå€ãå²ãåœãŠãããç¬éãæ£ç¢ºã«æããããã«äžå¯æ¬ ã§ããããŒãç Žæãåæ§ã®ã¡ã¢ãªé¢é£ã®åé¡ã調æ»ããŠããå ŽåããŠã©ãããã€ã³ãã¯è¬ãè§£ãéµãšãªãå¯èœæ§ããããŸããå€§èŠæš¡ã§ããã©ãŒãã³ã¹ã«ææãªã¢ããªã±ãŒã·ã§ã³ãæ±ãå Žåãäžéšã®ãããã¬ã§ã¯ãŠã©ãããã€ã³ãã䜿çšãããšããã°ã©ã ã®é床ãå€§å¹ ã«äœäžããå¯èœæ§ããããŸãããããŒããŠã§ã¢æ¯æŽãŠã©ãããã€ã³ãã§ã¯åãã¿ã¹ã¯ãã¯ããã«å°ãªããªãŒããŒãããã§å®è¡ã§ããããšãéèŠã§ãã
ãã¬ãŒã¯ãã€ã³ããšãŠã©ãããã€ã³ããæå€§éã«æŽ»çšããã«ã¯ãæŠç¥çãªã¢ãããŒããäžå¯æ¬ ã§ããã¢ã¯ãã£ããŒã·ã§ã³ã®é©åãªç¬éãšæ¡ä»¶ãéžæããããšã§ããããããããã° ããã»ã¹ã«çµ±åããŸããããã«ãããã¢ããªã±ãŒã·ã§ã³ã«åœ±é¿ãäžããããæ·±ãåé¡ãæããã«ãªãããšããããããŸããçŽæãçµéšããããŠãããã®é«åºŠãªãããã°æè¡ã䜿ãã°ãx86-64 ã¢ããªã±ãŒã·ã§ã³ãæ±ããŠããå¯èœæ§ã®ããæããšããã©ããã®ãªãè€éãªãã°ã«åãçµãããšãã§ããŸãã
éã¢ã»ã³ãã©ãšéã³ã³ãã€ã©ã®è©³çް
é«åºŠãªãããã°ãç¹ã« x86-64 ã¢ããªã±ãŒã·ã§ã³ã®å Žåãéçºè ã«ãšã£ãŠæã匷å㪠2 ã€ã®å³æ¹ã¯ãéã¢ã»ã³ãã©ãšéã³ã³ãã€ã©ã§ãããããã®ããŒã«ã¯ããœãŒã¹ ã³ãŒãã®ãããã°ã§ã¯äžååãªå ŽåããŸãã¯äºæž¬ã§ããªãåäœãããæé©åãŸãã¯é£èªåãããã³ãŒããæ±ãå Žåã«ããã€ããªå®è¡å¯èœãã¡ã€ã«ã詳ãã調ã¹ãããã«äžå¯æ¬ ã§ãã
éã¢ã»ã³ãã©ã¯ããã·ã³ã³ãŒã (CPU ãå®è¡ããçã®ãã€ããªåœä»€) ãã¢ã»ã³ããªèšèªã«å€æããããŒã«ã§ãããã®ããã»ã¹ã«ãããéçºè ã¯ããã°ã©ã ãå®è¡ããŠããåœä»€ã®ããã¹ã衚çŸã確èªã§ããããã«ãªããŸããããã¯ãã¡ã¢ãªç Žæãäºæããªã CPU åœä»€ã®å®è¡ãã»ãã¥ãªãã£è匱æ§ã®æªçšãªã©ã®äœã¬ãã«ã®åé¡ãçè§£ããããšããå Žåã«éåžžã«éèŠã§ãã
éã¢ã»ã³ãã©ãŒã䜿çšãããšãéçºè ã¯æ¬¡ã®ããšãå¯èœã«ãªããŸãã
- ã¢ããªã±ãŒã·ã§ã³ã®å®è¡ãã¹ã詳现ã«ãã¬ãŒã¹ããŸãã
- ããŸããŸãªã³ãŒãéšåéã®çžäºäœçšã調ã¹ãé«ã¬ãã«ã®æ§é ãã©ã®ããã«äœã¬ãã«ã®åœä»€ã«å€æãããããçè§£ããŸãã
- ã³ã³ãã€ã©ãŒããã°ãåŒãèµ·ããå¯èœæ§ã®ããæé©åãå°å ¥ããå¯èœæ§ã®ããé åãç¹å®ããŸãã
éã³ã³ãã€ã©ãŒã¯ããã«äžæ©é²ãã§ãã³ã³ãã€ã« ããã»ã¹ãéã«è©Šã¿ããã·ã³ ã³ãŒãã C ã C++ ãªã©ã®é«æ°Žæºèšèªã³ãŒãã«å€æãçŽããŸããããã¯åžžã«å®ç§ãªããã»ã¹ã§ãããšã¯éãããçµæã®ã³ãŒãã¯å ã®ãœãŒã¹ã»ã©èªã¿ã«ãããä¿å®ãã«ããå ŽåããããŸããããã§ããã¢ããªã±ãŒã·ã§ã³ãæŠå¿µçãªã¬ãã«ã§äœãè¡ã£ãŠãããã«ã€ããŠã®è²ŽéãªæŽå¯ãæäŸããŸãã
éã³ã³ãã€ã©ã䜿çšãããšãéçºè ã¯æ¬¡ã®ããšãå¯èœã«ãªããŸãã
- å ã®ãœãŒã¹ ã³ãŒããããååšããªãè€éãªã¢ã«ãŽãªãºã ã®æµããçè§£ããŸãã
- ãœãŒã¹ãå©çšã§ããªããµãŒãããŒãã£ã®ã©ã€ãã©ãªãŸãã¯ã³ã³ããŒãã³ããåæããŸãã
- 倱ããããœãŒã¹ ã³ãŒãã埩å ããŠãã¬ã¬ã·ãŒ ã¢ããªã±ãŒã·ã§ã³ã«ããããé©çšããæŽæ°ããŸãã
- ãã€ããªãæ¹ãããããŠãããã©ããããŸãã¯é ãããæªæã®ããã³ãŒããå«ãŸããŠãããã©ãããæ€åºããŸãã
éã¢ã»ã³ãã©ãšéã³ã³ãã€ã©ã䜿çšããå Žåãããããæå€§éã«æŽ»çšããã«ã¯ãããã€ãã®èŠçŽ ãèæ ®ããããšãéèŠã§ãã
- é©åãªããŒã«ã®éžæ: ãã¹ãŠã®éã¢ã»ã³ãã©ãšéã³ã³ãã€ã©ããã¹ãŠã®æ©èœããµããŒãããŠããããã§ã¯ãªããéçºããŒã«ã®å€æ§ãªãšã³ã·ã¹ãã ãšããŸã飿ºããŠããããã§ããããŸãããæ¢åã®ãããã¬ãŒãä»ã®éçºãã©ãããã©ãŒã ãšå¹æçã«çµ±åã§ãããã®ãç¹å®ããŸãã
- ã¢ã»ã³ããªèšèªãçè§£ãã: éã¢ã»ã³ãã©ã广çã«äœ¿çšããã«ã¯ãx86-64 ã¢ãŒããã¯ãã£ã®ã¢ã»ã³ããªèšèªãçè§£ããå¿ èŠããããŸããããã«ã¯è¿œå ã®åŠç¿ãå¿ èŠã«ãªãå ŽåããããŸãããæ ¹æ·±ããã°ã蚺æããèœåã«ãããŠã¯å¹æããããŸãã
- æ³çããã³å«ççåŽé¢: åé¡ã®ãã€ããªããªããŒã¹ ãšã³ãžãã¢ãªã³ã°ããããšãæ³çã«èš±å¯ãããŠããããšã確èªããŠãã ãããèš±å¯ãªããããã©ã€ãšã¿ãªãªãœãããŠã§ã¢ãéã³ã³ãã€ã«ãããšãæ³çãªãªã¹ã¯ãçããå¯èœæ§ããããŸãã
- æ£è åæ: ã¢ã»ã³ã㪠ã³ãŒããŸãã¯éã³ã³ãã€ã«ãããåºåã粟æ»ããŠãã°ã®æ ¹æ¬åå ãèŠã€ããã®ã¯ãç¿åŸã«æéããããã¹ãã«ã§ããå¿èãšç³»çµ±çãªã¢ãããŒããéµãšãªããŸãã
- ä»ã®ææ³ãšçµã¿åããã: éã¢ã»ã³ãã©ãéã³ã³ãã€ã©ãããã®ã³ã°ããããã¡ã€ãªã³ã°ãªã©ã®ä»ã®ãããã°ææ³ãšçµã¿åãããŠäœ¿çšââãããšãåé¡ã®ããå®å šãªå šäœåãææ¡ã§ããŸãã
AppMasterã®ãããªno-codeãã©ãããã©ãŒã ã䜿çšããå Žåããã©ãããã©ãŒã ãã³ãŒãã®çæãšå®è¡ã管çãããããéåžžãéã¢ã»ã³ãã©ãéã³ã³ãã€ã©ãæäœããå¿ èŠã¯ãããŸãããããã§ãããããã®ããŒã«ãã©ã®ããã«æ©èœããããçè§£ããããšã¯ã no-codeç°å¢å ã§ãã£ãŠãããŸãã¯no-codeãã©ãããã©ãŒã ãä»ã®æ¢åã·ã¹ãã ãšçµ±åããå Žåã§ãã£ãŠããããè€éãªåé¡ããããã°ããã®ã«æçã§ãã
ã¬ã¬ã·ãŒ ã·ã¹ãã ã®ä¿å®ãæé©åããããã«ãã§ã®ã¯ã©ãã·ã¥ã®åæããŸãã¯åã«ãã€ããªã®å éšåäœã«ã€ããŠã®å¥œå¥å¿ãæºããå Žåã§ããéã¢ã»ã³ãã©ãšéã³ã³ãã€ã©ã¯ãé«åºŠãªãããã¬ã®ããŒã«ãããã«äžå¯æ¬ ãªããŒã«ã§ãã
ã¡ã¢ãªåæã䜿çšãããã°ã®æ€åº
ã¡ã¢ãªåæã¯ãç¹ã« x86-64 ã¢ãŒããã¯ãã£ã§åäœããè€éãªã¢ããªã±ãŒã·ã§ã³ã«ãšã£ãŠããããã° ããŒã«ãããã®éèŠãªã³ã³ããŒãã³ãã§ããé«åºŠãªã¢ããªã±ãŒã·ã§ã³ã§ã¯ãå€§èŠæš¡ãªããŒã¿ã»ãããåçå²ãåœãŠãåæå®è¡ã¹ã¬ãããæ±ãããšãå€ãã埮åŠã§è¿œè·¡ãé£ããã¡ã¢ãªã®åé¡ãçºçããäœå°ãååã«ãããŸããããã§ã¯ãã¡ã¢ãªåæã广çã«æŽ»çšããŠããããã®ãšããã©ããã®ãªããã°ãæ€åºããŠè§£æ±ºããæ¹æ³ã説æããŸãã
x86-64 ã¢ããªã±ãŒã·ã§ã³ã®ã¡ã¢ãª ã¬ã€ã¢ãŠãã«ã€ããŠ
ã¡ã¢ãªåæææ³ã詳ãã説æããåã«ãã¡ã¢ãªãã©ã®ããã«æ§é åãããx86-64 ã¢ããªã±ãŒã·ã§ã³ã«ãã£ãŠå©çšãããããææ¡ããããšãäžå¯æ¬ ã§ãã x86-64 ã¢ãŒããã¯ãã£ã¯ 64 ãããã®ä»®æ³ã¢ãã¬ã¹ç©ºéããµããŒãããŠãããããã¢ããªã±ãŒã·ã§ã³ã¯èšå€§ãªéã®ã¡ã¢ãªã䜿çšã§ããŸãããããããã®åºå€§ãªã¹ããŒã¹ã«ã¯ãããã广çã«ç®¡çããããã®è€éãã䌎ããŸãããããã¡ ãªãŒããŒãããŒããã³ã°ãªã³ã° ãã€ã³ã¿ãã¡ã¢ãª ãªãŒã¯ããã®ä»ã®çš®é¡ã®ç Žæãªã©ã®åé¡ã¯ãããå¶éãããç°å¢ãããã¯ããã«æœäŒæ§ããããããåºç¯ãªåœ±é¿ãäžããå¯èœæ§ããããŸãã
ã¡ã¢ãªåæçšã®ããŒã«
éçºè ãã¡ã¢ãªäœ¿çšéãåæã§ããããŒã«ãããã€ããããŸãã
- Valgrind: ã¡ã¢ãªç®¡çãšã¹ã¬ããã®ãã°ã®æ€åºã«åœ¹ç«ã€ã€ã³ã¹ãã«ã¡ã³ããŒã·ã§ã³ ãã¬ãŒã ã¯ãŒã¯ã
- GDB: GNU ãããã¬ãŒãããŸããŸãªã³ãã³ãã§äœ¿çšããŠãããŒããã¹ã¿ãã¯ã調ã¹ãã¡ã¢ãªã®å€æŽãç£èŠã§ããŸãã
- AddressSanitizer: å¢çå€ã¢ã¯ã»ã¹ãè§£æŸåŸã®äœ¿çšãã°ãæ€åºã§ããé«éã¡ã¢ãª ãšã©ãŒæ€åºåšã
åããŒã«ãå±éããŠãç¹å®ã®çš®é¡ã®ã¡ã¢ãªã®åé¡ãç¹å®ã§ããŸããããšãã°ãValgrind ã¯ãªãŒã¯ãæªå®çŸ©ã®ã¡ã¢ãªäœ¿çšéã®æ€åºã«åªããŠãããAddressSanitizer ã¯ãããã¡ ãªãŒããŒãããŒãåæ§ã®ã¢ã¯ã»ã¹ ãšã©ãŒãè¿ éã«ç¹å®ã§ããŸãã
èšæ¶åæã®å®è·µçãªæŠç¥
ã¡ã¢ãªåæããŒã«ã䜿çšããå Žåã¯ãæ¬¡ã®æŠç¥ãèæ ®ããŠãã ããã
- éçºãµã€ã¯ã«ã«çµ±åãããã¡ã¢ãªåæããŒã«ã䜿çšãã èªåãã¹ã ãæ¡çšããŠããã°ãæ©æã«çºèŠããŸãã
- çŸå®çãªã¯ãŒã¯ããŒãäžã§ ã©ã³ã¿ã€ã åæ ãå®è¡ããäžè¬çãªã¢ããªã±ãŒã·ã§ã³äœ¿çšæ³ã§ã®ã¡ã¢ãªã®åäœã芳å¯ããŸãã
- éçåæããŒã« ãçµã¿èŸŒãã§ãå®è¡åã«æœåšçãªãã°ãæ€åºããŸãã
- ãªãŒã¯ããã®ä»ã®ç°åžžã瀺ãå¯èœæ§ã®ããç°åžžãªã¢ã¯ãã£ããã£ã® ã¡ã¢ãªå²ãåœãŠãã¿ãŒã³ ãåæããŸãã
- ã«ã¹ã¿ã ã¹ã¯ãªããã 䜿çšããŠæ€åºãèªååããæãé¢é£æ§ã®é«ãã¡ã¢ãªé åã«çŠç¹ãåœãŠãŸãã
å ãœãããŠã§ã¢éçºè ãšããŠãç§ã¯ã¡ã¢ãªã宿çã«åæããããšã®éèŠæ§ã蚌æã§ããŸããç¹ã«ãã«ãã¹ã¬ããç°å¢ã§ã¯ãã¹ã¬ããéã®çžäºäœçšãè€éãªåæã®åé¡ãç«¶åç¶æ ãåŒãèµ·ããå¯èœæ§ããããŸãã
No-Codeãã©ãããã©ãŒã ã®åœ¹å²
AppMasterã®ãããªNo-codeãã©ãããã©ãŒã ã¯ãåºç€ãšãªãã¡ã¢ãªç®¡çãããçšåºŠæœè±¡åããããšã§ãã¡ã¢ãªé¢é£ã®ãã°ã®ããã€ãã®åŽé¢ã«ã察åŠããŸãããããã¯ãããã€ãã®æšæºçãªã¡ã¢ãªã®åé¡ãå å¶ããŠè§£æ±ºã§ãããšã©ãŒ ãã§ãã¯ãšèªåãã¹ãã®å±€ãæäŸããŸããããã§ãããã€ã¬ã¯ã ã¡ã¢ãªåæã¯ãäœã¬ãã«ã®ãããã°ãšããã©ãŒãã³ã¹ã®æé©åã®ããã®éçºè ã®æŠåšã®äžã§äŸç¶ãšããŠäžå¯æ¬ ãªã¹ãã«ã§ãã

ã¡ã¢ãªåæã¯ 1 åéãã®ã¢ã¯ãã£ããã£ã§ã¯ãªããã¢ããªã±ãŒã·ã§ã³ã®ã©ã€ããµã€ã¯ã«å šäœã«ãããç¶ç¶çãªããã»ã¹ã§ããããšã«çæããããšãéèŠã§ãããããã®æè¡ã宿çã«çµã¿èŸŒãããšã§ãã¢ããªã±ãŒã·ã§ã³ã®ããã©ãŒãã³ã¹ãä¿¡é Œæ§ãå®å šæ§ãç¶æãããx86-64 ã¢ãŒããã¯ãã£ãæäŸãã倧éã ãè€éãªã¡ã¢ãªç©ºéã广çã«ç®¡çãããŸãã
ã¢ããªã±ãŒã·ã§ã³ã®ããã©ãŒãã³ã¹ã®ããã«ããã¯ããããã¡ã€ãªã³ã°ãã
ããã©ãŒãã³ã¹ ãããã¡ã€ãªã³ã°ã¯ãå¯èœãªéãå¹ççã«æ©èœããŠããªãå¯èœæ§ã®ãããœãããŠã§ã¢ã®éšåãç¹å®ããã®ã«åœ¹ç«ã€ãããx86-64 ã¢ããªã±ãŒã·ã§ã³ãæé©åããããã®éèŠãªã¹ãããã§ãããããã¡ã€ãªã³ã°ã¯ãããã°ãšé£æºããŠè¡ãããéå¹çæ§ã ãã§ãªããããã©ãŒãã³ã¹ã®åé¡ã®åå ãšãªã£ãŠããæœåšçãªãã°ãæããã«ããããšãã§ããŸãã
ãããã¡ã€ãªã³ã°ãéå§ããã«ã¯ãéçºè
ã¯ãŸãé©åãªããŒã«ãéžæããå¿
èŠããããŸãã gprof ã Valgrind ã®ããŒã« ã¹ã€ãŒããIntel ã® VTune Amplifier ãªã©ãx86-64 ã¢ããªã±ãŒã·ã§ã³å°çšã«èšèšãããããŸããŸãªãããã¡ã€ãªã³ã° ããŒã«ãå©çšå¯èœã§ãããããã®ããŒã«ã«ã¯ããããã颿°å
šäœã®å®è¡æéã®æŠèŠãããã£ãã·ã¥ã®ããããšãã¹ã®è©³çްãªåæãŸã§ãç¬èªã®åŒ·ã¿ãšå¿çšåéããããŸãã
ããŒã«ãéžæããããæ¬¡ã®ã¹ãããã§ã¯ã¢ããªã±ãŒã·ã§ã³ããããã¡ã€ãªã³ã° ã¢ãŒãã§å®è¡ããŸãããã®ãã§ãŒãºäžã«ããããã¡ã€ã©ãŒã¯ãæ¶è²»ããã CPU ãµã€ã¯ã«ãã¡ã¢ãª ã¢ã¯ã»ã¹ ãã¿ãŒã³ãå®è¡ãããã·ã¹ãã ã³ãŒã«ãªã©ãã¢ããªã±ãŒã·ã§ã³ã®ããã©ãŒãã³ã¹ã®ããŸããŸãªåŽé¢ã«é¢ããããŒã¿ãåéããŸããäžéšã®ãããã¡ã€ã©ãŒã¯ãã¢ããªã±ãŒã·ã§ã³ã®å®è¡ããªã¢ã«ã¿ã€ã ã§è¿œè·¡ããæ©èœãæäŸããå ãã倿Žã®åœ±é¿ã«ã€ããŠå³åº§ã«ãã£ãŒãããã¯ãæäŸããŸãã
ãããã¡ã€ãªã³ã°ã®éèŠãªåŽé¢ã¯ãæãå€ãã®ãªãœãŒã¹ãæ¶è²»ããã³ãŒãã®ã»ã¯ã·ã§ã³ã§ãããããã¹ããããç¹å®ããããšã§ãããããã¹ãããã¯ãå€ãã®å Žåãéå¹çãªã¢ã«ãŽãªãºã ãäžå¿ èŠãªããŒã¿åŠçããŸãã¯äžååãªã¡ã¢ãªç®¡çã®çµæãšããŠçºçããŸãããããã®ãããã¹ãããã«æé©åã®åãçµã¿ãå床éäžãããããšã§ãéçºè ã¯å°ãªãåŽåã§å€§å¹ ãªããã©ãŒãã³ã¹ã®åäžãéæã§ããŸãã
éçºè ã¯ããããã¡ã€ã©ãŒã®åŒã³åºãã°ã©ãã詳ããåæããŠãããŸããŸãªé¢æ°ãã¢ãžã¥ãŒã«éã®é¢ä¿ãäŸåé¢ä¿ãçè§£ããããšãã§ããŸãããããã®ã³ãŒã« ã°ã©ãã¯ã解決çã«ã³ãŒãã®ç¹å®éšåã®ãªãã¡ã¯ã¿ãªã³ã°ãåèšèšãå«ãŸããå¯èœæ§ãããããã©ãŒãã³ã¹åé¡ã®éæ¥çãªåå ãæ£ç¢ºã«ç¹å®ããã®ã«åœ¹ç«ã¡ãŸãã
ãããã¡ã€ãªã³ã°ã«ãããäž»ãªèª²é¡ã® 1 ã€ã¯ãçæãããèšå€§ãªéã®ããŒã¿ãåŠçããããšã§ãã广çãªãããã¡ã€ãªã³ã°ã«ã¯ã系統çãªã¢ãããŒããå¿ èŠã§ããå€ãã®å Žåã倧ãŸããªæŠèŠããå§ããŠãç¹å®ã®é åã«ç¹°ãè¿ãçŠç¹ãåœãŠãŸããããã«ãææçŸ©ãªæ¹åãè¡ãã«ã¯ããããã¡ã€ãªã³ã° ããŒã¿ãšãœãŒã¹ ã³ãŒããé¢é£ä»ããããšãäžå¯æ¬ ã§ããææ°ã®ãããã¡ã€ã©ãŒã¯ IDE ãšçµ±åãããŠããããããã¡ã€ãªã³ã°åºåãã察å¿ããã³ãŒãè¡ã«çŽæ¥ç§»åã§ããããã«ãªããŸãã
ããã©ãŒãã³ã¹ã®ããã«ããã¯ãç¹å®ããåŸãéçºè ã¯ãã¢ã«ãŽãªãºã ã®æé©åãããŒã¿æ§é ã®æ¹åãI/O æäœã®åæžã䞊åããã°ã©ãã³ã°æè¡ã®æŽ»çšãªã©ãããŸããŸãªã¢ã¯ã·ã§ã³ãå®è¡ã§ããŸãããã«ãã¹ã¬ãã ã¢ããªã±ãŒã·ã§ã³ã§ã¯ããããã¡ã€ãªã³ã°ã¯ããããããã¯ãç«¶åç¶æ ã«ã€ãªããåæã®åé¡ãæ€åºããŠè§£æ±ºããã®ã«ã圹ç«ã¡ãŸãã
AppMasterãªã©ã®no-codeãã©ãããã©ãŒã ã®ã³ã³ããã¹ãã§ããäžè¬çãªãããã¡ã€ãªã³ã°ååãé©çšãããŸãã AppMasteråºç€ãšãªãã³ãŒããæœè±¡åããããžã¥ã¢ã« ã¬ã€ã€ãŒãæäŸããŸããããã¯ãç¹ã« API åŒã³åºããããŒã¿ããŒã¹ ã¯ãšãªãªã©ã®è€éãªå¯Ÿè©±ãå«ãŸãã Web ã¢ããªã±ãŒã·ã§ã³ãã¢ãã€ã« ã¢ããªã±ãŒã·ã§ã³ãæ±ãå Žåã«ãããã©ãŒãã³ã¹ãåäžã§ããé åãç¹å®ããã®ã«åœ¹ç«ã¡ãŸãã
æåŸã«ããããã¡ã€ãªã³ã°ã¯ 1 åéãã®ã€ãã³ãã§ã¯ãªããç¶ç¶çãªã¡ã³ããã³ã¹ ããã»ã¹ã®äžéšã§ããå¿ èŠããããŸããã¢ããªã±ãŒã·ã§ã³ãšãã®ã¯ãŒã¯ããŒããé²åãããšãæ°ããªããã«ããã¯ãçŸããå¥ã®ãããã¡ã€ãªã³ã° ã»ãã·ã§ã³ãå¿ èŠã«ãªãå ŽåããããŸããããã©ãŒãã³ã¹ããŠãŒã¶ãŒ ãšã¯ã¹ããªãšã³ã¹ãéçšã³ã¹ããšçŽæ¥çžé¢ããå€§èŠæš¡ãªç°å¢ã§ã¯ãç¶ç¶çãªãããã¡ã€ãªã³ã°ãšæé©åãããã«éèŠã«ãªããŸãã
ãããã¡ã€ãªã³ã°ã¯ããœãããŠã§ã¢ ããã©ãŒãã³ã¹ã®è€éãªã¿ãã¹ããªãŒãè§£æããããã®æè¡çèœåãšæŠç¥çã¢ãããŒããå¿ èŠãšããæè¡ã§ããé©åãªããŒã«ããããšå¥å šãªæ¹æ³è«ã䜿çšãããšããããã¡ã€ãªã³ã°ã«ãã£ãŠãåäœãé ãã¢ããªã±ãŒã·ã§ã³ãããŠãŒã¶ãŒã®æäœã«æ©æã«å¿çããŠå¹ççã«åäœããã¢ããªã±ãŒã·ã§ã³ã«å€æã§ããŸãã
ã¹ã¯ãªããã䜿çšããèªåãããã°ã®å®è£
ãããã° ããã»ã¹ã®äžéšãèªååãããšãç¹ã«è€é㪠x86-64 ã¢ããªã±ãŒã·ã§ã³ã«ãããŠãéçºè ãåé¡ã®çºèŠãšä¿®æ£ã«è²»ããæéãå€§å¹ ã«ççž®ã§ããŸãããããã° ã¹ã¯ãªããã䜿çšãããšãäžé£ã®ã³ãã³ããèªåçã«å®è¡ããåºåãåæããæ¥åžžçãªãã§ãã¯ãåŠçã§ãããããããè€éãªåé¡ã«ãšãã«ã®ãŒãéäžã§ããŸããã¹ã¯ãªããã䜿çšããŠèªåãããã°ãå®è£ ãããã®ææ³ãã¯ãŒã¯ãããŒã«çµ±åããæ¹æ³ãèŠãŠã¿ãŸãããã
ãŸãããããã° ã»ãã·ã§ã³äžã«ã©ã®ãããªç¹°ãè¿ãã¿ã¹ã¯ãå®è¡ããããæ€èšããŸãããã¬ãŒã¯ãã€ã³ãã®èšå®ãã³ãŒãã®ã¹ãããå®è¡ã倿°ã®æ€æ»ãªã©ã§ãããããã¯å€ãã®å Žåãã¹ã¯ãªããå¯èœãªã¢ã¯ã·ã§ã³ã§ããããšãã°ãã³ãŒãå ã®ç¹å®ã®ç®æã§ç¹å®ã®æ¡ä»¶ã倿°ãé »ç¹ã«ãã§ãã¯ãããšããŸãããã®å Žåãã¹ã¯ãªããã䜿çšããŠå®è¡ãèªåçã«äžæããåŸã§ç¢ºèªã§ããããã«é¢é£æ å ±ããã°ã«èšé²ã§ããŸãã
ãããã°çšã®ã«ã¹ã¿ã ã¹ã¯ãªããã®äœæ
ã«ã¹ã¿ã ãããã° ã¹ã¯ãªããã®äœæã¯ãç®æšã®ç¯å²ãå®çŸ©ããããšããå§ãŸããŸããçºçããäžè¬çãªãã°ãšãããããéåžžã©ã®ããã«æ€åºãããã«ã€ããŠèããŠãã ããã x86-64 ã¢ããªã±ãŒã·ã§ã³ããµããŒãããã»ãšãã©ã®ãããã° ããŒã« (GDB ã WinDbg ãªã©) ã«ã¯ã Python ãLuaããŸãã¯ç¬èªã®ã¹ã¯ãªããèšèªãå©çšããã¹ã¯ãªããæ©èœããããŸããæ¬¡ã®ç®çã§ã¹ã¯ãªãããäœæã§ããŸãã
- æ¡ä»¶ä»ããã¬ãŒã¯ãã€ã³ããèšå®ãã: ç¹å®ã®æ¡ä»¶ãæºããããå Žåã«ã®ã¿ãã¬ãŒã¯ãã€ã³ããããªã¬ãŒãããããç¡æ°ã®å埩ãæåã§å®è¡ããå¿ èŠããªããªããŸãã
- 倿°ã®ç¶æ ããã°ã«èšé²ãã: åŸã§åæã§ããããã«ãå®è¡äžã®ç¹å®ã®æç¹ã§ã®å€æ°ã®ç¶æ ã®ãã°ãèªååããŸãã
- ã¡ã¢ãª ãã³ããåæãã: ã¡ã¢ãª ãã³ããèªåçã«åŠçããŠãç Žæãã¡ã¢ãª ãªãŒã¯ã®å åãæ¢ããŸãã
- åºåãæ€èšŒãã: ã¢ããªã±ãŒã·ã§ã³ã®åºåãäºæ³ããããã³ãããŒã¯ãæºãããŠãããããŸãã¯ãšã©ãŒãå«ãŸããŠãããã確èªããŸãã
- ååž°ãã¹ã: æè¿ã®å€æŽã«ãã£ãŠæ¢åã®æ©èœãæãªãããŠããªãããšã確èªããŸãã
ãããã®ã¢ã¯ã·ã§ã³ãã¹ã¯ãªããåããããšã§ãããã ããã»ã¹ãšããŠå®è¡ããããå€§èŠæš¡ã«å®è¡ããããç¹å®ã®æéã«å®è¡ããããã«ã¹ã±ãžã¥ãŒã«ãããããããšãã§ããŸãã
ç¶ç¶çã€ã³ãã°ã¬ãŒã·ã§ã³ (CI) ã®ããã®ã¹ã¯ãªããäœæ
ç¶ç¶ççµ±åãšç¶ç¶çããªããªãŒã®æä»£ã§ã¯ããããã° ã¹ã¯ãªããã¯èªååããããã€ãã©ã€ã³ã§éèŠãªåœ¹å²ãæãããŸããåã³ããããŸãã¯ãã«ãã®åŸã«å®è¡ããããã«èšå®ããŠããªã°ã¬ãã·ã§ã³ãæ°ãããã°ãçºçãããšããã«ããããã£ããããããšãã§ããŸãããããã®ã¹ã¯ãªããã¯ãJenkinsãCircleCIãGitHub Actions ãªã©ã® CI ããŒã«ã«çµ±åã§ããåé¡ãæ€åºãããå Žåã«éçºè ã«ããã«éç¥ã§ããŸãã
èªååæãšã¬ããŒãäœæ
ã¹ã¯ãªããã¯ã¢ã¯ã·ã§ã³ãå®è¡ããã ãã§ã¯ãããŸããããŸããæŽå¯ãæäŸããå¿ èŠããããŸãããã©ãŒãããããããã°ãåºåãããããã° ã¬ããŒããäœæããããããã©ãŒãã³ã¹ ã¡ããªãã¯ã®èŠèŠçãªã°ã©ããäœæãããããããšã§ãçã®ããŒã¿ãå®çšçãªç¥èã«å€ããããšãã§ããŸãããã° ãã¡ã€ã«ããã€ãžã§ã¹ãããã¢ããªã±ãŒã·ã§ã³ã®å¥å šæ§ãããã©ãŒãã³ã¹ã®é·æçãªæŠèŠãæç€ºããããŒã«ãæ€èšããŠãã ããã
No-codeãã©ãããã©ãŒã ãšã®çµ±å
AppMasterã®ãããªNo-codeãœãªã¥ãŒã·ã§ã³ã¯ãã¯ãŒã¯ãããŒãèªååããã³åçåã§ãããã人æ°ãé«ãŸã£ãŠããŸãããã®ååã¯ã¢ããªã±ãŒã·ã§ã³éçºåãã«æºåãããŠããŸãããããžã¥ã¢ã« ããã°ã©ãã³ã°ã䜿çšããŠèªååãããã¹ã¯ãªãããã©ã®ããã«åäœããããå®çŸ©ããããšã«ããããããã°ã«ãæ¡åŒµã§ããŸããããšãã°ã no-codeãã©ãããã©ãŒã ã®ããªã¬ãŒããããã° ã¹ã¯ãªãããå®è¡ããŠçµæãåŠçããã·ã¹ãã ãã»ããã¢ããããŠãç£èŠããã»ã¹ãç°¡çŽ åã§ããŸãã
ã¹ã¯ãªãããå±éããã«ã¯ãã¹ã¯ãªããããã€ã©ã®ããã«äœ¿çšããå¿ èŠãããããçè§£ããå¿ èŠããããŸããèªååã«é床ã«äŸåãããšã誀ã£ãå®å šæãçããå¯èœæ§ãããããã¹ãŠã®ç¶æ³ãã¹ã¯ãªããåã§ããããã§ã¯ãããŸãããçç·Žããéçºè ã¯ãèªååãããã¹ã¯ãªãããšå®è·µçãªãããã°ã®ãã©ã³ã¹ããšã£ãŠãx86-64 ã¢ããªã±ãŒã·ã§ã³ã«ç¹æã®èª²é¡ã«å¯ŸåŠããæ¹æ³ãç¥ã£ãŠããŸãã
ã¹ã¯ãªããã®ãã¹ã ãã©ã¯ãã£ã¹
ã¹ã¯ãªããã䜿çšããŠèªåãããã°ãå®è£ ããå Žåã¯ã次ã®ãã¹ã ãã©ã¯ãã£ã¹ã«åŸãããšãéèŠã§ãã
- ã¹ã¯ãªãããã¢ãžã¥ãŒã«åãã: 1 ã€ã®ã¿ã¹ã¯ãé©åã«å®è¡ããå°ããªã¹ã¯ãªãããäœæããŸãããã®ã¢ãããŒãã«ããä¿å®æ§ãåäžããè€éãªã¯ãŒã¯ãããŒã§ããããçµã¿åãããããšãã§ããŸãã
- ã¹ã¯ãªããã®ããŒãžã§ã³ç®¡ç: ãããã° ã¹ã¯ãªãããã³ãŒãããŒã¹ã®äžéšãšããŠæ±ãã倿Žã远跡ããããŒã ãšå ±åäœæ¥ããããã«ããŒãžã§ã³ç®¡çäžã§ç®¡çããŸãã
- äŸå€ãšäžæ£ãªç¶æ ãåŠçãã: ã¯ã©ãã·ã¥ããã誀解ãæãæ å ±ãæäŸãããããããšãªããäºæããªãçµæãç¶æ ãåŠçã§ããååãªåŒ·åãªã¹ã¯ãªããã§ããããšã確èªããŠãã ããã
- ã¹ã¯ãªãããææžåãã: 培åºçãªææžãæäŸããã³ãŒãã«ã³ã¡ã³ããä»ããããšã§ãä»ã®éçºè ãã¹ã¯ãªãããçè§£ããŠäœ¿çšã§ããããã«ããŸãã
x86-64 ã¢ããªã±ãŒã·ã§ã³ã«èªåãããã°ãå®è£ ãããšãæéãç¯çŽãããã ãã§ãªããæåããã»ã¹ã«äžå®ã¬ãã«ã®ç²ŸåºŠãšåçŸæ§ãããããããŸããã¹ã¯ãªãããæŽ»çšããã¹ã¯ãªããã CI/CD ãã€ãã©ã€ã³ã«çµ±åãã AppMasterã®ãããªé«åºŠãªããŒã«ã»ããã§ãããã°äœæ¥ããµããŒãããããšã§ããããŸã§ãããå¹ççãã€å¹æçã«ãã°ã«å¯ŸåŠã§ããããã«ãªããŸãã
ãããã°ç®çã®ãªããŒã¹ãšã³ãžãã¢ãªã³ã°
ãªããŒã¹ ãšã³ãžãã¢ãªã³ã°ã¯ãç¬èªã®ã·ã¹ãã ã®çè§£ãã»ãã¥ãªã㣠ãããã³ã«ã®åŒ·åã«é¢é£ããããšãå€ã匷åãªææ³ã§ããããã¯ãéçºè ã«ãšã£ãŠè€é㪠x86-64 ã¢ããªã±ãŒã·ã§ã³ããããã°ãããšãã«éåžžã«äŸ¡å€ã®ããããŒã«ã§ããããŸãããªããŒã¹ ãšã³ãžãã¢ãªã³ã°ã«ããããœãããŠã§ã¢ããã®æ§æéšåã«åè§£ããããšã§ãéçºè ã¯å éšã®ã¢ããªã±ãŒã·ã§ã³ã®åäœãšæ§é ã®äž¡æ¹ã«ã€ããŠæŽå¯ãåŸãããšãã§ããŸãã
ãªããŒã¹ ãšã³ãžãã¢ãªã³ã°ã¯ããœãŒã¹ ã³ãŒãã«ã¢ã¯ã»ã¹ã§ããªãå ŽåããŸãã¯ã¬ã¬ã·ãŒ ã·ã¹ãã ãæ±ãå Žåã«ç¹ã«å¹æçã§ãããã®ãããªå Žåãéã¢ã»ã³ãã©ãªã©ã®ããŒã«ã䜿çšããŠããã€ã㪠ã³ãŒãããã人éãèªã¿ãããåœ¢åŒ (ã¢ã»ã³ããªèšèª) ã«å€æããŸãã x86-64 ã¢ãŒããã¯ãã£ã®ã³ã³ããã¹ãã§ããã®ç¿»èš³ãããã³ãŒãã¯ãã¢ããªã±ãŒã·ã§ã³ ããžãã¯ãã¡ã¢ãªäœ¿çšéãããã«ã¯æœåšçãªã»ãã¥ãªãã£äžã®æ¬ é¥ã«ã€ããŠã®ææãããæäŸããŸãã
ã¢ã»ã³ããªã¯ããã»ããµãåœä»€ãå®è¡ããæ¹æ³ã«çŽæ¥å¯Ÿå¿ããŠãããããx86-64 ã¢ãŒããã¯ãã£ãæ±ãéçºè ã«ãšã£ãŠã¢ã»ã³ããªãçè§£ããããšã¯äžå¯æ¬ ã§ãããã®èªèã«ãããé«ã¬ãã«ã®ãããã°ã ãã§ã¯éæã§ããªãæ¹æ³ã§ãåé¡ã®ããã³ãŒã ã·ãŒã±ã³ã¹ãæ£ç¢ºã«ç¹å®ããäºæããªãåäœã«ã€ããŠæšè«ã§ããããã«ãªããŸããããã«ããããã¬ãŒãªã©ã®åçåæããŒã«ãšçµã¿åããããªããŒã¹ ãšã³ãžãã¢ãªã³ã°ã«ããããã«ãã¹ã¬ãã ã¢ããªã±ãŒã·ã§ã³ã®é©åãªãããŒãäžæããç«¶åç¶æ ããããããã¯ãªã©ã®å®è¡æã®åé¡ãæããã«ããããšãã§ããŸãã
ãã 1 ã€ã®åŽé¢ã¯ãäœã¬ãã«ã®ã¢ã»ã³ããªãé«ã¬ãã«ã®èšèªã«å€æããããšããéã³ã³ãã€ã©ã®äœ¿çšã§ããéã³ã³ãã€ã«ãããã³ãŒãã¯å¿ ãããå®ç§ã§ãããšã¯éããŸããããéçºè ããã°ã®æœåšçãªåå ã«ã€ããŠä»®èª¬ãç«ãŠãããã«çãçµã£ããããã°ãéããŠãã®ä»®èª¬ãæ€èšŒããããã®ãã©ãããã©ãŒã ãæäŸããŸãã
ããã«ãã»ãã¥ãªãã£ã®èгç¹ããã¯ããªããŒã¹ãšã³ãžãã¢ãªã³ã°ãäžå¯æ¬ ã§ããéçºè ã¯ãããã«ãŒã®ã¢ãããŒããã·ãã¥ã¬ãŒãããŠããããã¡ ãªãŒããŒãããŒãäžé©åãªæå·åãªã©ãã¢ããªã±ãŒã·ã§ã³å ã®è匱æ§ãçºèŠã§ããŸãããã®å å¶æ»æã«ããããããã°æéãç¯çŽãããã¢ããªã±ãŒã·ã§ã³ã®ã»ãã¥ãªãã£ãšæŽåæ§ã匷åãããŸãã
ãªããŒã¹ ãšã³ãžãã¢ãªã³ã°ããããã° ã¢ãŒã»ãã«ã«å«ããããšã§ãã¢ããªã±ãŒã·ã§ã³ãšã¢ããªã±ãŒã·ã§ã³ãå®è¡ãããã¢ãŒããã¯ãã£ã®äž¡æ¹ã«å¯Ÿããéçºè ã®çè§£ãæ·±ãŸããŸããåŸæ¥ã®ãããã°ææ³ãè£è¶³ãããã®ãšããŠãæšæºçãªææ³ã§ã¯èŠèœãšããã¡ãªãšããã©ããã®ãªããã°ãçºèŠããéµãšãªãããšããããããŸãã
AppMasterã®ãããªãã©ãããã©ãŒã ã§ããã no-codeéç¹ã眮ããŠãããã¢ããªã±ãŒã·ã§ã³éçºã®èåŸã«ããè€éããèªèããŠããŸãã圌ãã¯ãã®è€éããæœè±¡åããããšã§åçŽåããããšãç®æããŠããŸãããx86-64 ã¢ããªã±ãŒã·ã§ã³ã®å éšã詳ãã調æ»ãã人ã ã«ãšã£ãŠããªããŒã¹ ãšã³ãžãã¢ãªã³ã°ã¯äŸç¶ãšããŠæ ¹æ·±ãåé¡ãæ£ç¢ºã«ç¹å®ããŠä¿®æ£ããããã®è²Žéãªã¹ãã«ã§ãã
ã¯ãŒã¯ãããŒã«é«åºŠãªããŒã«ãçµ±åãã
广çãªãããã°æŠç¥ã«ã¯ããã°ã远跡ããçç£æ§ãšã³ãŒãã®å質ãåäžãããé«åºŠãªããŒã«ãçµ±åãããŠããŸããç¹ã« x86-64 ã¢ãŒããã¯ãã£äžã§ã¢ããªã±ãŒã·ã§ã³ãè€éã«ãªãã«ã€ããŠãéçºè ã¯ãçºçããè€éãªãããã° ã¿ã¹ã¯ãåŠçããããã®æŽç·ŽãããããŒã«ããããå¿ èŠãšããŸãããããã®é«åºŠãªããŒã«ãæ¥åžžã®ã¯ãŒã¯ãããŒã«çµã¿èŸŒãããšã§ãéçºè ã¯ç¹å®ã®åé¡ãæ£ç¢ºã«å¯Ÿè±¡ãšãããããã° ããã»ã¹ãäœæã§ããŸãã
å€ãã®å Žåæ¬ ãããªãããŒã«ã® 1 ã€ã¯ãx86-64 ã¢ãŒããã¯ãã£ããµããŒããã匷åãªçµ±åéçºç°å¢ (IDE) ã§ããçŸåšã® IDE ã«ã¯ãã³ãŒãã®äœæããã¹ãããããã°ã®éã®ã·ãŒã ã¬ã¹ãªç§»è¡ãæäŸãããããã°æ©èœãçµã¿èŸŒãŸããŠããããšããããããŸããã€ã³ããªãžã§ã³ããªã³ãŒãè£å®ãã³ãŒã ããã²ãŒã·ã§ã³ãèªåãªãã¡ã¯ã¿ãªã³ã°ãªã©ã®æ©èœã«ããããã°ä¿®æ£ã«ãããæéãå€§å¹ ã«åæžã§ããŸãã
Valgrind ã®ãããªã¡ã¢ãª ãããã¡ã€ã©ãæ¡çšãããšã远跡ãå°é£ãªã¡ã¢ãªé¢é£ã®åé¡ã倧ããå€ããããšãã§ããŸãããã®ãããªãããã¡ã€ã©ã¯ãã¡ã¢ãª ãªãŒã¯ããããã¡ ãªãŒããŒãããŒãããã³ãã®ä»ã®ã¡ã¢ãªç®¡çãã¹ã®åé¡ãæ€åºããŸãããããã®åé¡ã¯ãããã«ã¯çç¶ãçŸããªãå¯èœæ§ããããŸãããå°æ¥çã«é倧ãªåé¡ã«ã€ãªããå¯èœæ§ããããŸãã
é«åºŠãªããŒã«ã®ãã 1 ã€ã®å±€ã¯ãã³ãŒããå®è¡ããã«æ€æ»ããéçåæããŒã«ã§ãããããã®ããŒã«ã¯ãã³ãŒãã£ã³ã°æšæºãé©çšããã¢ã³ããã¿ãŒã³ãç¹å®ããããšã«ãããæœåšçãªãšã©ãŒãè匱æ§ãæ©æã«çºèŠã§ããŸããéçã¢ãã©ã€ã¶ãŒã¯ç¶ç¶çã€ã³ãã°ã¬ãŒã·ã§ã³ (CI) ã¯ãŒã¯ãããŒã®äžéšãšããŠèªåçã«å®è¡ã§ãããããæ¬çªç°å¢ã«å ¥ãåã«ãã°ã確å®ã«ææã§ããŸãã
GDB (GNU Debugger) ã®ãããªã·ã³ããªã㯠ãããã¬ã¯ãæäžäœã¬ãã«ã§ã®ããã°ã©ã å®è¡ãžã®ãŠã£ã³ããŠãæäŸããŸãã GDBã®é«åºŠãªäœ¿çšæ³ã«ã¯ãæ¡ä»¶ä»ããã¬ãŒã¯ãã€ã³ãã®èšå®ãã³ãŒã« ã¹ã¿ãã¯ã®æ€æ»ã倿°ã®ç£èŠãããã«ã¯å®è¡ç¶æ ã®å€æŽãå«ãŸããŸããããã¯ãè€é㪠x86-64 ãœãããŠã§ã¢ã®åé¡ããããã°ãããšãã«ç¹ã«æçã§ãã
ããŒããŠã§ã¢ãšã€ã³ã¿ãŒãã§ã€ã¹ããã¢ããªã±ãŒã·ã§ã³ããããã°ããå ŽåããŸãã¯ç¹å®ã®æ¡ä»¶ãã·ãã¥ã¬ãŒãããå¿ èŠãããå ŽåãããŒããŠã§ã¢ ãšãã¥ã¬ãŒã¿ãŒãŸãã¯ã·ãã¥ã¬ãŒã¿ãŒã掻èºããŸãããããã®ããŒã«ã¯ãx86-64 ã¢ããªã±ãŒã·ã§ã³ãå®è¡ã§ããå¶åŸ¡ãããç°å¢ãæäŸããå®éã®ç©çããŒããŠã§ã¢ã䜿çšããã«ããŸããŸãªããŒããŠã§ã¢ ã·ããªãªããã¹ãã§ããŸãã
ã³ã³ãã€ã«ããããã€ããªãæ±ãéçºè ã«ãšã£ãŠã IDA ProãGhidraãªã©ã®ãªããŒã¹ ãšã³ãžãã¢ãªã³ã° ããŒã«ãšéã¢ã»ã³ãã©ã¯äžå¯æ¬ ã§ãããããã䜿çšãããšãã¢ããªã±ãŒã·ã§ã³ããã€ã㪠ã¬ãã«ã§è§£åã§ãããœãŒã¹ ã³ãŒããå©çšã§ããªãå ŽåããŸãã¯é£èªåãããã³ãŒãããµãŒãããŒã㣠ã³ãŒããæ±ãå Žåã«ãããã°ã©ã ã®å éšåäœã«ã€ããŠã®æŽå¯ãåŸãããŸãã
AppMasterãªã©ã®no-codeãã©ãããã©ãŒã ã®ã³ã³ããã¹ãã§ã¯ãã¢ããªå ã®å®è¡ãšããŒã¿ã®ãããŒã衚瀺ããããžã¥ã¢ã« ãããã° ããŒã«ãéããŠãåé¡ãçè§£ããŠè§£æ±ºããæ©èœãçµã¿èŸŒãããšãã§ããŸãããããã®ãã©ãããã©ãŒã ã¯ãäžäœã¬ãã«ã®è©³çްãèªåçã«åŠçã§ãããšåæã«ãå¿ èŠã«å¿ããŠãã°èšé²ããããã°ã®ãªãã·ã§ã³ãæäŸãããããx86-64 åºæã®è©³çްã«è©³ãããªãèšèšè ãéçºè ã§ããããã° ããã»ã¹ã«ã¢ã¯ã»ã¹ãããããªããŸãã
é«åºŠãªãããã°ã«ã¯ããããã¯ãŒã¯ ãã©ãã£ãã¯åæçšã® Wireshark ã API endpointsã®ãã¹ãçšã®Postmanãªã©ãç¹æ®ãªãããã¯ãŒã¯ããã³ API ãããã° ããŒã«ãå¿ èŠã§ããã¯ã©ã€ã¢ã³ããšãµãŒããŒã®å¯Ÿè©±äžã«çŸãããã°ã远跡ã§ããŸãããåŸæ¥ã®ãããã° ã»ãã·ã§ã³ã§ã¯ç¹ã«èŠã€ãã«ããå¯èœæ§ããããŸãã
é«åºŠãªããŒã«ãããŸãçµ±åããããã®éµã¯ãéçºè ã®ã¯ãŒã¯ãããŒã«ããããã·ãŒã ã¬ã¹ã«æ¿å ¥ã§ããããšã§ããããã«ã¯ãããŒã«ã«å¯Ÿããé©åãªçè§£ãšããã¹ã ãã©ã¯ãã£ã¹ã®ç¶ç¶çãªåŠç¿ãšå ±æã奚å±ããæåãå¿ èŠã§ããããŒã«ã»ããã宿çã«ç¢ºèªããŠææ°ããŒãžã§ã³ã«æŽæ°ããããšã§ãéçºè ã¯ãããã®ããŒã«ãæäŸããæå ç«¯ã®æ©èœãç¶ç¶çã«å©çšã§ããããã«ãªããŸãã
é«åºŠãªãããã° ããŒã«ãã¯ãŒã¯ãããŒã«çµ±åããç®çã¯ãçŸåšã®ãã°ãä¿®æ£ããã ãã§ãªããå°æ¥ã®åé¡ã®çºçãé²ãããšã§ãããããã®ããŒã«ãæ éã«çµã¿èŸŒãããšã§ãéçºè ã¯é«æ°Žæºã®ãœãããŠã§ã¢å質ãç¶æããããŠã³ã¿ã€ã ãåæžããx86-64 ã¢ããªã±ãŒã·ã§ã³ã®ãŠãŒã¶ãŒ ãšã¯ã¹ããªãšã³ã¹ãäžè²«ããŠåäžãããããšãã§ããŸãã
ãããã°ã«ãããNo-codeãã©ãããã©ãŒã ã®åœ¹å²
å¹çæ§ãšè¿ éãªéçºãæåªå ãããæä»£ã«ãããŠã no-codeãã©ãããã©ãŒã ã¯ãã¯ãããžãŒæ¥çã«éèŠãªãããåžå ŽãåãéããŸããããããã®ãã©ãããã©ãŒã ã«ã¯å€ãã®å©ç¹ããããéçºè ã«ãééçºè ã«ãåæ§ã«ããã»ã¹ãå€é©ã§ããç°¡ç¥åããããããã° ãšã¯ã¹ããªãšã³ã¹ãæäŸããŸãã AppMasterã®ãããªno-codeãã©ãããã©ãŒã ããè€é㪠x86-64 ã¢ãŒããã¯ãã£ã§å®è¡ãããŠããã¢ããªã±ãŒã·ã§ã³ã§ãã£ãŠããã¢ããªã±ãŒã·ã§ã³ã®ãããã°ã容æã«ããäžã§ã©ã®ããã«éèŠãªåœ¹å²ãæãããŠãããã詳ããèŠãŠã¿ãŸãããã
äœããããŸãã no-codeç°å¢ã¯ãœãããŠã§ã¢éçºããã»ã¹ã®å€ãã®åŽé¢ãæšæºåããŸããã¢ããªã±ãŒã·ã§ã³éçºã«èŠèŠçãªã¢ãããŒããæäŸããããšã§ããããã®ãã©ãããã©ãŒã ã¯ãã°ã«ã€ãªããå¯èœæ§ã®ãã人çãšã©ãŒã®å¯èœæ§ãæ¬è³ªçã«æžãããŸããéçºè ãåŸæ¥ã®ã³ãŒãããŒã¹ãç¹ã«è€éãªåœä»€ã»ãããšã¡ã¢ãªç®¡çãåãã x86-64 ã¢ãŒããã¯ãã£ã§äœæ¥ããå Žåã远跡ãé£ãããšã©ãŒã誀ã£ãŠçºçããå¯èœæ§ããããŸãã No-codeãã©ãããã©ãŒã ã¯ãåºç€ãšãªãã³ãŒããæœè±¡åããããšã§ãããæé€ããããã¯ãªãŒã³ã§äºæž¬å¯èœãªã¢ããªã±ãŒã·ã§ã³åäœãå¯èœã«ãããããã°ãç°¡çŽ åããŸãã
ããšãã°ã AppMasterãšãéçºè 㯠ããžãã¹ ããã»ã¹ (BP) ãã¶ã€ã㌠ãéã㊠ããŒã¿ ã¢ãã« ãšããžãã¹ ããžãã¯ãèŠèŠçã«äœæã§ããŸãããã®ãããªã¢ãããŒãã¯ãåŸæ¥ã®ã³ãŒãã£ã³ã°ã§ããããé害ãšãªããæ§æãšã©ãŒãå ¥åãã¹ã«èµ·å ããäºæããªãåäœã«ééããå¯èœæ§ãäœãããšãæå³ããŸããåé¡ãããå Žåãå€ãã®å ŽåãèŠèŠçãªãããŒå ã§åé¡ãããæç¢ºã«ç¹å®ãããããè¿ éãªç¹å®ãšä¿®æ£ãå¯èœã«ãªããŸãã
No-codeãã©ãããã©ãŒã ã¯ã匷åãªãã° ã·ã¹ãã ããããŒã¿ãšããžãã¯ã®æµãããªã¢ã«ã¿ã€ã ã§è¡šãèŠèŠçãªãã¥ãŒãéããŠãããã°ãæ¯æŽããããšãã§ããŸããéçºè ã¯ãããã»ã¹ã¹ããããééããã©ã€ãããŒã¿ãç£èŠããåé¡ãçºçããæ£ç¢ºãªãã€ã³ããç¹å®ã§ããŸããããã«ããã®ãããªãã©ãããã©ãŒã ã®å€ãã¯ãå®éã®ç°å¢ã«åœ±é¿ãäžããããšãªãããžã㯠ãããŒãè€è£œããŠããŒã¿ãå ¥åã§ããã·ãã¥ã¬ãŒã·ã§ã³ ã¢ãŒããæäŸããŠãããããã¯ãã°ã®åãåããšè§£æ±ºã«éåžžã«åœ¹ç«ã¡ãŸãã
ããã©ãŒãã³ã¹ãšæé©åãéèŠãª x86-64 ã¢ããªã±ãŒã·ã§ã³ã§ã¯ã no-codeãã©ãããã©ãŒã ãã¢ããªã±ãŒã·ã§ã³ã®ããã©ãŒãã³ã¹ã®ããã«ããã¯ãç¹å®ãããããã¡ã€ãªã³ã° ããŒã«ãæäŸããŸããã¢ãŒããã¯ã㣠ã¬ãã«ã§ã®è©³çްãªãããã¡ã€ãªã³ã°ã«ä»£ãããã®ã§ã¯ãããŸããããè¿ éãªèšºæã«åœ¹ç«ã€é«ã¬ãã«ã®æŠèŠã衚瀺ãããéçºè ã¯ããã©ãŒãã³ã¹ã«æã倧ããªåœ±é¿ãäžããã¢ããªã±ãŒã·ã§ã³ã®éšåã®æé©åã«éäžã§ããŸãã
AppMasterããã³åæ§ã®ãã©ãããã©ãŒã ãåªããŠãããã 1 ã€ã®åŽé¢ã¯ãæ¢åã®èšºæããŒã«ãšçµ±åã§ããããšã§ããéçºè ã¯åŸæ¥ã®ãããã° ããŒã«ã®å©ç¹ã倱ãããšã¯ãããŸãããããããno-codeãã©ãããã©ãŒã ã®æ©èœãšçµã¿åãããŠäœ¿çšââãããšããã培åºçã§æéã®ããããããã° ããã»ã¹ãå®çŸã§ããŸããããšãã°ã AppMasterãµãŒããŒendpointsçšã® Swagger (OpenAPI) ããã¥ã¡ã³ããçæããAPI é¢é£ã®åé¡ã®æ€æ»ãšãããã°ã容æã«ããŸãã
no-codeãã©ãããã©ãŒã ã«ããå®è¡å¯èœãã€ã㪠ãã¡ã€ã«ãŸãã¯ãœãŒã¹ ã³ãŒãã®çæã¯ãåŸæ¥ã®ãããã°ææ³ãæé€ãããã®ã§ã¯ãããŸãããããšãã°ã AppMasterã䜿çšãããšãéçºè ã¯ãªã³ãã¬ãã¹ ãã¹ãã£ã³ã°ã®ãœãŒã¹ ã³ãŒããååŸã§ããå¿ èŠã«å¿ã㊠x86-64 åºæã®ãããã°ææ³ãããŒã«ãçæãããã³ãŒãã«çŽæ¥é©çšã§ããæè»æ§ãåŸãããŸãã
ãŸãšãããšããããã°ã«ãããno-codeãã©ãããã©ãŒã ã®åœ¹å²ã¯å€é¢çã§ããèªååãšæšæºåã«ãã£ãŠã¢ããªã±ãŒã·ã§ã³ã«ãã°ãå ¥ã蟌ãå¯èœæ§ãæå°éã«æããªãããå¿ èŠã«å¿ããŠå¯èŠæ§ãšå¶åŸ¡ãæäŸããŸãããã®èŠèŠçãªæ§è³ªãšçµ±åæ©èœã«ãããæçµçã«è€é㪠x86-64 ã·ã¹ãã ã§å®è¡ãããã¢ããªã±ãŒã·ã§ã³ã§ãã£ãŠãããããã° ããŒã«ãããã®åŒ·åãªå³æ¹ãšãªããŸãã
x86-64 ã§ã®ãã«ãã¹ã¬ãã ã¢ããªã±ãŒã·ã§ã³ã®ãããã°
ãã«ãã¹ã¬ããã¯è€éãããããããŸãããç¹ã«åæå®è¡æ©èœã§ç¥ããã x86-64 ã¢ãŒããã¯ãã£ã§ã¯ãããã©ãŒãã³ã¹ã«å€§ããªã¡ãªããããããããŸãããã«ãã¹ã¬ãã ã¢ããªã±ãŒã·ã§ã³ããããã°ããã«ã¯ãç«¶åç¶æ ããããããã¯ãã¹ã¬ããã®æ¯æžãªã©ã®åæå®è¡ã®åé¡ãæ ¹çµ¶ããããã®ç³»çµ±çãªã¢ãããŒããšç¹æ®ãªãã¯ããã¯ãå¿ èŠã§ãããã®ã»ã¯ã·ã§ã³ã§ã¯ãx86-64 ã¢ããªã±ãŒã·ã§ã³ã®ã¹ã¬ããã®åé¡ã蚺æããŠè§£æ±ºããããã®æŠç¥ãšãã¹ã ãã©ã¯ãã£ã¹ã«ã€ããŠèª¬æããŸãã
ã¹ã¬ããåºæã®å®è¡ã³ã³ããã¹ããçè§£ãã
ãã«ãã¹ã¬ãã ã¢ããªã±ãŒã·ã§ã³ã®åã¹ã¬ããã¯ç¬èªã®å®è¡ã³ã³ããã¹ãã§åäœããŸãããããã»ã¹ã®ãªãœãŒã¹ãå ±æããŸããã³ã³ããã¹ã ã¹ã€ãããCPU ãè€æ°ã®ã¹ã¬ãããåŠçããæ¹æ³ãããã³ããã x86-64 ã¢ããªã±ãŒã·ã§ã³ã®å®è¡ã«äžãã圱é¿ããã£ãããšææ¡ããããšã¯ããããã°ãæåãããããã®åºç€ã§ããéçºè ã¯ãç¹å®ã®æç¹ã§ã©ã®ã¹ã¬ãããç¹å®ã®ãã¥ãŒããã¯ã¹ãææããŠãããããŸãã¯æ¡ä»¶å€æ°ãåŸ æ©ããŠããããªã©ã®éèŠãªè³ªåã«çããããå¿ èŠããããŸãã
ã¹ã¬ããã»ãŒããªãã¬ãŒã¯ãã€ã³ããšç£èŠã®æ¡çš
åŸæ¥ã®ãã¬ãŒã¯ãã€ã³ãã§ã¯ã¢ããªã±ãŒã·ã§ã³å šäœã忢ã§ããŸãããéçºè ã¯å€ãã®å Žåããã«ãã¹ã¬ãã ã³ãŒãããããã°ãããšãã«ç¹å®ã®ã¹ã¬ãããäžæåæ¢ããããã¹ã¬ããå šäœã®ç¶æ ãç£èŠãããããå¿ èŠããããŸãããã®ãããªå Žåã¯ãé¢é£ã¹ã¬ããããããããå Žåã«ã®ã¿å®è¡ãäžæåæ¢ãããã¹ã¬ããåºæã®ãã¬ãŒã¯ãã€ã³ãã䜿çšããŸããåæ§ã«ãç¹å®ã®ããŒã¿ãèªã¿æžãããããšãã«éçºè ã«èŠåããããã«ãŠã©ãããã€ã³ããèšå®ã§ããŸããããã¯ãã¹ã¬ããéã®ããŒã¿ç«¶åãæå³ããªãããŒã¿ ã¢ã¯ã»ã¹ã远跡ããã®ã«éåžžã«åœ¹ç«ã¡ãŸãã
åæããªããã£ãã®ãã°ã掻çšãã
x86-64 ã¢ããªã±ãŒã·ã§ã³ã®åæå®è¡æ§ã®åé¡ã«å¯ŸåŠããã«ã¯ããã¥ãŒããã¯ã¹ãã»ããã©ãæ¡ä»¶å€æ°ãªã©ã®åæããªããã£ãã䜿çšããŠãã°ãèšé²ããããšã§æŽå¯ãåŸãããšãã§ããŸãããããããã¯ãçºçããå Žåããããã®ãã°ã¯ãã¹ã¬ããããã€ããå¯èœæ§ã®ãããã€ã³ããŸã§é¡ã£ãŠè¿œè·¡ããã®ã«åœ¹ç«ã¡ãŸããããã«ãé«åºŠãªããã¯åæããŒã«ãšã¹ã¬ãã ã¢ãã©ã€ã¶ãŒã䜿çšãããšãæåæ€æ»ã§ã¯çºèŠããã®ãããå°é£ãªãããããã¯ãç«¶åãã€ã³ãã®å¯èœæ§ãæããã«ããããšãã§ããŸãã
ã¹ã¬ããåã·ããªãªã®ã·ãã¥ã¬ãŒã·ã§ã³
é«åºŠãªãããã°ææ³ã® 1 ã€ã¯ãç«¶åç¶æ ããããããã¯ã確å®ã«åçŸããããã«ãç¹å®ã®ã¹ã¬ãã ã¹ã±ãžã¥ãŒãªã³ã° ã·ããªãªãã·ãã¥ã¬ãŒãããããšã§ããã¹ã¬ããã®åªå é äœãèšå®ããæåã§ã¹ã¬ãããäžæåæ¢ããã³åéããã€ãã³ãã®é åºãæäœããããšã§ãåæå®è¡æ§ã®ãã°ã培åºçã«èª¿æ»ããããã«å¿ èŠãªæ¡ä»¶ãäœæã§ããŸãããããã®ã·ããªãªãã·ãã¥ã¬ãŒãã§ããèªåãã¹ã ã¹ã€ãŒãã¯ãè€éãªã¹ã¬ããã®åé¡ãæ€åºããŠè§£æ±ºããã®ã«éåžžã«å¹æçã§ãã
ã¹ã¬ããã®çžäºäœçšã®èŠèŠå
ã¹ã¬ãã ã¢ã¯ãã£ããã£ã衚ãèŠèŠçãªããŒã«ã¯ãã¹ã¬ãããã©ã®ããã«å¯Ÿè©±ããŠããããããæç¢ºã«ææ¡ããã®ã«åœ¹ç«ã¡ãŸãããããã®ããŒã«ã¯ãå®è¡ã¿ã€ã ã©ã€ã³ããªãœãŒã¹å²ãåœãŠã°ã©ãããã®ä»ã®èŠèŠè£å©ã衚瀺ããŠãåé¡ãçºçããŠããå Žæãçè§£ããããããŸããäžéšã®çµ±åéçºç°å¢ (IDE) ã¯ãã¹ã¬ãã ã¢ã¯ãã£ããã£ã®é«åºŠãªèŠèŠåãæäŸããéçºè ããã«ãã¹ã¬ããã®å®è¡ã«ã€ããŠããé©åã«å€æããåé¡ãè¿ éã«ç¹å®ããã®ã«åœ¹ç«ã¡ãŸãã
ãããã°ã®ããã®æ¡ä»¶ä»ãåæã®äœ¿çš
æ¡ä»¶ä»ãåææ©èœã¯ããã°ãçŸããããã«ç¹å®ã®æ¡ä»¶ãæºããå¿ èŠãããã·ããªãªãéçºè ãã»ããã¢ããããã®ã«åœ¹ç«ã¡ãŸããããã«ã¯ãã¹ã¬ããç¶æ ãšããŒã¿æ¡ä»¶ãçµã¿åãããé«åºŠãªæ¡ä»¶ä»ããã¬ãŒã¯ãã€ã³ããå«ããããšãã§ããŸããããšãã°ããã¬ãŒã¯ãã€ã³ãã¯ãç¹å®ã®ã¹ã¬ããã®ã³ã³ããã¹ãã§ç¹å®ã®å€æ°ãç¹å®ã®å€ã«éãããšããæå®ããããšãã§ããŸãã
ç³žæ¶æ¯å€ã®äžè²«ãã䜿çš
ã¹ã¬ãã ãµãã¿ã€ã¶ãŒã¯ãææ°ã®ã³ã³ãã€ã©ãšãã©ãããã©ãŒã ãæäŸãã匷åãªããŒã«ã§ãå®è¡æã«ç«¶åç¶æ ããã®ä»ã®åæå®è¡é¢é£ã®åé¡ãæ€åºããã®ã«åœ¹ç«ã¡ãŸãããããã°çšã«ã¢ããªã±ãŒã·ã§ã³ãã³ã³ãã€ã«ãããšãã¯ãã¹ã¬ãããµãã¿ã€ã¶ãŒãŸãã¯åçåæããŒã«ãæå¹ã«ãªã£ãŠããããšã確èªããŠãã ããããããã®ããŒã«ã¯ãéåžžã®ãããã° ã»ãã·ã§ã³ã§ã¯æ°ä»ããªãå¯èœæ§ããã埮åŠãªã¹ã¬ããã®åé¡ãæ€åºã§ããããšããããããŸãã
ãããã°çšã®No-codeãã©ãããã©ãŒã ã«ããæé©å
ããã§ã¯ãx86-64 ãã«ãã¹ã¬ãã ãããã°ã®è€éãã«çŠç¹ãåœãŠãŠããŸããããããã°ãå«ãã¢ããªã±ãŒã·ã§ã³ã®éçºã©ã€ããµã€ã¯ã«ã®åææ®µéãç°¡çŽ åããno-codeãã©ãããã©ãŒã ã®å¯èœæ§ãèŠèœãšããŠã¯ãªããŸããã AppMasterã®ãããªãã©ãããã©ãŒã ã¯ããã«ãã¹ã¬ããã«é¢é£ããè€éãã®äžéšãæœè±¡åããåæã®ãããã°ã®ãªãŒããŒãããã軜æžããŸãããã ããè€éããå¢å€§ããããã¢ããªã±ãŒã·ã§ã³ã§è€éãªã¹ã¬ãã管çãå¿ èŠã«ãªã£ããããå Žåãéçºè ã¯ããã®ã»ã¯ã·ã§ã³ã§èª¬æããããã«ãå®è·µçãªãããã°ææ³ã«æ»ãå¿ èŠããããŸãã
x86-64 ã¢ãŒããã¯ãã£ãšãã®ã¹ã¬ãã ã¢ãã«ã®æ·±ãçè§£ãšãé«åºŠãªãããã°æè¡ãããŒã«ã®å®éã®å¿çšãçµã¿åãããããšã§ãéçºè ã¯ãã«ãã¹ã¬ãã ã¢ããªã±ãŒã·ã§ã³ã®æŽç·Žãããé åã«é£ã³èŸŒãããšãã§ããŸããããã¯ãœãããŠã§ã¢éçºã®å°é£ã§ã¯ãããŸãããããããã®ããåŽé¢ã§ãããå¹çã®åäžã¯ã¢ããªã±ãŒã·ã§ã³ã®ããã©ãŒãã³ã¹ãšä¿¡é Œæ§ã«å€§ããªåœ±é¿ãäžããå¯èœæ§ããããŸãã
é«åºŠãªãããã°ã§ããããèœãšã穎ãšãã®åé¿æ¹æ³
x86-64 ã¢ããªã±ãŒã·ã§ã³ã®ãããã°ã¯ãæ£ç¢ºæ§ãå¿èåããããŠãœãããŠã§ã¢ãšã·ã¹ãã ã¢ãŒããã¯ãã£ã®äž¡æ¹ã«å¯Ÿããæ·±ãçè§£ãå¿ èŠãšããéèŠãªã¹ãã«ã§ããå€ãã®é«åºŠãªããŒã«ããã¯ããã¯ã¯ãã®ããã»ã¹ã«åœ¹ç«ã¡ãŸããã鲿©ã劚ãããã©ã¹ãã¬ãŒã·ã§ã³ãæéã®ç¡é§ã«ã€ãªããå¯èœæ§ãããäžè¬çãªçœ ã«ãé¥ãããããªããŸãããããã®èœãšãç©Žãæ©æã«ç¹å®ããåé¿ããæ¹æ³ãåŠã¶ããšã§ããããã°ã®å®è·µã匷åãããããå¹ççãªéçºè ã«ãªããŸãã
æåã®é倧ãªèœãšã穎㮠1 ã€ã¯ã èªååããŒã«ãžã®é床ã®äŸå ã§ãããããã¯å埩çãªã¿ã¹ã¯ãåŠçããå Žåã«äžå¯æ¬ ã§ãããäœãããŠããã®ããçè§£ããã«ç²ç®çã«ä¿¡é Œãããšãéã誀ãå¯èœæ§ããããŸããããŒã«ã¯åãªãè£å©ã§ããããšãèŠããŠããããšãéèŠã§ããéçºè ã®æ¹å€çæèãåé¡è§£æ±ºã¹ãã«ã«ä»£ããããšã¯ã§ããŸãããèªåããŒã«ã®åºåãå¿ ãçè§£ããäœããæ£ãããªããšæãããå Žåã¯ãäžæ©äžãã£ãŠçµæãæåã§æ€èšããŠãã ããã
é »ç¹ã«çºçãããã 1 ã€ã®åé¡ã¯ã ãããã° ããŒã¿ã®èª€è§£ ã§ããç¹ã«ãè€æ°ã®æœè±¡åã¬ã€ã€ãŒãååšãã x86-64 ã¢ãŒããã¯ãã£ã§ã¯ããããã¬ãŒã瀺ãå åãèªã¿ééããå¯èœæ§ããããŸãããããããããã»ããµã®ãã€ãã©ã€ã³ã®ç¹æ®æ§ããŸãã¯ãªãã¬ãŒãã£ã³ã° ã·ã¹ãã ã®ã¡ã¢ãªç®¡çã®ç¹æ®æ§ãåå ã§ãã°ãçºçããå¯èœæ§ããããŸããã¢ããªã±ãŒã·ã§ã³ãåäœããã³ã³ããã¹ããåžžã«çè§£ããå¿ èŠã«å¿ããŠã·ã¹ãã ã¬ãã«ã®è©³çްã«èžã¿èŸŒããããã«ããŠãã ããã
ã¢ãŒããã¯ãã£åºæã®æ©èœãç¡èŠãããšã æ¹åæ§ã誀ãå¯èœæ§ããããŸãã x86-64 ã¢ããªã±ãŒã·ã§ã³ã¯ãä»®æ³ãã·ã³äžã§å®è¡ãããŠããããç¹å®ã® CPU æ¡åŒµæ©èœãå©çšããŠãããããŸãã¯éåžžãšã¯ç°ãªãæ¹æ³ã§ããŒããŠã§ã¢ãšå¯Ÿè©±ããŠãããã«ãã£ãŠãç°ãªãåäœãããå¯èœæ§ããããŸãããããã®åŽé¢ãç¡èŠãããããã°æŠç¥ã調æŽããªããšãæ ¹æ¬åå ã§ã¯ãªããšã©ãŒã远跡ããããšã«ãªãå¯èœæ§ããããŸããããã軜æžããã«ã¯ãããŒããŠã§ã¢ã«é¢ããç¥èãåžžã«ææ°ã®ç¶æ ã«ä¿ã¡ããããã°æã«ãã®ç¹æ§ãèæ ®ã«å ¥ããŠãã ããã
å Žåã«ãã£ãŠã¯ã ãã®ã³ã°ãäžååã§ ããããšãåé¡ã®åå ãšãªãããšããããŸããååãªè©³çްãªãã°ããªããã°ãç¹ã«ãã°ãçºçé »åºŠãäœãå ŽåããåçŸãå°é£ãªç¹å®ã®æ¡ä»¶äžã§çºçããå Žåã«ã¯ãåé¡ã®åçŸãšèšºæã¯ã»ãŒäžå¯èœã«ãªãå¯èœæ§ããããŸããé¢é£ãããšæããããã°ã®åé·æ§ãé«ãããããã° ã»ãã·ã§ã³ãéå§ããåã«èºèºããã«ãã°ã远å ããŠãã ããã
ãã°ã®æ³å®ãããåå ãžã®å·çã¯ã 確蚌ãã€ã¢ã¹ ãšãåŒã°ãããã 1 ã€ã®çœ ã§ããå¿ããªãŒãã³ã«ä¿ã¡ãæåã®ä»®èª¬ã«å·çããããªãããšãéèŠã§ãã蚌æ ãããªãã®çè«ãè£ä»ããªãå Žåã¯ããã®çè«ãç Žæ£ããå¥ã®èª¬æãæ¢ãæºåãããŠãã ããã
ãã«ãã¹ã¬ãã ããã°ã©ã ãæ±ããšãã«ããããèœãšã穎ã¯ãç«¶åç¶æ ããããããã¯ãªã©ã® ã¿ã€ãã³ã°ãšåæã®åé¡ãèæ ®ããªãããš ã§ãããããã®ãã°ã¯æç¶çã«çºçããå¯èœæ§ããããåçŸããã®ãå°é£ã§ããããããæ€åºããã«ã¯ãã¹ã¬ããåæãââãŒã«ã䜿çšããåæããªããã£ããé©åã«äœ¿çšãããŠãããã³ãŒãã確èªããŸããããã«ãåæå®è¡æ§ã«ç¹ã«éç¹ã眮ããŠåäœãã¹ããšçµ±åãã¹ããå®è£ ãããšããããã®ãšã©ãŒã®çºçãå€§å¹ ã«æžããããšãã§ããŸãã
é«åºŠãªãããã°ã«ãããŠç¹ã«åä»ãªåé¡ã¯ ãéèã®äžã«åãããŠããŸãããš ã§ããã¹ã¿ã㯠ãã¬ãŒã¹ã®å¥¥æ·±ãã«å ¥ã£ãããã¢ã»ã³ããªåœä»€ãã¹ãããå®è¡ããããããšãå šäœåãèŠå€±ã£ãŠããŸãå¯èœæ§ããããŸãããããé²ãã«ã¯ãæçµç®æšã宿çã«æãåºãããæ°ããèŠç¹ãæäŸã§ããå¥ã®éçºè ãšååããŠãã ããã
æåŸã«ãªããŸãããã³ã³ãã€ã«äžã« æé©åãã©ã°ã誀çšããªã ããã«æ³šæããå¿ èŠããããŸãããããã®ãã©ã°ã¯ãã€ã³ã©ã€ã³åãã³ãŒãã®åé 眮ããŸãã¯æªäœ¿çšã®å€æ°ã®åé€ã«ãããã³ãŒãã®åäœãç°ãªã£ããããã°ã®åå ãäžæçã«ãªã£ããããããšããããŸãããããã°ãããšãã¯ãæé©åããªãã«ããŠã¢ããªã±ãŒã·ã§ã³ãåã³ã³ãã€ã«ããããäžå®å®ãªåäœãããæããã«ãªãç¹å®ã®ã¬ãã«ã§ã¢ããªã±ãŒã·ã§ã³ãåã³ã³ãã€ã«ãããšåœ¹ç«ã€å ŽåããããŸãã
x86-64 ã¢ããªã±ãŒã·ã§ã³ã®é«åºŠãªãããã°ã¯ãç§åŠã§ãããšåæã«èžè¡ã§ããããŸãããããã®ããããèœãšã穎ãèªèããŠåé¿ããããšã§ãéçºè ã¯ã¹ãã«ã磚ããè€éãªãœãããŠã§ã¢ã®åé¡ã®èšºæãšè§£æ±ºã«çéããããšãã§ããŸãã
çµè«: ãããã°ããšã¹ããã«ãªã
ããããã° ããšã¹ãããã®ã¬ãã«ã«é²ãã«ã¯ãç¥èãå®è·µãåµé æ§ã®èåãå¿ èŠã§ãã x86-64 ã¢ããªã±ãŒã·ã§ã³ã®ãã°ã¯å æã§ããªãããã«æããããšããããŸãããæ£ããèãæ¹ãšé«åºŠãªãã¯ããã¯ã䜿ãã°ãäºå®äžãã¹ãŠã®åé¡ã解決ã§ããŸããçç·Žãããããã¬ãŒã¯ããŒã«ãçç¥ããŠãããåé¡ã蚺æããŠè§£æ±ºããããã®äœç³»çãªã¢ãããŒãã®éèŠæ§ãçè§£ããŠããŸãã
ããŸããŸãªãããã° ã·ããªãªã®çµéšãèç©ãããšãããããã®èª²é¡ã«ãã£ãŠã¹ãã«ã磚ãããå€ãã®å Žåãã¢ãŒããã¯ãã£ãã¢ããªã±ãŒã·ã§ã³ãããã«ã¯æå ã®ããã°ã©ãã³ã°èšèªã«ã€ããŠæ°ããããšãåŠã¶ããšãã§ããŸããã¡ã¢ãªç®¡çã®åŸ®åŠãªéããããã«ãã¹ã¬ããã®è€éããŸã§ãx86-64 ã¢ããªã±ãŒã·ã§ã³ç°å¢ã®è©³çްãåŠã³ããã¹ãŠã®ãã°ã解決ããããšã§å°éç¥èãé«ãŸããŸãã
ãããã°ã«ç¿çããã«ã¯ç¶ç¶çãªåªåãå¿ èŠã§ããããšãå¿ããªãã§ãã ããããã¯ãããžãŒã¯çµ¶ããé²åããŠããããããã°ææ³ãããŒã«ã»ãããé²åããªããã°ãªããŸããããªããŒã¹ ãšã³ãžãã¢ãªã³ã°ã䜿çšããŠãµãŒãããŒãã£ã®ã³ãŒãã«é¢ããæŽå¯ãåŸãå Žåã§ããæéãç¯çŽããããã«å®æçãªãã§ãã¯ãã¹ã¯ãªããåããå Žåã§ããè€éãªãã°ã®ãŠãµã®ã®ç©Žãæãäžããç²ã匷ããšæ ç±ããããªãããã®æè¡ã®é人ã«ããŸãã
åæ§ã«éèŠãªã®ã¯ãã¢ããªã±ãŒã·ã§ã³ã®éçºæ¹æ³ã®å€åãèªèããããšã§ãããã¯ããåŸæ¥ã®ã³ãŒãã£ã³ã°ã«ãããå人ã®èœåã ããåé¡ã§ã¯ãããŸããã AppMasterã®no-codeãã©ãããã©ãŒã ã®ãããªææ°ã®éçºãšã³ã·ã¹ãã ã¯ãã¢ããªã±ãŒã·ã§ã³éçºãšãããã°ã®å€ãã®åŽé¢ãç°¡çŽ åããŸããããã«ãããåºç€ãšãªãã³ãŒãçæãåŠçããªããå šäœåã«éäžã§ããããã«ãªããããžã¥ã¢ã« ããã°ã©ãã³ã°ãšèªååã®åãæŽ»çšããåé¡è§£æ±ºã®æ°ããªå¢å°ãæç€ºãããŸãããŸã ãæã¡ã§ãªãå Žåã¯ããã®ãããªãã©ãããã©ãŒã ãæäŸããå¯èœæ§ãæ¢æ±ããããšããç·åçãªãããã° ããšã¹ããã«ãªãããã®æ¬¡ã®ã¹ãããã«ãªãå¯èœæ§ããããŸãã
è€éããåãå ¥ããåŠç¿ã®ç¬éã倧åã«ãããããã¬ãŒã®ããŒã«ãããã磚ãç¶ããŠãã ããããã¹ãŠã®ææŠã¯ãäžèŠäžå¯èœã«èŠããããšãåé¡è§£æ±ºèœåã®èšŒã«å€ãããå°ããªéæ³ãå®è¡ããæ©äŒã§ããããšãå¿ããªãã§ãã ããã
ãããã質å
é«åºŠãªãããã°ææ³ã«ã¯ããã¬ãŒã¯ãã€ã³ããšãŠã©ãããã€ã³ããéã¢ã»ã³ãã©ãã¡ã¢ãª ã¢ãã©ã€ã¶ãããã©ãŒãã³ã¹ ãããã¡ã€ã©ããããã°çšã®èªåã¹ã¯ãªããäœæãããã³ãªããŒã¹ ãšã³ãžãã¢ãªã³ã°ã®äœ¿çšãå«ãŸããŸãããããã®ããŒã«ãæ£ããçè§£ããŠäœ¿çšãããšãx86-64 ã¢ããªã±ãŒã·ã§ã³ã®ãããã° ããã»ã¹ãå€§å¹ ã«æ¹åã§ããŸãã
x86-64 ã¢ãŒããã¯ãã£ãçè§£ãããšãããã»ããµäžã§ã¢ããªã±ãŒã·ã§ã³ãã©ã®ããã«å®è¡ããããã«ã€ããŠã®æŽå¯ãåŸãããã¬ãžã¹ã¿ãåœä»€ã»ãããã¡ã¢ãª ã¢ãã«ãªã©ã®ç¹å®ã®ã¢ãŒããã¯ãã£æ©èœã«åãããŠææ³ã調æŽããããšã§ããããã° ããã»ã¹ãæé©åã§ããŸãã
é©åã«æ§æããããããã°ç°å¢ã«ãããéçºè ã¯ãã°ãå¹ççã«èšºæããŠä¿®æ£ããããã«å¿ èŠãªå¶åŸ¡ãšå¯èŠæ§ãåŸãããšãã§ããŸããããã«ã¯ã匷åãªãããã¬ãŒããã°ãžã®ã¢ã¯ã»ã¹ããã®ä»ã®çµ±åéçºããŒã«ãå«ãŸããŠããŸãã
AppMasterã®ãããªNo-codeãã©ãããã©ãŒã ã¯ãç¹å®ã®åŽé¢ãèªååããããã°ã©ã ã®ãããŒãèŠèŠåããããšã§ãããã° ããã»ã¹ãç°¡çŽ åããã³ãŒããæ·±ãæãäžããããšãªãåé¡ã®ç¹å®ãšè§£æ±ºã容æã«ããŸãã
èªåãããã° ã¹ã¯ãªããã䜿çšãããšãäžè¬çãªåé¡ã®ãã¹ããšèšºæãç¹°ãè¿ãè¡ãããšã§ãããã° ããã»ã¹ãé«éåããéçºè ãåµé çãªåé¡è§£æ±ºãå¿ èŠãšããããè€éãªãã°ã«éäžã§ããããã«ãªããŸãã
ã¡ã¢ãªåæã¯ãè€é㪠x86-64 ã¢ããªã±ãŒã·ã§ã³ã§ã¯ç¹ã«æ³šæãå¿ èŠãªããªãŒã¯ãç Žæãäžæ£ãªå²ãåœãŠãªã©ã®ã¡ã¢ãªç®¡çã«é¢é£ãããã°ãç¹å®ããã®ã«åœ¹ç«ã¡ãŸãã
äžè¬çãªèœãšã穎ãšããŠã¯ãã¢ãŒããã¯ãã£åºæã®è©³çްãèŠèœãšãããšã埮åŠãªã¡ã¢ãªç Žæã®åé¡ãç¡èŠããããšãå©çšå¯èœãªããŒã«ãååã«æŽ»çšããªãããšãå埩çãªãããã° ã¿ã¹ã¯ãèªååããŠããªãããšãªã©ãæããããŸãã
ãããã¡ã€ãªã³ã°ã«ãããéçºè ã¯ã¢ããªã±ãŒã·ã§ã³ã®ããã©ãŒãã³ã¹ç¹æ§ãçè§£ã§ããããã«ãªããå¿ ãããã¯ã©ãã·ã¥ãåŒãèµ·ããããã§ã¯ãªããã®ã®ãå šäœçãªããã©ãŒãã³ã¹ãäœäžãããé ãããã°ãããã«ããã¯ãæããã«ããããšãã§ããŸãã
ãªããŒã¹ ãšã³ãžãã¢ãªã³ã°ã¯ããœãããŠã§ã¢ãåè§£ããŠãã®ã³ã³ããŒãã³ããšåäœãçè§£ããããã»ã¹ã§ãããããã°ã§ã¯ããœãŒã¹ ã³ãŒããå©çšã§ããªããœãããŠã§ã¢ãåæããããè€éãªã³ãŒã ãã¹ãæ·±ãã¬ãã«ã§çè§£ãããããããã«äœ¿çšã§ããŸãã
ãã¬ãŒã¯ãã€ã³ããšãŠã©ãããã€ã³ãã®ã€ã³ããªãžã§ã³ããªäœ¿çšã«ã¯ãæ¡ä»¶ä»ãã®è§£é€ã忢ããã«ãã°ãèšé²ããããšãããã©ãŒãã³ã¹ã«é倧ãªåœ±é¿ãäžããããšãªãããŒã¿ãç£èŠããããŒããŠã§ã¢æ¯æŽãŠã©ãããã€ã³ãã®äœ¿çšãªã©ãå«ãŸããŸãã
éã¢ã»ã³ãã©ãšéã³ã³ãã€ã©ã¯ããã·ã³ã³ãŒããããé«ãã¬ãã«ã®è¡šçŸã«å€æããããŒã«ã§ãããããã¯ãç¹ã«ã¯ã©ãã·ã¥ãã»ãã¥ãªãã£ã®è匱æ§ã«å¯ŸåŠããå ŽåãCPU ãå®è¡ããŠããå 容ãçè§£ããäžã§éåžžã«è²Žéã§ãã
ã¯ãããã«ãã¹ã¬ãã ã¢ããªã±ãŒã·ã§ã³ã®ãããã°ã«ã¯ãã¹ã¬ãã ã»ãŒã ãã¬ãŒã¯ãã€ã³ãã®äœ¿çšãã¹ã¬ããã®çžäºäœçšã®åæãåæå®è¡é¢é£ã®ãã°ãåé¿ããããã®é©åãªåæã¡ã«ããºã ã®ç¢ºä¿ãªã©ã®ç¹å®ã®æŠç¥ã圹ç«ã¡ãŸãã


