词条 | MALPAS Software Static Analysis Toolset |
释义 |
| developer = Atkins | operating system = Windows | genre = Static program analysis | license = Proprietary | website = {{URL|www.malpas-global.com}} }} MALPAS is a software toolset that provides a means of investigating and proving the correctness of software by applying a rigorous form of static program analysis. The tool uses directed graphs and regular algebra to represent the program under analysis. Using the automated tools in MALPAS an analyst can describe the structure of a program, classify the use made of data and provide the information relationships between input and output data. It also supports a formal proof that the code meets its specification. MALPAS has been used to confirm the correctness of safety critical applications in the nuclear,[1] aerospace[2] and defence[3] industries. It has also been used to provide compiler validation in the nuclear industry on Sizewell B.[4] Languages that have been analysed include: Ada, C, PLM and Intel Assembler. MALPAS is well suited to the independent static analysis required by the UK's Health and Safety Executive guidance for computer based protection systems for nuclear reactors due to its rigour and flexibility in handling many programming languages.[5] Technical OverviewThe MALPAS toolset comprises five specific analysis tools that address various properties of a program. The input to the analysers needs to be written in MALPAS Intermediate Language (IL); this can be hand-written or produced by an automated translation tool from the original source code. Automatic translators exist for common high-level programming languages such as Ada, C and Pascal, as well as assembler languages such as Intel 80*86, PowerPC and 68000. The IL text is input into MALPAS via the "IL Reader", which constructs a directed graph and associated semantics for the program under analysis. The graph is reduced using a series of graph reduction techniques. The MALPAS toolset consists of 5 analysers:[6]
HistoryThe original research and initial generations of the toolset were created by the UK's Royal Signals and Radar Establishment (RSRE) in Malvern, England (hence the derivation of the name, MALvern Programming Analysis Suite). It was used here in a purely research capacity before being employed commercially by Advantage Technical Consulting (bought by Atkins in 2008). The first large scale static analysis task was on the primary reactor protection system for the Sizewell B power station. This was the UK's first nuclear power station to employ a computer-based protection system as its first line of defence against a catastrophic failure. Further to this, CEZ in the Czech Republic employed MALPAS to increase the confidence in the reactor protection system in the Temelin Nuclear Power Station. In 1995 the UK's Royal Air Force commissioned independent analysis of the Lockheed Martin C130J's avionics software assessed as safety-critical. MALPAS was used for the analysis of this software, apart from the Mission Computer software, which was written in Spark Ada and verified with the Spark Toolset.[7] References1. ^Programmable Protection in UK NPP: 10 years on, D Pavey, British Energy. http://entrac.iaea.org/I-and-C/TM_VTT_2005_11/IAEA_papers/051124_Thursday/IAEA_paper_Pavey.pdf 2. ^Static Code Analysis on the C-130J Hercules Safety-Critical Software, Eur Ing K J Harrison, BSc CPhys MinstP CEng MRAeS MBCS; Aerosystems International, UK. {{cite web|url=http://www.ida.liu.se/~TDDB30/VT03/labs_lekt/harrison_doc.pdf |title=Archived copy |accessdate=2011-03-18 |deadurl=yes |archiveurl=https://web.archive.org/web/20110927010202/http://www.ida.liu.se/~TDDB30/VT03/labs_lekt/harrison_doc.pdf |archivedate=2011-09-27 |df= }} 3. ^An analysis of ordnance software using the MALPAS tools, Hayman, K, Defence Sci. & Technol. Organ., Salisbury, SA. http://www.dsto.defence.gov.au/publications/scientific_record.php?record=9074 4. ^Formal demonstration of equivalence of source code and PROM contents, Proceedings of the IMA Conference on Mathematics of Dependable Systems, Oxford University Press, 1995, pp225248D J Pavey and L A Winsborrow 5. ^Computer based safety systems - technical guidance for assessing software aspects of digital computer based protection systems, {{cite web|url=http://www.hse.gov.uk/foi/internalops/nsd/tech_asst_guides/tast046app1.htm |title=Archived copy |accessdate=2011-03-18 |deadurl=yes |archiveurl=https://web.archive.org/web/20121016090744/http://www.hse.gov.uk/foi/internalops/nsd/tech_asst_guides/tast046app1.htm |archivedate=2012-10-16 |df= }} 6. ^Industrial Perspective on Static Analysis. Software Engineering Journal Mar. 1995: 69-75Wichmann, B. A., A. A. Canning, D. L. Clutterbuck, L. A. Winsbarrow, N. J. Ward, and D. W. R. Marsh. http://www.ida.liu.se/~TDDC90/papers/industrial95.pdf 7. ^Static Code Analysis on the C-130J Hercules Safety-Critical Software {{cite web|url=http://www.ida.liu.se/~TDDB30/VT03/labs_lekt/harrison_doc.pdf |title=Archived copy |accessdate=2011-03-18 |deadurl=yes |archiveurl=https://web.archive.org/web/20110927010202/http://www.ida.liu.se/~TDDB30/VT03/labs_lekt/harrison_doc.pdf |archivedate=2011-09-27 |df= }} 5 : Formal methods tools|Software testing tools|Theorem proving software systems|Model checkers|Static program analysis tools |
随便看 |
|
开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。