Sistemas
A execução de um processo pressupõe por parte do sistema operativo, entre outras coisas, a criação de um contexto de execução próprio que, de certa forma, abstrai o processo dos componentes reais do sistema. Devido a esta virtualização dos recursos, o processo não tem conhecimento acerca dos outros processos e, como tal, não consegue trocar informação.
Nomeação - Cada item numa BDD deve ter um nome único;
O SGBDD deve assegurar-se de que dois locais não criam um objecto da base de dados com o mesmo nome;
Uma solução é criar um servidor de nomes central, isto resulta em:
Perda de alguma autonomia local;
O local central pode transformar-se num bottleneck;
Baixa disponibilidade: se o local central falhar, os locais restantes não podem criar nenhuns objectos novos.
Solução alternativa: prefixar o objecto, com o identificador do local que o criou:
Necessita de identificar cada fragmento e as suas cópias;
Isto resulta na perda da transparência de distribuição;
Outra solução, que resolve estes problemas, usa pseudônimos para cada objecto da base de dados:
O SGBDD tem a tarefa de traçar (mapear) um pseudônimo para obter o objecto da base de dados.
Sincronização - Sincronização é o gerenciamento adequado de múltiplas linhas de execução ou processos concorrentes que acessam um mesmo recurso limitado ou uma porção de dados, situação conhecida como condição de corrida.
Este gerenciamento em geral deve prover acesso a todas as linhas de execução dentro dos limites do recurso limitado, de modo que todas tenham tempo finito de espera (não ficarão em espera infinita). No caso de acesso a uma porção de dados, as leituras e escritas realizadas devem ocorrer de modo a preservar a consistência.
Entre os mecanismos que provém sincronização podemos citar os semáforos e