b'\n_START_ARTICLE_\nProtocolos de coer\xc3\xaancia\n_START_SECTION_\nVersion-control\n_START_PARAGRAPH_\nUm exemplo de esquema est\xc3\xa1tico \xc3\xa9 o Version-control, que faz a manuten\xc3\xa7\xc3\xa3o da coer\xc3\xaancia atrav\xc3\xa9s de versionamento do conte\xc3\xbado. As vers\xc3\xb5es correntes nos processadores s\xc3\xa3o geradas e t\xc3\xaam seu n\xc3\xbamero identificador incrementado sempre que ocorre uma escrita em um dado compartilhado, e um n\xc3\xbamero de vers\xc3\xa3o \xc3\xa9 atribu\xc3\xaddo a cada linha da cache, para cada aloca\xc3\xa7\xc3\xa3o feita. Quando uma leitura do dado compartilhado \xc3\xa9 feita, checa-se se o n\xc3\xbamero da vers\xc3\xa3o corrente do processador \xc3\xa9 maior que o da vers\xc3\xa3o na cache. Em caso afirmativo, o dado foi encontrado corretamente.\n_START_SECTION_\nOne-time Identifier\n_START_PARAGRAPH_\nJ\xc3\xa1 o esquema One-time Identifier \xc3\xa9 um exemplo de esquema que roda em tempo de execu\xc3\xa7\xc3\xa3o (din\xc3\xa2mico). Nele, as p\xc3\xa1ginas compartilhadas possuem um campo para identificador \xc3\xbanico (one-time identifier) que \xc3\xa9 adicionado tanto na cache quanto nas entradas da TLB -  Translation Lookaside Buffer. Na primeira vez que o dado compartilhado \xc3\xa9 lido, o identificador na cache recebe o valor do identificador da entrada na TLB. Os acessos a um dado compartilhado realizam compara\xc3\xa7\xc3\xb5es entre o valor do identificador da entrada da TLB com o valor do identificador da entrada da cache, indicando erro caso estes sejam diferentes.'