Reading and writing is modelled in CSP using actions containing the symbols ? and !. These reading actions and writing actions are synchronous, and there is a one-to-one relationship between occurrences of pairs of these actions. In the CPA conference 2016, we introduced the half-synchronous alphabetised parallel operator X ⇓ Y , which disconnects the writing to and reading from a channel in time. We introduce in this paper an extension of X ⇓ Y , where the definition of X ⇓ Y is relaxed; the reading processes are divided into sets which are set-wise asynchronous, but intra-set-wise synchronous, giving full flexibility to the asynchronous writes and reads. Furthermore, we allow multiple writers to the same channel and we study the impact on a Vertex Removing Synchronised Product. The advantages we accomplish are that the extension of X ⇓ Y gives more flexibility by indexing the reading actions and allowing multiple write actions to the same channel. Furthermore, the extension of X ⇓Y reduces the end-to-end processing time of the processor or coprocessor in a distributed computing system. We show the effects of these advantages in a case study describing a Controlled Emergency Stop for a processor-coprocessor combination.
Reading and writing is modelled in CSP using actions containing the symbols ? and !. These reading actions and writing actions are synchronous, and there is a one-to-one relationship between occurrences of pairs of these actions. In the CPA conference 2017, we introduced the extended half-synchronous al- phabetised parallel operator X ⇕ Y , which disconnects the writing to and reading from a channel in time; the reading processes are divided into sets which are set-wise asynchronous, but intra-set-wise synchronous, giving full flexibility to the reads. In this paper, we allow multiple writers to write to the same channel set-wise asynchronously, but intra-set-wise synchronously and we study the impact on our (Extended) Vertex Removing Synchronised Product. The advantages we accomplish are that the extension of X ⇕ Y gives more flexibility by indexing the writing actions and the reading actions, leading to a straightforward majority vote design. Furthermore, the extension of X ⇕ Y preserves the advantages of the X ⇕ Y operator.
In bepaalde single-core configuraties met één processor, b.v. embedded control systems zoals robotic applications die uit vele korte processen bestaan, kunnen de context switches van een proces een aanzienlijke hoeveelheid van de beschikbare processing power verbruiken. Het verminderen van het aantal context switches vermindert de executietijd en verhoogt daardoor de prestaties van de toepassing. Bovendien is de end-to-end executietijd van de processen langer dan strict noodzakelijk, b.v. omdat de processen moeten wachten op controllers die een taak uitvoeren. Door de regels voor synchrone communicatie via kanalen in de procesalgebraïsche specificatietaal Communicating Sequential Processes te versoepelen, kunnen we de end-to-end executietijd verkorten. In ons onderzoek definiëren we verschillende graafproducten, bewijzen we dat deze producten een prestatiewinst opleveren (onder bepaalde voorwaarden) en we werken de numerieke en combinatorische aspecten van deze graafproducten uit.