Vi presenterar den första formen analys för multitrådade program som undviker den explicita uppräkning av utförande-interleavings. Vårt tillvägagångssätt är att automatiskt dra en resurs invariant i samband med varje lås som beskriver den del av högen som skyddas av låset. Detta gör att vi kan använda en sekventiell formanalys på varje tråd. Vi visar att resursinvarianter av en viss klass kan karakteriseras som minst fasta punkter och beräknas genom upprepade tillämpningar av formanalys endast på varje enskild tråd. Baserat på detta tillvägagångssätt, har vi implementerat en tråd-modular form analysverktyg och tillämpat det på samtidig hög-manipulerande kod från Windows enhetsdrivrutiner.
Den enda formanalysen baserad på samtidig separationslogik som försöker beräkna resursinvarianter är den gängmodulerande formanalysen av Gotsman et al. Hoppa över det.
Thread-modular shape analysis
{'venue': "PLDI '07", 'journal': None, 'mag_field_of_study': ['Computer Science']}