Questões de Tecnologia da Informação · INEP (ENEM)

Tecnologia da InformaçãoTransações, controle de concorrência e recuperaçãoINEP (ENEM) 2014

ENADE

Questão de Tecnologia da Informação

KĨƌĂŐŵĞŶƚŽĚĞĐſĚŝŐŽĂƐĞŐƵŝƌ͕ĞƐĐƌŝƚŽĞŵ:ĂǀĂ͕ĚĞƐĐƌĞǀĞĚƵĂƐ ŝŵƉůĞŵĞŶƚĂĕƁĞƐĚŝĨĞƌĞŶƚĞƐƉĂƌĂƵŵlock. ŵďĂƐƉŽƐƐƵĞŵƵŵŵĠƚŽĚŽĚĞŶŽŵŝŶĂĚŽacquireĞƵŵŵĠƚŽĚŽĚĞŶŽŵŝŶĂĚŽrelease. class LockA { private int turn = 0 public void acquire(int tid) { while (turn == (1 - tid)); } public void release(int tid) { turn = (1 - tid); } } ŽŶƐŝĚĞƌĂͲƐĞƋƵĞ͗ class LockB { public void acquire() { disableInterrupts(); } public void release() { enableInterrupts(); } } ͻ ĂƐĚƵĂƐŝŵƉůĞŵĞŶƚĂĕƁĞƐĚĞlock ƐĆŽƵƟůŝnjĂĚĂƐƉŽƌĂƉůŝĐĂĕƁĞƐĐŽŵ͕ŶŽŵĄdžŝŵŽ͕ĚƵĂƐ threads; ͻ ƵŵĂĂƉůŝĐĂĕĆŽƋƵĞƵƟůŝnjĂƌƋƵĂůƋƵĞƌƵŵĂĚĞƐƚĂƐŝŵƉůĞŵĞŶƚĂĕƁĞƐŝŶǀŽĐĂƌĄŽŵĠƚŽĚŽacquireĂŶƚĞƐĚĞ ĞŶƚƌĂƌĞŵƐƵĂƐĞĕĆŽĐƌşƟĐĂĞŽŵĠƚŽĚŽreleaseĂƉſƐĚĞŝdžĂƌĂƐĞĕĆŽĐƌşƟĐĂ͖ ͻ ƚĂŶƚŽŽŵĠƚŽĚŽacquireƋƵĂŶƚŽŽŵĠƚŽĚŽreleaseƐĆŽŽƉĞƌĂĕƁĞƐĂƚƀŵŝĐĂƐŶĂƐĚƵĂƐŝŵƉůĞŵĞŶƚĂĕƁĞƐ ĚĞlock͖ ͻ ƉĂƌĂĂŝŵƉůĞŵĞŶƚĂĕĆŽƋƵĞƌĞƋƵĞƌƵŵtid;thread idͿ͕ĂƐƐƵŵĞͲƐĞƋƵĞĞůĞƐĞŵƉƌĞƐĞƌĄϬŽƵϭ͖ ͻ ŽƐŵĠƚŽĚŽƐdisableInterrupts e enableInterruptsƐĆŽƵƟůŝnjĂĚŽƐƉĂƌĂĚĞƐĂďŝůŝƚĂƌĞŚĂďŝůŝƚĂƌ ƌĞƐƉĞĐƟǀĂŵĞŶƚĞ ĂƐ ŝŶƚĞƌƌƵƉĕƁĞƐ ĚŽ ƉƌŽĐĞƐƐĂĚŽƌ ŽŶĚĞ Ž ĐſĚŝŐŽ ĨŽƌ ĞdžĞĐƵƚĂĚŽ͘ K ĐſĚŝŐŽ ĚĞƐƐĞƐ ĚŽŝƐ ŵĠƚŽĚŽƐĨŽŝĚĞƐĞŶǀŽůǀŝĚŽƉĂƌĂƐĞƌƵƟůŝnjĂĚŽĞŵƵŵĂŵĄƋƵŝŶĂĐŽŵƵŵŽƵĚŽŝƐƉƌŽĐĞƐƐĂĚŽƌĞƐ͘ ƉĂƌƟƌĚĂƐŝŶĨŽƌŵĂĕƁĞƐĂƉƌĞƐĞŶƚĂĚĂƐ͕ĂǀĂůŝĞĂƐĂĮƌŵĂĕƁĞƐĂƐĞŐ Ƶŝƌ͘ /͘ ŝŵƉůĞŵĞŶƚĂĕĆŽĚĞ LockAŐĂƌĂŶƚĞƉƌŽŐƌĞƐƐŽ͘ //͘ ŝŵƉůĞŵĞŶƚĂĕĆŽĚĞ LockBŐĂƌĂŶƚĞƉƌŽŐƌĞƐƐŽ͘ ///͘ ŝŵƉůĞŵĞŶƚĂĕĆŽĚĞ LockAŐĂƌĂŶƚĞĞdžĐůƵƐĆŽŵƷƚƵĂ͘ /s͘ ŝŵƉůĞŵĞŶƚĂĕĆŽĚĞ LockBŐĂƌĂŶƚĞĞdžĐůƵƐĆŽŵƷƚƵĂ͘ ĐŽƌƌĞƚŽĂƉĞŶĂƐŽƋƵĞƐĞĂĮƌŵĂĞŵ

Sua resposta

Mais questões de Transações, controle de concorrência e recuperação

Questão de prova oficial, com o gabarito definitivo publicado pela banca. Reproduzida para fins de estudo.