Supporting Selective Formalism in CSP++ with Process-Specific Storage

Communicating Sequential Processes (CSP) is a formal language whose primary purpose is to model and verify concurrent systems. The CSP++ toolset was created to realize the concept of selective formalism by making machine-readable CSPm specifications both executable (through automatic C++ code genera...

Full description

Saved in:
Bibliographic Details
Published in:2015 IEEE 17th International Conference on High Performance Computing and Communications, 2015 IEEE 7th International Symposium on Cyberspace Safety and Security, and 2015 IEEE 12th International Conference on Embedded Software and Systems pp. 1057 - 1065
Main Authors: Gardner, William B., Gumtie, Alicia, Carter, John D.
Format: Conference Proceeding
Language:English
Published: IEEE 01.08.2015
Subjects:
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Abstract Communicating Sequential Processes (CSP) is a formal language whose primary purpose is to model and verify concurrent systems. The CSP++ toolset was created to realize the concept of selective formalism by making machine-readable CSPm specifications both executable (through automatic C++ code generation) and extensible (by allowing integration of C++ user-coded functions, UCFs). However, UCFs were limited by their inability to share data with each other, thus their application was constrained to solving simple problems in isolation. We extend CSP++ by providing UCFs in the same CSP process with safe access to a shared storage area, similar in concept and API to Pthreads' thread-local storage, enabling cooperation between them and granting them the ability to undertake more complex tasks without breaking the formalism of the underlying specification. Process-specific storage is demonstrated with a line-following robot case study, applying CSP++ in a soft real-time system. Also described is the Eclipse plug-in that supports the CSPm design flow.
AbstractList Communicating Sequential Processes (CSP) is a formal language whose primary purpose is to model and verify concurrent systems. The CSP++ toolset was created to realize the concept of selective formalism by making machine-readable CSPm specifications both executable (through automatic C++ code generation) and extensible (by allowing integration of C++ user-coded functions, UCFs). However, UCFs were limited by their inability to share data with each other, thus their application was constrained to solving simple problems in isolation. We extend CSP++ by providing UCFs in the same CSP process with safe access to a shared storage area, similar in concept and API to Pthreads' thread-local storage, enabling cooperation between them and granting them the ability to undertake more complex tasks without breaking the formalism of the underlying specification. Process-specific storage is demonstrated with a line-following robot case study, applying CSP++ in a soft real-time system. Also described is the Eclipse plug-in that supports the CSPm design flow.
Author Carter, John D.
Gumtie, Alicia
Gardner, William B.
Author_xml – sequence: 1
  givenname: William B.
  surname: Gardner
  fullname: Gardner, William B.
  email: gardnerw@uoguelph.ca
  organization: Sch. of Comput. Sci., Univ. of Guelph, Guelph, ON, Canada
– sequence: 2
  givenname: Alicia
  surname: Gumtie
  fullname: Gumtie, Alicia
  email: agumtie@gmail.com
  organization: Gen. Motors, Phoenix, AZ, USA
– sequence: 3
  givenname: John D.
  surname: Carter
  fullname: Carter, John D.
  email: jcarter@uoguelph.ca
  organization: Sch. of Comput. Sci., Univ. of Guelph, Guelph, ON, Canada
BookMark eNotzE1LwzAYAOAICursL_Bg7qM1H83XUULnBgML0fNI07cz0C_SqvjvPbjTc3vu0fU4jYDQEyUFpcQ872trc-tcfrCVcwUjVBRMiiuUGaVpqYzRhitzi7JliQ0ptRKUKXGHKvc1z1Na43jGDnoIa_wGvJvS4Pu4DDiO2Lp6u8U_cf3EdZoCLEvuZgixiwG7dUr-DA_opvP9AtnFDfrYVe92nx_fXg_25ZhHyviayxAYMKmEJoG2IIIUYIJXpAtGU8WM9FQDkVoS0xLWtK1uTNcFor1Sben5Bj3-vxEATnOKg0-_J8W55MTwP_h4Ta8
CODEN IEEPAD
ContentType Conference Proceeding
DBID 6IE
6IL
CBEJK
RIE
RIL
DOI 10.1109/HPCC-CSS-ICESS.2015.265
DatabaseName IEEE Electronic Library (IEL) Conference Proceedings
IEEE Proceedings Order Plan All Online (POP All Online) 1998-present by volume
IEEE Xplore All Conference Proceedings
IEEE Electronic Library (IEL)
IEEE Proceedings Order Plans (POP All) 1998-Present
DatabaseTitleList
Database_xml – sequence: 1
  dbid: RIE
  name: IEEE Electronic Library (IEL)
  url: https://ieeexplore.ieee.org/
  sourceTypes: Publisher
DeliveryMethod fulltext_linktorsrc
EISBN 9781479989379
1479989371
EndPage 1065
ExternalDocumentID 7336309
Genre orig-research
GroupedDBID 6IE
6IL
ALMA_UNASSIGNED_HOLDINGS
CBEJK
RIB
RIC
RIE
RIL
ID FETCH-LOGICAL-i123t-6cc2e267580c1de5c65e9ca70fc9817296a18e068609d02bdd8b9ffc08a77d4a3
IEDL.DBID RIE
IngestDate Wed Dec 20 05:20:02 EST 2023
IsPeerReviewed false
IsScholarly false
Language English
LinkModel DirectLink
MergedId FETCHMERGED-LOGICAL-i123t-6cc2e267580c1de5c65e9ca70fc9817296a18e068609d02bdd8b9ffc08a77d4a3
PageCount 9
ParticipantIDs ieee_primary_7336309
PublicationCentury 2000
PublicationDate 20150801
PublicationDateYYYYMMDD 2015-08-01
PublicationDate_xml – month: 08
  year: 2015
  text: 20150801
  day: 01
PublicationDecade 2010
PublicationTitle 2015 IEEE 17th International Conference on High Performance Computing and Communications, 2015 IEEE 7th International Symposium on Cyberspace Safety and Security, and 2015 IEEE 12th International Conference on Embedded Software and Systems
PublicationTitleAbbrev hpcc-css-icess
PublicationYear 2015
Publisher IEEE
Publisher_xml – name: IEEE
SSID ssib048751275
Score 1.5808733
Snippet Communicating Sequential Processes (CSP) is a formal language whose primary purpose is to model and verify concurrent systems. The CSP++ toolset was created to...
SourceID ieee
SourceType Publisher
StartPage 1057
SubjectTerms C++
code generation
CSPm
Eclipse
embedded systems
formal methods
Libraries
model-based design
Real-time systems
Robot sensing systems
selective formalism
soft real-time
software synthesis
Switches
System recovery
Timed CSP
Writing
Title Supporting Selective Formalism in CSP++ with Process-Specific Storage
URI https://ieeexplore.ieee.org/document/7336309
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
link http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV07T8MwELZKxcAEqEW85YGtuHXSJrbnqFVZqkgBqVvl2GcUCVLUB78fnxMKAwtb5CWyE_m-s78HIQ_Co1QQpWXCgWKT0jim0QjSjUvfgIABrnkImxCLhVwuVd4hjwctDAAE8hkM8THc5du12eNR2Qit-8ao1jsSIm20Wt__DuJu9CpvKVwRV6N5nmUsKwr2lPm5IIsrGcZYRH7FqIQqMjv93_vPSP9HjkfzQ6E5Jx2oe2SKeZxr9AB4pUUIs_H7Fp0hBH2rtu-0qmlW5IMBxZNW2uoBWIibd5Whhe-1_VbSJy-z6XM2Z20mAqt8jdkxpDlDjCifm8hCYtIElNGCO6OkByMq1ZEE1H1wZXlcWitL5ZzhUgthJ3p8Qbr1uoZLQpO0BOesLSNwvkkTMvHQTrvExNL44eiK9HAJVh-N7cWqnf3138M35ARXuOHG3ZLubrOHO3JsPnfVdnMfvtUXfV2W-Q
linkProvider IEEE
linkToHtml http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV3LT8IwGG8ImuhJDRjf9uANC92LrucFAhHJkmHCjXTtV7NEh-Hh32-_MdGDF29LT2u39Pt97e9ByINwKBVEbpiwIFmYa8sUGkHaIHcNCGjgildhE2I6jedzmTbI414LAwAV-Qy6-Fjd5Zul3uJRWQ-t-wJU6x1EYejznVrr--9B5I1u5TWJy-OyN0qThCVZxsaJmw3yuKKuj2XkV5BKVUeGJ_97g1PS_hHk0XRfas5IA8oWGWAi5xJdAF5pVsXZuJ2LDhGEvhXrd1qUNMnSTofiWSutFQGsCpy3haaZ67bdZtImL8PBLBmxOhWBFa7KbBgSncFHnM-1ZyDS_QikVoJbLWMHR2RfeTGg8oNLw_3cmDiX1moeKyFMqIJz0iyXJVwQGvVzsNaY3APr2jQRRw7cKRtpP9Zu2LskLVyCxcfO-GJRz_7q7-F7cjSaPU8Wk_H06Zoc42rvmHI3pLlZbeGWHOrPTbFe3VXf7QuIO5pA
openUrl ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=proceeding&rft.title=2015+IEEE+17th+International+Conference+on+High+Performance+Computing+and+Communications%2C+2015+IEEE+7th+International+Symposium+on+Cyberspace+Safety+and+Security%2C+and+2015+IEEE+12th+International+Conference+on+Embedded+Software+and+Systems&rft.atitle=Supporting+Selective+Formalism+in+CSP%2B%2B+with+Process-Specific+Storage&rft.au=Gardner%2C+William+B.&rft.au=Gumtie%2C+Alicia&rft.au=Carter%2C+John+D.&rft.date=2015-08-01&rft.pub=IEEE&rft.spage=1057&rft.epage=1065&rft_id=info:doi/10.1109%2FHPCC-CSS-ICESS.2015.265&rft.externalDocID=7336309