我们正在努力恢复Google Play商店上的Unionpedia应用程序
传出传入
🌟我们简化了设计以优化导航!
Instagram Facebook X LinkedIn
您自己的联盟百科,带有您的徽标和域名,价格从每月9.99美元起
创建我的联盟百科

Polyspace

指数 Polyspace

Polyspace是靜態程序分析的工具,利用抽象释义的方式進行大規模的分析,可以偵測C語言、C++或是Ada程式的原始碼中,是否有特定類型的執行期錯誤,或是證明沒有這類的錯誤。此工具也可以檢查原始碼是否符合特定的代碼標準。.

目录

  1. 13 关系: 专有软件形式化方法循環複雜度算術溢出缓冲区溢出靜態程序分析跨平台軟體度量迈斯沃克除以零MISRA C抽象释义源代码

  2. 软件测试工具
  3. 静态代码分析工具

专有软件

专有软件,又称非自由软件、专属软件、私有软件、封闭性软件等,是指在使用、修改上有限制的软件。此外,有些软件也有复制和分发的限制,它也属于专有软件的范畴。通常,与专有软件对应的是自由软件。这些限制是由软件的所有者制定的。 这些限制是通过法律或者技术上的手段实现的,有时这两种手段被同时采用。最常见的技术限制方式是保留能够被大家读懂的源代码,而只发布只有计算机才能读懂的程序(如二进制格式)。法律上的限制包括使用版权(附带软件许可证)和专利。这些程序的源代码往往被其持有者视为商业机密。如果第三方要查看源代码时,往往需要签署保密协议。.

查看 Polyspace和专有软件

形式化方法

形式化方法,中文也稱形式方法、正規方法。在计算机科学和软件工程领域,形式化方法是基于数学的特种技术,适合于软件和硬件系统的描述、开发和验证。将形式化方法用于软件和硬件设计,是期望能够像其它工程学科一样,使用适当的数学分析以提高设计的可靠性和強健性。但是,由于采用形式化方法的成本高意味着它们通常只用于开发注重安全性的高度整合的系统。.

查看 Polyspace和形式化方法

循環複雜度

循環複雜度(Cyclomatic complexity)也稱為條件複雜度或圈复杂度,是一種軟體度量,是由在1976年提出,用來表示程式的複雜度,其符號為VG或是M。循環複雜度由程式的源代碼中量測線性獨立路徑的個數。此概念有些類似的量測文字複雜度的 ,不過方法不完全相同。 循環複雜度是由程式的來計算:有向圖的節點對應程式中個別的程式碼,而若一個程式執行後會立刻執行另一程式碼,會有邊連結二程式碼對應的節點。圈複雜度可應用在程式的子程序、模組、方法或類別。 麥凱布首先提出一種稱為「基礎路徑測試」(Basis Path Testing)的軟體測試方式,是測試程式中的每一線性獨立路徑,此情形的測試用例個數即為程式的循環複雜度。 「循環複雜度」的名稱有時會讓人誤解,因為此複雜度不只計算程式中的迴圈(循環)個數。循環複雜度是指程式的控制流圖中,若將結束點到啟始點再增加一個邊時,控制流圖中的圈(幾個邊形成封閉路徑)的個數。.

查看 Polyspace和循環複雜度

算術溢出

算術溢位(arithmetic overflow)或簡稱為溢位(overflow)指的是:.

查看 Polyspace和算術溢出

缓冲区溢出

缓冲区溢出(buffer overflow),是针对程序设计缺陷,向程序输入缓冲区写入使之溢出的内容(通常是超过缓冲区能保存的最大数据量的数据),从而破坏程序运行、趁著中斷之際并取得程序乃至系统的控制权。 缓冲区溢出原指当某个数据超过了处理程序限制的范围时,程序出现的异常操作。造成此现象的原因有:.

查看 Polyspace和缓冲区溢出

靜態程序分析

態程序分析(Static program analysis)是指在不執行计算机程序的條件下,進行程序分析的方法。有些程序分析需要在程序執行時才能進行,這種程序分析稱為。大部份的靜態程序分析的對象是針對特定版本的源代码,也有些靜態程序分析的對象是目标代码。靜態程序分析一詞多半是指配合靜態程序分析工具進行的分析,人工進行的分析一般稱為或代码审查。 靜態程序分析的複雜程度依所使用的工具而異,簡單的只考慮個別语句及声明的行為,複雜的可以分析程序的完整源代码。不同靜態程序分析技术对分析得到的資訊的用途也有所不同,簡單的可以是高亮标识可能存在的代碼錯誤(如lint),複雜的可以是形式化方法,也就是用數學的方式證明程式的某些行為符合其設計规约。 軟體度量和反向工程可以視為一種靜態程序分析的方式。在實務上,在定義所謂的軟體品質指標(software quality objectives)後,軟體度量的推導及程序分析常一起進行,在開發嵌入式系統時常會用這種方式進行。 靜態程序分析的商業用途可以用來驗證安全關鍵電腦系統中的軟體,並指出可能有计算机安全隐患的程式碼,這類的應用越來越多。例如以下的產業已確定用靜態程序分析作為提昇複雜軟體品質的方法:.

查看 Polyspace和靜態程序分析

跨平台

跨平台泛指编程语言、软件或硬件设备可以在多种作業系統或不同硬體架構的電腦上運作。.

查看 Polyspace和跨平台

軟體度量

軟體度量(software metric)是一個對於軟體性質及其規格的量測。軟體度量的目的是獲得客觀、可以複製及量化的量測結果,依軟體度量性質及特性的不同,可以分別應用在軟體開發的時程及預算規劃、成本估算、品質保證測試、軟體偵錯、軟體性能最佳化或專案人員配置的最佳化等領域。.

查看 Polyspace和軟體度量

迈斯沃克

迈斯沃克(The MathWorks),是美国一家开发技术性计算软件的中型公司,著名的产品有MATLAB和Simulink,使用对象主要为工业、政府和教育行业的工程师和科学家。The MathWorks总部位于美國马萨诸塞州内蒂克市,中国分公司成立于2007年,位于北京市海淀区科学院南路2号。.

查看 Polyspace和迈斯沃克

除以零

在數學中,被除數的除數(分母)是零將某數除以零,可表達為\frac,a是被除數。在算式中沒有意義,因為沒有數目,以零相乘(假設a\neq 0),由於任何數字乘以零均等於零,因此除以零是一個沒有定義的值。此式是否成立端視其在如何的數學設定下計算。一般實數算術中,此式為無意義。在程序設計中,當遇上正整數除以零程序會中止,正如浮點數會出現NaN值的情況,而在Microsoft Excel及Openoffice或Libreoffice的Calc中,除以零會直接顯示#DIV/0! 。.

查看 Polyspace和除以零

MISRA C

MISRA C是由(MISRA)提出的C語言開發標準。其目的是在增進嵌入式系統的安全性及可移植性。針對C++語言也有對應的標準MISRA C++。 MISRA C一開始主要是針對汽車產業 ,不過其他產業也逐漸開始使用MISRA C:包括航太、電信、國防、醫療設備、鐵路等領域中都已有廠商使用MISRA C。 MISRA C的第一版《Guidelines for the use of the C language in vehicle based software》是在1998年發行,一般稱為MISRA-C:1998.

查看 Polyspace和MISRA C

抽象释义

在计算机科学中,抽象释义是基于在有序集合特别是格上的单调函数,计算机程序的语义的可靠逼近理论。它可以被看作对计算机程序的部分执行,获取关于它的语义信息(比如,控制结构、信息流)而不进行所有计算。 它的主要具体应用是形式静态分析,关于计算机程序的可能执行的信息的自动提取;比如这种分析有两个主要用途.

查看 Polyspace和抽象释义

源代码

源代码(Source code),也称源程序,是指一系列人类可读的计算机语言指令。 在现代程序语言中,源代码可以是以书籍或者磁带的形式出现;但最常用的格式是文本文件,这种典型格式的目的是为了编译出计算机程序。计算机源代码的最终目的是将人类可读的文本翻译成为计算机可以执行的二进制指令,这种过程叫做编译,通过编译器完成。.

查看 Polyspace和源代码

另见

软件测试工具

静态代码分析工具