Informatică Sisteme de operare

Ce este programarea concurenta si paralela?

Programarea concurentă și paralelă sunt două metode de execuție a codului pe calculatoare moderne. Programarea concurentă permite executarea mai multor sarcini în același interval de timp, alternând rapid între ele, de obicei pe un singur nucleu. Programarea paralelă execută mai multe sarcini simultan, pe nuclee fizice diferite.

Programarea concurentă

  • Definiție Execuția mai multor fire de execuție sau procese care împart același procesor, alternând rapid pentru a da impresia de simultaneitate.
  • Exemplu Un browser care rulează un script JavaScript în timp ce afișează o pagină web și procesează clicurile utilizatorului.
  • Utilizare tipică Aplicații cu interfață grafică, servere web care gestionează cereri multiple.

Programarea paralelă

  • Definiție Execuția simultană a mai multor sarcini pe nuclee fizice separate ale unui procesor multi-core sau pe mai multe procesoare.
  • Exemplu numeric Înmulțirea a două matrici 1000x1000 împărțită pe 4 nuclee: fiecare nucleu calculează o parte a rezultatului în același timp.
  • Utilizare tipică Simulări științifice, randare video, procesarea de imagini mari.

Folosește concurența pentru sarcini I/O-intensive și paralelismul pentru sarcini CPU-intensive.

Mai multe din Sisteme de operare