吉林大学学报(工学版) ›› 2016, Vol. 46 ›› Issue (1): 235-241.doi: 10.13229/j.cnki.jdxbgxb201601035

• • 上一篇    下一篇

基于Pi演算的并行编程语言

康辉, 王家琦, 梅芳   

  1. 吉林大学 计算机科学与技术学院,长春 130012
  • 收稿日期:2014-10-11 出版日期:2016-01-30 发布日期:2016-01-30
  • 通讯作者: 梅芳(1977-),女,讲师,博士.研究方向:自主通信,策略网管.E-mail:meifang@jlu.edu.cn
  • 作者简介:康辉(1968-),女,副教授.研究方向:Web服务与组合.E-mail:kanghui@jlu.edu.cn
  • 基金资助:
    国家自然科学基金项目(61073164)

A parallel programming language based on Pi-calculus

KANG Hui, WANG Jia-qi, MEI Fang   

  1. College of Computer Science and Technology,Jilin University,Changchun 130012,China
  • Received:2014-10-11 Online:2016-01-30 Published:2016-01-30

摘要: 针对传统编程语言不能便捷高效利用多核芯片计算资源的缺点,本文提出了一种并行编程语言并定义了核心语义及其运行时环境的相关算法。该语言以Pi演算为理论基础,首先根据Pi演算的基本结构定义语言的核心句法结构,然后以Pi演算中进程间同步通信为基础定义了核心操作语义。本文给出了在并行操作语义中进程的上下文环境的定义,设计了构成运行时环境整体架构的主要数据结构及运行时环境中基于同步通信的调度算法和基于引用计数器的垃圾回收算法,根据本文定义的句法结构可以定义出高效地利用多核芯片计算资源的并行程序。

关键词: 计算机软件, Pi演算, 编程语言, 并行编程, 多核芯片

Abstract: Considering that the traditional programming language fails to use multicore processors to calculate conveniently and effectively, a parallel programming language is proposed and its core semantics and the relative algorithms of its runtime environment are defined. This language with Pi-calculus as its theoretical foundation first defines the core syntactic structure of the language based on the basic structure of Pi-calculus, and then defines the core operating semantics on the basis of synchronous communication in Pi-calculus process. This paper also defines the context of process in parallel operating semantics and designs the main data structure, which consists of overall architecture in operating and scheduling algorithms based on synchronous communication and garbage collection algorithm based on reference count. Therefore, the proposed parallel programming language is capable of using multicore processors to calculate sources easily and effectively.

Key words: computer application, Pi-calculus, programming language, parallel programming, multicore processors

中图分类号: 

  • TP31
[1] Sutter H. The free lunch is over: A fundamental turn toward concurrency in software[J]. Dr. Dobb's Journal, 2005, 30(3): 202-210.
[2] 康辉, 张双双, 梅芳. 一种递归π演算向Petri网的转换方法[J]. 吉林大学学报:工学版, 2014, 34(1):142-148.
Kang Hui, Zhang Shuang-shuang, Mei Fang.Petri net translation of recursion π-calculus[J].Journal of Jilin University(Engineering and Technology Edition),2014, 34(1):142-148.
[3] Victor, Björn, Faron Moller. The Mobility Workbench-a Tool for the π-calculus[M]. Computer Aided Verification, Heidelberg: Springer Berlin, 1994.
[4] Paz H, Petrank E, Bacon D F, et al. An efficient on-the-fly cycle collection[C]∥Compiler Construction, Springer, Berlin Heidelberg, 2005: 156-171.
[5] Honda K, Tokoro M. An object calculus for asynchronous communication[C]∥European Conference on Object-Oriented Programming. Springer Berlin Heidelberg, 1991: 133-147.
[6] Boudol G. Asynchrony and the Pi-calculus[R]. INRIA Research Report 1702,1992.
[7] 郝克刚, 郭小群. Pi 演算对图灵机的表达[J]. 计算机工程与科学, 2009, 31(10): 53-55.
Hao Ke-gang,Guo Xiao-qun. Expression of turing machines by pi calculus[J].Computer Engineering & Science, 2009, 31(10): 53-55.
[8] Milner R, Parrow J, Walker D. A calculus of mobile processes, parts I and II[J]. Information and Computation, 1992, 100(1):151-175.
[9] Sangiorgi D. A theory of bisimulation for the π-calculus[J]. Acta Informatica, 1996, 33(1): 69-97.
[10] Pierce B C, Turner D N. Pict: a programming language based on the Pi-Calculus[C]∥Proof, Language, and Interaction, 2000: 455-494.
[1] 马健, 樊建平, 刘峰, 李红辉. 面向对象软件系统演化模型[J]. 吉林大学学报(工学版), 2018, 48(2): 545-550.
[2] 罗养霞, 郭晔. 基于数据依赖特征的软件识别[J]. 吉林大学学报(工学版), 2017, 47(6): 1894-1902.
[3] 应欢, 王东辉, 武成岗, 王喆, 唐博文, 李建军. 适用于商用系统环境的低开销确定性重放技术[J]. 吉林大学学报(工学版), 2017, 47(1): 208-217.
[4] 李勇, 黄志球, 王勇, 房丙午. 基于多源数据的跨项目软件缺陷预测[J]. 吉林大学学报(工学版), 2016, 46(6): 2034-2041.
[5] 王念滨, 祝官文, 周连科, 王红卫. 支持高效路径查询的数据空间索引方法[J]. 吉林大学学报(工学版), 2016, 46(3): 911-916.
[6] 特日跟, 江晟, 李雄飞, 李军. 基于整数数据的文档压缩编码方案[J]. 吉林大学学报(工学版), 2016, 46(1): 228-234.
[7] 陈鹏飞, 田地, 杨光. 基于MVC架构的LIBS软件设计与实现[J]. 吉林大学学报(工学版), 2016, 46(1): 242-245.
[8] 刘磊, 王燕燕, 申春, 李玉祥, 刘雷. Bellman-Ford算法性能可移植的GPU并行优化[J]. 吉林大学学报(工学版), 2015, 45(5): 1559-1564.
[9] 冯晓宁, 王卓, 张旭. 基于L-π演算的WSN路由协议形式化方法[J]. 吉林大学学报(工学版), 2015, 45(5): 1565-1571.
[10] 李明哲, 王劲林, 陈晓, 陈君. 基于网络处理器的流媒体应用架构模型(VPL)[J]. 吉林大学学报(工学版), 2015, 45(5): 1572-1580.
[11] 王克朝, 王甜甜, 苏小红, 马培军. 基于频繁闭合序列模式挖掘的学生程序雷同检测[J]. 吉林大学学报(工学版), 2015, 45(4): 1260-1265.
[12] 黄宏涛,王静,叶海智,黄少滨. 基于惰性切片的线性时态逻辑性质验证[J]. 吉林大学学报(工学版), 2015, 45(1): 245-251.
[13] 范大娟1, 2, 黄志球1, 肖芳雄1, 祝义1, 王进1. 面向多服务交互的相容性分析与适配器生成[J]. 吉林大学学报(工学版), 2014, 44(4): 1094-1103.
[14] 贺秦禄1, 李战怀1, 王乐晓1, 王瑞2. 云存储系统聚合带宽测试技术[J]. 吉林大学学报(工学版), 2014, 44(4): 1104-1111.
[15] 康辉, 张双双, 梅芳. 一种递归π演算向Petri网的转换方法[J]. 吉林大学学报(工学版), 2014, 44(01): 142-148.
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
No Suggested Reading articles found!