Introduction to Concurrent Programming Capel Tuñón, Manuel Isidoro Concurrent Programming Hoare Program Logic Concurrent properties verification Semaphores Introduces concurrent programming, which involves executing multiple processes simultaneously, in contrast to the linear sequence of instructions in sequential programming. It explains key concepts such as: • Processes: Independent execution units that perform tasks concurrently. • Concurrency Benefits: Improves efficiency, especially for tasks with frequent input/ output operations, and allows parallelism even with limited processor cores. • Concurrency Model: Describes how concurrent programs handle synchronization, communication and execution order using techniques like mutual exclusion and synchronization primitives. • Process Creation: Covers methods like fork/join and POSIX threads, which enable dynamic process creation and concurrent task execution. The chapter highlights how concurrent programs better reflect real-world systems where multiple activities happen simultaneously, enhancing program efficiency and responsiveness. 2025-10-23T10:50:21Z 2025-10-23T10:50:21Z 2026-01-01 book part Capel, M.I. (2026). Introduction to Concurrent Programming. In: Concurrent and Real-time Programming. Springer, Cham. https://hdl.handle.net/10481/107358 10.1007/978-3-031-85233-6_1 eng http://creativecommons.org/licenses/by-nc-nd/4.0/ open access Attribution-NonCommercial-NoDerivatives 4.0 Internacional Springer Nature