![cover image](https://wikiwandv2-19431.kxcdn.com/_next/image?url=https://upload.wikimedia.org/wikipedia/commons/thumb/7/7b/An_illustration_of_the_dining_philosophers_problem.png/640px-An_illustration_of_the_dining_philosophers_problem.png&w=640&q=50)
Samtidighet (informatikk)
muligheten for at forskjellige deler av et problem (f.eks. et program eller en algoritme) kan utføres ute av rekkefølge eller bare delvis i rekkefølge uten det påvirker det endelige resultatet / From Wikipedia, the free encyclopedia
Samtidighet er et begrep innenfor informatikken. Det refererer til evnen til å utføre forskjellige deler av et dataprogram, en algoritme eller et problem utenfor rekkefølge eller i en delvis ordnet mengde, uten å påvirke resultatet. Dette tillater parallelle beregninger av utførende enheter, noe som kan forbedre ytelsen i superskalære prosessorer, flerkjerners mikroprosessor og systemer med flerprosessering. I teknisk forstand refererer samtidighet til nedbrytbarheten til et program, en algoritme eller et problem i komponenter som utføres utenfor rekkefølge eller delvis ordnet.[1]
![Thumb image](http://upload.wikimedia.org/wikipedia/commons/thumb/7/7b/An_illustration_of_the_dining_philosophers_problem.png/640px-An_illustration_of_the_dining_philosophers_problem.png)
Den canadiske programvareutvikleren Rob Pike (f. 1956) har definert samtidighet som sammensetningen av uavhengige utførende beregninger.[2] Samtidighet er ikke parallell utførelse. Samtidighet handler om å håndtere flere ting samtidig, mens parallell utførelse handler om å utføre flere ting samtidig. Samtidighet handler om struktur, mens parallell utførelse handler om eksekvering. Samtidighet er en måte å strukturere et problem på, slik at problemet kan løses (men ikke nødvendigvis) gjennom parallell eksekvering.[3]
En rekke matematiske modeller er utviklet for generelle samtidige beregninger. Eksempler er Petri nets, process calculi, Parallel random access-machine, actor model og Reo Coordination Language.