{"title":"模块化认证的SCAP动态存储分配","authors":"Sen Xiang, Yiyun Chen, Chunxiao Lin, Long Li","doi":"10.1109/QSIC.2006.42","DOIUrl":null,"url":null,"abstract":"Critical applications and increasing scale of software has made software assurance a big problem. Currently, programmers can write type-safe codes in typed languages with sound type systems, such as Java, Cyclone, even typed assembly language (TAL). But high assurance does mean not only type safe, but also correctness and security. Since type is not expressive enough, there are still no high assurance software released in typed language, especially operating system and runtime library, which are infrastructure software in the computing system. Logic predicates are more expressive than types, thus substituting types with logic predicates as program specification seems a good idea. In this paper, we present a certified dynamic storage allocation library (malloc/free) in SCAP, which is a new MIPS-like assembly language with expressive and power specification structure. And we encode the SCAP language and the certified library in a modern higher-order logic (HOL) proof assistant Coq. In this work, we confirm the expressiveness and modularity of SCAP. So we can expect SCAP to be a expressive target language for some safe high-level languages in the future","PeriodicalId":378310,"journal":{"name":"2006 Sixth International Conference on Quality Software (QSIC'06)","volume":"15 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2006-10-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":"{\"title\":\"Modularly Certified Dynamic Storage Allocation in SCAP\",\"authors\":\"Sen Xiang, Yiyun Chen, Chunxiao Lin, Long Li\",\"doi\":\"10.1109/QSIC.2006.42\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Critical applications and increasing scale of software has made software assurance a big problem. Currently, programmers can write type-safe codes in typed languages with sound type systems, such as Java, Cyclone, even typed assembly language (TAL). But high assurance does mean not only type safe, but also correctness and security. Since type is not expressive enough, there are still no high assurance software released in typed language, especially operating system and runtime library, which are infrastructure software in the computing system. Logic predicates are more expressive than types, thus substituting types with logic predicates as program specification seems a good idea. In this paper, we present a certified dynamic storage allocation library (malloc/free) in SCAP, which is a new MIPS-like assembly language with expressive and power specification structure. And we encode the SCAP language and the certified library in a modern higher-order logic (HOL) proof assistant Coq. In this work, we confirm the expressiveness and modularity of SCAP. So we can expect SCAP to be a expressive target language for some safe high-level languages in the future\",\"PeriodicalId\":378310,\"journal\":{\"name\":\"2006 Sixth International Conference on Quality Software (QSIC'06)\",\"volume\":\"15 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2006-10-27\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"2\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2006 Sixth International Conference on Quality Software (QSIC'06)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/QSIC.2006.42\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2006 Sixth International Conference on Quality Software (QSIC'06)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/QSIC.2006.42","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Modularly Certified Dynamic Storage Allocation in SCAP
Critical applications and increasing scale of software has made software assurance a big problem. Currently, programmers can write type-safe codes in typed languages with sound type systems, such as Java, Cyclone, even typed assembly language (TAL). But high assurance does mean not only type safe, but also correctness and security. Since type is not expressive enough, there are still no high assurance software released in typed language, especially operating system and runtime library, which are infrastructure software in the computing system. Logic predicates are more expressive than types, thus substituting types with logic predicates as program specification seems a good idea. In this paper, we present a certified dynamic storage allocation library (malloc/free) in SCAP, which is a new MIPS-like assembly language with expressive and power specification structure. And we encode the SCAP language and the certified library in a modern higher-order logic (HOL) proof assistant Coq. In this work, we confirm the expressiveness and modularity of SCAP. So we can expect SCAP to be a expressive target language for some safe high-level languages in the future