{"title":"结构并行程序的简单权限检查","authors":"Yang Zhao","doi":"10.1109/ICACTE.2008.50","DOIUrl":null,"url":null,"abstract":"This paper presents a simplified \"fractional permission'\" type system for an imperative language with structured parallelism and synchronization. A permission is a linear value associated with some piece of state in a program and \"fractions'' are used to distinguish reads from writes, with which we are able to check interference among parallel threads. In order to detect race conditions and deadlocks in a multithreaded program, we transform expressions and statements into action traces, then permission check all possible interleavings among traces in parallel. We show the operational semantics as well as some selected permission type rules.","PeriodicalId":364568,"journal":{"name":"2008 International Conference on Advanced Computer Theory and Engineering","volume":"33 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2008-12-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"A Simple Permission Checking for Structural Parallel Programs\",\"authors\":\"Yang Zhao\",\"doi\":\"10.1109/ICACTE.2008.50\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"This paper presents a simplified \\\"fractional permission'\\\" type system for an imperative language with structured parallelism and synchronization. A permission is a linear value associated with some piece of state in a program and \\\"fractions'' are used to distinguish reads from writes, with which we are able to check interference among parallel threads. In order to detect race conditions and deadlocks in a multithreaded program, we transform expressions and statements into action traces, then permission check all possible interleavings among traces in parallel. We show the operational semantics as well as some selected permission type rules.\",\"PeriodicalId\":364568,\"journal\":{\"name\":\"2008 International Conference on Advanced Computer Theory and Engineering\",\"volume\":\"33 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2008-12-20\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2008 International Conference on Advanced Computer Theory and Engineering\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/ICACTE.2008.50\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2008 International Conference on Advanced Computer Theory and Engineering","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICACTE.2008.50","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
A Simple Permission Checking for Structural Parallel Programs
This paper presents a simplified "fractional permission'" type system for an imperative language with structured parallelism and synchronization. A permission is a linear value associated with some piece of state in a program and "fractions'' are used to distinguish reads from writes, with which we are able to check interference among parallel threads. In order to detect race conditions and deadlocks in a multithreaded program, we transform expressions and statements into action traces, then permission check all possible interleavings among traces in parallel. We show the operational semantics as well as some selected permission type rules.