Welch, Peter H. (1998) Parallel and Distributed Computing in Education (Invited Talk). In: Palma, J.M.L.M. and Dongarra, Jack J. and Hernandez, V., eds. Vector and Parallel Processing – VECPAR’98 Third International Conference. Lecture Notes in Computer Science . Springer-Verlag, Berlin, Germany, pp. 301-330. ISBN 978-3-540-66228-0. E-ISBN 978-3-540-48516-2. (doi:10.1007/10703040_24) (KAR id:21644)
PDF
Language: English |
|
Download this file (PDF/327kB) |
|
Request a format suitable for use with assistive technology e.g. a screenreader | |
Official URL: http:/dx.doi.org/10.1007/10703040_24 |
Abstract
The natural world is certainly not organised through a central thread of control. Things happen as the result of the actions and interactions of unimaginably large numbers of independent agents, operating at all levels of scale from nuclear to astronomic. Computer systems aiming to be of real use in this real world need to model, at the appropriate level of abstraction, that part of it for which it is to be of service. If that modelling can reflect the natural concurrency in the system, it ought to be much simpler Yet, traditionally, concurrent programming is considered to be an advanced and difficult topic - certainly much harder than serial computing which, therefore, needs to be mastered first. But this tradition is wrong. This talk presents an intuitive, sound and practical model of parallel computing that can be mastered by undergraduate students in the first year of a computing (major) degree. It is based upon Hoare's mathematical theory of Communicating Sequential Processes (CSP), but does not require mathematical maturity from the students - that maturity is pre-engineered in the model. Fluency can be quickly developed in both message-passing and shared-memory concurrency, whilst learning to cope with key issues such as race hazards, deadlock, livelock, process starvation and the efficient use of resources. Practical work can be hosted on commodity PCs or UNIX workstations using either Java or the Occam multiprocessing language. Armed with this maturity, students are well-prepared for coping with real problems on real parallel architectures that have, possibly, less robust mathematical foundations.
Item Type: | Book section |
---|---|
DOI/Identification number: | 10.1007/10703040_24 |
Uncontrolled keywords: | CSP, Java, occam, JCSP, Threads, Deadlock, Plug-and-play, Education |
Subjects: | Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming, |
Divisions: | Divisions > Division of Computing, Engineering and Mathematical Sciences > School of Computing |
Depositing User: | Mark Wheadon |
Date Deposited: | 22 Aug 2009 15:30 UTC |
Last Modified: | 05 Nov 2024 10:00 UTC |
Resource URI: | https://kar.kent.ac.uk/id/eprint/21644 (The current URI for this page, for reference purposes) |
- Link to SensusAccess
- Export to:
- RefWorks
- EPrints3 XML
- BibTeX
- CSV
- Depositors only (login required):