ãéçºã®ã¢ã¦ãã½ã¼ã·ã³ã°ããªã¼ãã³ã½ã¼ã¹å©ç¨ãé²ã¿ã製åå質ã®æ ä¿ãæ©ã¿ã®ç¨®ã¨ãªãã¤ã¤ããã巨大åã»è¤éåããã½ããã¦ã§ã¢ã®ç¶æ³ãèãã¦ã¿ã¦ããæä½æ¥ãç®è¦ã§ã¯ãªãéç解æãã¼ã«ãªã©ã§èªååããã®ãç¾å®è§£ã¨ãããã ããã
ãéç解æãã¼ã«ã®ä¸ã¤ã«ãç±³ã¹ã¿ã³ãã©ã¼ã大å¦ã®ç 究室çºã®ãCoverity Static Analysisãã¨ãã製åããããéçºãæãããç±³Coverity社ã®ãã¼ãã¢ã¼ããã¯ã Andy Chouæ°ã«ãç¾å¨ã®éçºååããè¦ãéç解æãã¼ã«ã®éè¦æ§ããæè¿ã®ç±³å½ã®ãã¬ã³ãã«ã¤ãã¦èããã

å¹æçãªéç解æãã¼ã«ãé¸ã¶3ã¤ã®ãã¤ã³ã
ââéç解æãã¼ã«ãå¿ è¦ã¨ãããèæ¯ã«ãéçºæ¥çã«ãããã©ã®ãããªå¤åããã£ãã®ã§ãããã
çµã¿è¾¼ã¿éçºã«ããã¦ã¯ãã·ã¹ãã å´ã§ãããã¤ã¹å´ã§ããã½ããã¦ã§ã¢ã«å¯¾ãã価å¤ãé«ã¾ã£ã¦ãã¦ãã¾ããã¹ãã¼ããã©ã³ãä¾ã«æãã¦èããã¨ããã¼ãã¦ã§ã¢ãã¿ããã¹ã¯ãªã¼ã³ãã¯ã¤ã¤ã¬ã¹ã¢ã¯ã»ã¹ãªã©ã¯æããåå¨ãã¦ãã¾ãããã対å¿ããã¹ãã¼ããã©ã³ã®ã¢ããªã±ã¼ã·ã§ã³ã¯æè¿ã«ãªã£ã¦ããåºã¦ãããã®ã§ããä»å¾ã¯ãããã®ã½ããã¦ã§ã¢éçºã«åãå ¥ãã¦ãããã¨ã§ã製åã®ç«¶äºåãå¢ãã¦ããã¨æãã¾ãã
ä¸æ¹ã§ãæ©è½ãå¢ãã¦ãããã¨ã«ããã³ã¼ããµã¤ãºãé常ã«å¤§ãããªã£ã¦ãã¾ãããã½ã¼ã¹ã³ã¼ãã®éçºãã¢ã¦ãã½ã¼ã·ã³ã°ãããããªã¼ãã³ã½ã¼ã¹ããåãå ¥ããå ´åãªã©ã¯ãããã«ã³ã¼ãã¯è¤éåããã½ããã¦ã§ã¢ã®æ´åæ§ãä¿ã¤ã®ãé£ãããªã£ã¦ãã¾ããããã³ã¹ãããªã¹ã¯ã軽æ¸ã§ããéç解æãã¼ã«ã®éè¦ãé«ã¾ã£ã¦ããã¨è¨ãã¾ãã
ââéç解æãã¼ã«ãå°å ¥ããéã®ãã¤ã³ããæãã¦ãã ãã
éç解æãã¼ã«ãå¹æçã«ä½¿ç¨ããã«ã¯ã3ã¤ã®ãã¼ãã¤ã³ããããã¾ãã1ã¤ç®ã¯ãéç解æãã¼ã«ã«ãã£ã¦åºåããããã°ã¬ãã¼ãã®å 容ãæ£ãããã©ãããã¨ããç¹ã§ãã誤æ¤åºãå¤ãã¨ãéçºè ã«ã¨ã£ã¦ãã°ã¬ãã¼ãã¯ç¡æå³ãªãã®ã¨ãªã£ã¦ãã¾ãã¾ãã2ã¤ç®ã¯ããã°ã¬ãã¼ãã®å 容ã«ååãªæ å ±ãè¨è¼ããã¦ããããã3ã¤ç®ã¯ãç¾å¨ããéçºããã»ã¹ã®ä¸ã«ããã®ãã¼ã«ãã·ã¼ã ã¬ã¹ã«ãã£ããããããã§ãã
ââã§ã¯ãéç解æãã¼ã«ãCoverity Static Analysisãã§ã¯ãå ·ä½çã«ã©ã®ããã«ããã°ã©ã ã®è§£æãè¡ãããã®ã§ãããã
ãCoverity Static Analysisãã§ã¯ãããã°ã©ã ã®æµãã§ããããã¹ããåãåºãã¦è§£æããã½ã¼ã¹ã³ã¼ãä¸ã«ã¤ã³ã©ã¤ã³ã§è¡¨ç¤ºãã¾ãããã©ã³ãã®ãã£ã¬ã¯ã·ã§ã³ï¼åæ¡ä»¶åå²ã§ã©ã¡ããé¸æãããï¼ã¯ç·ãã¨ã©ã¼é¢ä¿ã®æ å ±ã¯èµ¤ã®ã¤ãã³ãã¡ãã»ã¼ã¸ã¨ãã¦ã½ã¼ã¹ã³ã¼ãã®æ¨ªã«å¯è¦åããããããéçºè ã¯ããã°ã©ã ã®ã¤ãã³ããã¨ã©ã¼ã®çºçç®æã容æã«ææ¡ã§ãã¾ãã

ââä»ã®è£½åã¨æ¯ã¹ã¦Coverity Static Analysisã¯ã©ããã£ãç¹é·ãããã®ã§ãããã
å¼ç¤¾è£½åã®ä¸çªã®å¼·ã¿ã¯ã誤æ¤åºçãé常ã«ä½ããã¨ã§ããé常ã§èª¤æ¤åºçãå¹³å20ï¼ æªæºã«æãããã¨ãã§ãã¾ããã¾ããã½ã¼ã¹ã³ã¼ãã1,000ä¸è¡ãè¶ ãããããªå¤§è¦æ¨¡ã·ã¹ãã ã®è§£æãå¯è½ã§ãã
é度ã®é¢ã§ãã使ç¨ãã¦ãããã¼ãã¦ã§ã¢æ¬¡ç¬¬ã§ãããæ°ç¾ä¸è¡ã§ããã°æ°æé以å ã«è¡ããã¨ãã§ãã¾ãã大è¦æ¨¡ã·ã¹ãã ã®ããã«ã³ã¼ãã1,000ä¸è¡ä»¥ä¸ã ã¨ã解æã«1æ¥ï½æ°æ¥ãããå¯è½æ§ãããã¾ãããå·®åã®ã¿ã解æãããã¨ã§æéãæãããã¨ãã§ãã¾ãã
ããã«ãã¯ã©ãã·ã¥ãèµ·ãããããªæ¬ é¥ãã»ãã¥ãªãã£ã¼ã¨ã©ã¼ãªã©ããã¾ãã¾ãªã¿ã¤ãã®æ¬ é¥ãæ¤åºã§ããç¹ãã¾ãããããã³ã°æ©è½ã«ããç¹å®ã®æ¬ é¥ã使ç¨ãã¦ä½ããã製åã©ã¤ã³ããã³ä»ã®ãã¼ã¸ã§ã³ã¸ã®å½±é¿ã容æã«ç¢ºèªã§ããç¹ãé¡ä¼¼è£½åã¨ã®éãã ã¨è¨ããã§ãããã
æãéè¦ãªãã¨ã¯ãéçºè ã«ã¨ã£ã¦æçã§ããã¨ããçµæãéããã¡ãã¨åºããã¨ãªã®ã§ãç§ãã¡ã¯å¸¸ã«ç²¾åº¦ãé«ããæ å ±ã¨ãã¦å åãªæ°ããé«ã解ææè¡ã«ããçæéã§æ¤åºãããã¨ã«æ³¨åãã¦ãã¾ãã
